Содержание

быстрый старт, управление схемой данных

Веб-разработчик растёт вместе с проектами, которые он создаёт и развивает. С ростом проектов увеличивается сложность программной части, неизбежно возрастает количество обрабатываемых ею данных, а так же сложность схемы данных. Общение с другими вебщиками показывает, что огромной популярностью среди нас пользуются базы данных MySQL, а для управления ими — небезызвестный PHPMyAdmin. Переходя от маленьких проектов к большим, от cms к фреймворкам, многие, как и я, остаются верны MySQL. Однако для проектирования сложной базы данных с большим количеством таблиц и связей, возможностей PHPMyAdmin катастрофически не хватает. Поэтому я решил написать обзор MySQL Workbench — замечательной бесплатной десктопной программы для работы с MySQL.


В первой части обзора я расскажу о самых основах работы с программой, так что, можете использовать эту статью как руководство начинающего пользователя. Вторая часть будет посвящена использованию Workbench в бою при работе с удалённым сервером. В ней я дам базовые инструкции и рекомендации по настройке подключения сервера и синхронизации с ним.

MySQL Workbench — инструмент для визуального проектирования баз данных, интегрирующий проектирование, моделирование, создание и эксплуатацию БД в единое бесшовное окружение для системы баз данных MySQL.

Должен сказать, что программа действительно великолепная. Она позволяет быстро и с удовольствием накидывать схемы данных проекта, проектировать сущности и связи между ними, безболезненно внедрять изменения в схему и так же быстро и безболезненно синхронизировать её с удалённым сервером. А графический редактор EER-диаграмм, напоминающих забавных таракашек, позволяет увидеть общую картину модели данных и насладиться её лёгкостью и элегантностью 🙂 После первой же пробы этот инструмент становится незаменимым помощником в боевом арсенале веб-программиста.

Скачать MySQL Workbench

Дистрибутив MySQL Workbench доступен на этой странице. Самая свежая версия программы на момент написания статьи — Version 6.1. Перед скачиванием требуется выбрать одну из следующих платформ:

  • Microsoft Windows (доступны MSI Installer и ZIP архив)
  • Ubuntu Linux
  • Fedora
  • Red Hat Enterprise Linux / Oracle Linux
  • Mac OS X

После выбора платформы вам предлагают зарегистрироваться или авторизоваться в Oracle. Если не хотите, внизу есть ссылка «No thanks, just start my download» — жмите на неё 😉

Начало работы

Стартовый экран программы отражает основные направления её функциональности — проектирование моделей баз данных и их администрирование:

В верхней части экрана находится список подключений к MySQL серверам ваших проектов, а список последних открытых моделей данных — в нижней части экрана. Работа обычно начинается с создания схемы данных или загрузки существующей структуры в MySQL Workbench. Приступим к работе!

Создание и редактирование модели данных

Для добавления модели нажимаем плюсик рядом с заголовком «Models» или выбираем «File → New Model» (Ctrl + N):

На этом экране вводим имя базы данных, выбираем кодировку по умолчанию и, если нужно, заполняем поле комментария. Можно приступать к созданию таблиц.

Добавление и редактирование таблицы

Список баз данных проекта и список таблиц в пределах базы данных будет располагаться во вкладке «Physical Schemas». Чтобы создать таблицу, дважды кликаем на «+Add Table»:

Откроется удобный интерфейс для редактирования списка полей и их свойств. Здесь мы можем задать название поля, тип данных, а так же установить для полей различные атрибуты: назначить поле первичным ключом (PK), пометить его Not Null (NN), бинарным (BIN), уникальным (UQ) и другие, установить для поля авто-инкремирование (AI) и значение по умолчанию (Default).

Управление индексами

Добавлять, удалять и редактировать индексы таблиц можно во вкладке «Indexes» интерфейса управления таблицей:

Вводим название индекса, выбираем его тип, затем галочками помечаем в нужном порядке список полей, участвующих в данном индексе. Порядок полей будет соответствовать порядку, в котором были проставлены галочки. В данном примере я добавил уникальный индекс к полю username.

Связи между таблицами

Установка внешних ключей и связывание таблиц возможно только для таблиц InnoDB (эта система хранения данных выбирается по умолчанию). Для управления связями в каждой таблице находится вкладка «Foreign Keys»:

Для добавления связи открываем вкладку «Foreign Keys» дочерней таблицы, вводим имя внешнего ключа и выбираем таблицу-родителя. Далее в средней части вкладки в графе Column выбираем поле-ключ из дочерней таблицы, а в графе Referenced Column — соответствующее поле из родительской таблицы (тип полей должен совпадать). При создании внешних ключей в дочерней таблице автоматически создаются соответствующие индексы.

В разделе «Foreign Key Options» настраиваем поведение внешнего ключа при изменении соответствующего поля (ON UPDATE) и удалении (ON DELETE) родительской записи:

  • RESTRICT — выдавать ошибку при изменении / удалении родительской записи
  • CASCADE — обновлять внешний ключ при изменении родительской записи, удалять дочернюю запись при удалении родителя
  • SET NULL — устанавливать значение внешнего ключа NULL при изменении / удалении родителя (неприемлемо для полей, у которых установлен флаг NOT NULL!)
  • NO ACTION — не делать ничего, однако по факту эффект аналогичен RESTRICT

В приведённом примере я добавил к дочерней таблице UserProfile внешний ключ для связи с родительской таблицей User. При редактировании поля userId и удалении позиций из таблицы User аналогичные изменения будут автоматически происходить и со связанными записями из таблицы UserProfile.

Наполнение таблицы базовыми данными

При создании проекта в базу данных часто нужно добавлять стартовые данные. Это могут быть корневые категории, пользователи-администраторы и т.д. В управлении таблицами MySQL Workbench для этого существует вкладка «Inserts»:

Как видно из примера, в случае, если перед записью в базу данных к данным нужно применить какую-то функцию MySQL, это делается с помощью синтаксиса \func functionName(‘data’), например, \func md5(‘password’).

После ввода данных необходимо сохранить их в локальную базу данных нажатием на кнопку «Apply Changes».

Создание EER диаграммы (диаграммы «сущность-связь»)

Для представления схемы данных, сущностей и их связей в графическом виде в MySQL Workbench существует редактор EER-диаграмм. Для создания диаграммы в верхней части экрана управления базой данных дважды кликаем на иконку «+Add Diagram»:

В его интерфейсе можно создавать и редактировать таблицы, добавлять между ними связи различных типов. Чтобы добавить уже существующую в схеме таблицу на диаграмму, просто перетащите её из панели «Catalog Tree».

Для экспорта схемы данных в графический файл выберите «File → Export», а затем один из вариантов (PNG, SVG, PDF, PostScript File).

Импорт существующей схемы данных (из SQL дампа)

Если у нас уже есть схема данных, её можно без труда импортировать в MySQL Workbench для дальнейшей работы. Для импорта модели из SQL файла выбираем «File → Import → Reverse Engineer MySQL Create Script…», после чего выбираем нужный SQL файл и жмём «Execute >»

В MySQL Workbench так же предусмотрен импорт и синхронизация модели данных нарямую с удалённым сервером. Для этого потребуется создать подключение удалённого доступа к MySQL, о которых я расскажу в продолжении данного обзора.

Демо-проект из статьи доступен для скачивания по этой ссылке. Желаю успехов и красивых таракашек схем!


Установка и настройка MySQL Workbench

Введение

При помощи SQL-скриптов довольно просто создать базу данных из нескольких таблиц. В ней легко ориентироваться и всю схему можно держать в голове. Такие БД встречаются только в небольших или учебных проектах.

В реальных системах базы данных содержат десятки и сотни таблиц, процедур, представлений и триггеров. Невозможно удержать все эти объекты и связи между ними в голове. И когда в такую схему нужно добавить новую таблицу или разобраться в существующей структуре, хочется увидеть все таблицы перед глазами.

С этим может помочь инструмент MySQL Workbench. Он упрощает многие аспекты работы с БД: создание таблиц и связей между ними, создание триггеров и процедур, визуальное представление схемы, настройка БД и создание резервных копий.
В статье мы покажем, как работать с MySQL Workbench. Мы создадим кластер СУБД MySQL, установим Workbench и подключимся к кластеру. Затем попробуем разные способы создания таблиц и работы с данными. Также создадим бекап базы данных и восстановим его. Все это на пошаговых примерах с описанием и скриншотами.

Что такое MySQL Workbench

MySQL Workbench — универсальный инструмент для работы и управления базами данных. С его помощью можно создавать и редактировать таблицы и другие объекты, управлять доступом пользователей и полноценно администрировать БД. Workbench может пригодиться разработчикам, администраторам БД и архитекторам систем.

Несмотря на название, он может работать не только с MySQL, но и с другими СУБД: Oracle Database, Microsoft SQL Server, PostgreSQL и другими.
Одна из главных особенностей Workbench — визуальное моделирование. Оно позволяет увидеть все таблицы и связи между ними в наглядном виде. Это намного упрощает проектирование базы данных.
Перейдем к практике.

Создать облачную СУБД MySQL

Перед началом работы с Workbench нужно установить и запустить MySQL. Мы создадим кластер на платформе Selectel, это позволит быстро развернуть БД и не заниматься установкой и настройкой сервера.

Облачные базы данных

Готовые к работе управляемые базы данных MySQL

Узнать больше

В панели управления заходим в раздел «Облачная платформа» — «Базы данных», нажимаем кнопку «Создать кластер».

На экране создания кластера выбираем параметры. Мы покажем лишь некоторые параметры, остальные можно оставить по умолчанию. Выбираем «СУБД» — MySQL 8, «Конфигурация нод» — «Фиксированная», 2 vCPU, 4 ГБ оперативной памяти и 32 ГБ места на диске. В разделе «Сеть» нужно выбрать публичную подсеть, чтобы к кластеру можно было подключаться из интернета.

После этого внизу страницы нажимаем кнопку «Создать». Кластер будет создаваться несколько минут, и после того, как он перейдет в статус ACTIVE, можно продолжать настройку. Нажимаем на имя кластера.

На первой вкладке нам нужно записать IP-адрес кластера, чтобы позже подключиться к нему. Также подключаться можно и по DNS-имени.

Затем переходим на вкладку «Пользователи». Нужно создать нового пользователя, для этого нажимаем на соответствующую кнопку.

Интерфейс платформы автоматически предложит имя пользователя и пароль. Не забудьте сохранить пароль, потому что его нельзя восстановить и можно только поменять.

Далее создадим базу данных, в которой мы потом будем создавать таблицы. Перейдите на вкладку «Базы данных», нажмите кнопку «Создать базу данных» и укажите имя.

Все, наш удаленный сервер MySQL готов к работе.

Установить MySQL Workbench и подключиться к кластеру

Теперь установим MySQL Workbench и подключимся к созданному кластеру. Перейдите на страницу загрузки, выберите вашу операционную систему. Мы покажем, как установить MySQL Workbench на примере Windows. Если у вас Linux или MacOS, то после выбора ОС из списка появятся соответствующие инструкции, воспользуйтесь ими.

Нажимаем кнопку Download, и на следующем экране нам предложат войти в аккаунт Oracle или создать его. Отказываемся, нажимаем кнопку No thanks, just start my download, и просто скачиваем установщик.

Запускаем скачанный файл, во всех диалоговых окнах оставляем значения по умолчанию. После установки запускаем MySQL Workbench. При первом запуске нас встретит приветственное окно. Для начала нужно добавить подключение к нашему кластеру. Для этого нажимаем на кнопку «+», рядом с текстом MySQL Connections.

Откроется экран настройки.

  • Указываем имя соединения — это позволит различать подключения, если вы работаете с несколькими серверами.
  • Указываем IP-адрес кластера и порт. Обратите внимание, что по умолчанию в Workbench указан порт 3306. Нам нужно указать 6033, как указано в параметрах подключения на платформе Selectel.
  • Указываем имя пользователя.

Эти настройки сохранятся и в дальнейшем их не нужно будет вводить заново. Нажимаем кнопку OK и в следующем диалоговом окне вводим пароль.

Мы подключились к кластеру MySQL. В левой части экрана перейдя на вкладку Schemas, вы увидите БД, которую мы создавали ранее в интерфейсе Selectel. Обратите внимание, что в интерфейсе Workbench это называется «схема», но это одно и то же.

Создать таблицы

Мы покажем два разных способа, как это сделать. Сначала создадим две таблицы справочников:

  • Справочник товаров.
  • Справочник магазинов.

Затем создадим еще одну таблицу, в ней будет храниться связь: в каких магазинах какие товары продаются.

Дважды кликнем на названии схемы, чтобы она выделилась жирным шрифтом. Это означает, что теперь все действия по умолчанию мы выполняем в этой схеме. Затем в панели инструментов нажимаем на иконку создания новой таблицы.

Откроется окно создания новой таблицы. Нужно заполнить несколько полей:

  • Название таблицы: products.
  • Комментарий. Указывать не обязательно, но желательно. Наша схема будет состоять всего из трех таблиц, в ней не запутаешься. Но когда базы данных разрастаются до больших размеров, комментарии помогают ориентироваться в таблицах.
  • Поля. Мы создадим два поля. Первое — id, идентификатор товара. Выбираем тип INT, отмечаем галочки PK (Primary Key), NN (Not Null) и AI (Auto Increment). Тем самым мы указали, что это поле — первичный ключ, его значение не может быть пустым и должно генерироваться автоматически. Второе поле — name, название товара. Выбираем тип VARCHAR, длина 45 символов, и отмечаем галочку NN, чтобы у всех товаров было название.
  • Комментарии для полей. Рекомендуем заполнять их, как комментарий ко всей таблице.

Далее нажимаем кнопку Apply. Workbench отобразит скрипт, который он сгенерировал для создания этой таблицы. Перед применением скрипт можно проверить или изменить.

Затем по такому же принципу создаем вторую таблицу — справочник магазинов.

Теперь наполним справочники данными. Нажмите правой кнопкой мыши на таблице products и выберите пункт Select Rows.  

Откроется окно, в верхней части которого можно писать SQL-запрос, а в нижней отобразится результат. Добавлять новые записи в таблицу можно как при помощи SQL, так и графического представления.

Мы воспользуемся графическим интерфейсом: в нижней части окна создадим несколько строк. Достаточно указать названия товаров, а идентификатор заполнится автоматически. Затем нажмем кнопку Apply.

Workbench снова покажет скрипт перед тем, как применить действия. Его можно проверить или изменить.

Точно также добавим несколько записей в таблицу stores.

Создать модель

Теперь перейдем к другому, более наглядному способу работы с БД — моделям. Модель — это способ графического представления таблиц и связей между ними. В этом режиме все таблицы будто нарисованы на листе бумаги, а стрелки между ними показывают взаимосвязи. Но в отличие от листа бумаги, таблицы можно легко добавлять, изменять, удалять и перемещать.
Например, вот схема небольшого, но реального проекта. В крупных проектах схемы БД могут быть во много раз больше.

Модель можно создать несколькими способами.

  • Создать новую модель с нуля. Это подходит для случаев, когда Workbench используется с самого старта проекта. Тогда все таблицы можно создавать и изменять в модели.
  • Создать из существующей схемы или скрипта. Это подходит для случаев, когда БД уже создана, и теперь нужно перевести ее в графический вид.

Мы воспользуемся вторым способом: импортируем наши таблицы, а затем в одну из них добавим новое поле и создадим еще одну таблицу для связи.

В главном меню Workbench выбираем Database — Reverse Engineer. Дальше — выберем созданное ранее подключение и в следующем окне отметим, что нужно импортировать нашу схему.

Во всех последующих окнах оставляем значения по умолчанию, нажимая кнопку Next.
В результате появится модель с нашими таблицами. На ней отображается название таблиц, поля и их типы.

Мы уже знаем, как самим создавать таблицу в MySQL Workbench. А теперь посмотрим, как это можно сделать автоматически. Нам нужна еще одна таблица, в которой будет храниться связь: какой товар в каком магазине продается. Самый простой способ это сделать — использовать инструмент n:m Relationship. Выбираем его на панели инструментов, а потом по очереди кликнем на каждую таблицу.

MySQL Workbench сам создаст новую таблицу, даст ей имя и добавит в нее поля.

Обратите внимание, что поля stores_id и products_id являются одновременно и первичными (primary key), и вторичными ключами (foreign key). Это означает, что в эту таблицу можно будет добавить только те товары и магазины, которые есть в справочниках. К тому же, в таблице нельзя будет создать две одинаковые записи. Это как раз то, что нам нужно.

Теперь добавим в справочник магазинов поле с адресом. Для этого два раза кликнем на таблице Stores, и в нижней части окна появится область для редактирования полей. Эта область аналогична той, с которой мы работали при создании первых двух таблиц. Создадим новое поле Address.

Мы внесли изменения, которые хотели. Но если сейчас посмотреть на схему, то мы увидим, что на самом деле в таблицах ничего не поменялось. Нет ни новой таблицы, ни нового поля. Это потому, что модель не связана с БД явно. В процессе импорта мы создали модель на основе существующей схемы, но они никак между собой не связаны. Схема может жить своей жизнью, а модель — своей. Чтобы перенести изменения из модели в схему, нужно сделать это явно.

Для этого в главном меню Workbench выбираем пункт Database — Synchronize Model, в открывшемся окне выбираем соединение. Далее во всех окнах оставляем значения по умолчанию и нажимаем кнопку Next.
Затем Workbench проанализирует различия в модели и схеме и сгенерирует скрипты для обновления схемы. На скриншоте видно, что создастся одна новая таблица, и в существующую таблицу добавится новое поле.

Применим этот скрипт. Чтобы проверить, что все получилось, возвращаемся в схему и видим, что в ней появились наши изменения.

Импорт и экспорт данных

Рассмотрим еще две полезные функции MySQL Workbench — экспорт и импорт. Они позволяют экспортировать схему со всеми таблицами и данными, и затем импортировать в новую БД. Это может быть полезно для создания резервных копий или переноса БД на другой сервер.
Сначала мы экспортируем схему, потом удалим все таблицы в ней и затем восстановим таблицы из бекапа.

В главном меню Workbench выберем пункт Server — Data Export. В открывшемся окне выберите схему и все таблицы в ней. Затем укажите путь, куда сохранить файлы и нажмите кнопку Start Export. В окне есть и другие дополнительные опции, но для нашего примера достаточно значений по умолчанию.

Чтобы показать процесс восстановления, мы удалим все существующие таблицы. Для этого выделите их и в контекстном меню нажмите Drop 3 Tables.

В открывшемся диалоговом окне выберите вариант Drop Now. Теперь у нас снова пустая схема, как было в самом начале.

Теперь будем восстанавливать данные. Зайдем в главное меню Workbench, Server — Data Import. Выбираем директорию, где мы сохранили дамп, отмечаем схему и все таблицы. Затем нажимаем кнопку Start Import.

Сразу после окончания импорта мы не увидим таблицы, сначала нужно обновить схему. Для этого в контекстном меню выбираем пункт Refresh All.

Видим, что все таблицы восстановились. Проверим данные в них — все на месте. Значит импорт прошел успешно.

Этот сценарий может использоваться для создания резервных копий и их восстановления.

Но так как мы пользуемся управляемой СУБД на платформе Selectel, нам не нужно заботиться о создании бэкапов, это делается автоматически.

Заключение

Мы познакомились с инструментом MySQL Workbench и узнали, для чего он используется. Научились создавать таблицы, добавлять в них поля и указывать их свойства. Также поработали со схемами — удобным графическим способом представления таблиц. Напоследок узнали, как с помощью MySQL Workbench экспортировать базу данных, и затем восстановить ее.

Теперь вы можете подключаться к своим рабочим проектам или создавать новую архитектуру БД с нуля.

Визуальное проектирование базы данных в MySQL Workbench / Хабр

Цель данного поста — помочь начинающему разработчику быстро освоится и спроектировать простенькую базу с помощью инструмента для визуального проектирования баз данных MySQL Workbench от компании Oracle и получить её ER-модель и SQL-дамп.

Ну что же, меньше слов да больше смысла! Внешний вид окна программы, раздел «Моделирование данных» выглядит так:

Для того, чтобы открыть существующую модель надо нажать на ссылку: Open Existing EER Model, для создания новой модели – выбрать параметр: Create New EER Model, чтобы создать модель «сущность-связь» из существующей базы данных – нажать на параметр: Create EER Model From Existing Database, а для создания EER модели из SQL скрипта нужно выбрать: Create EER Model From SQL Script.

Для создания новой модели, воспользуемся ссылкой Create New EER Model, после нажатия на неё отобразится окно с параметрами:

Для начала необходимо создать таблицы, для этого нажмём на кнопку Add Table, появится следующая форма:

Сначала создадим таблицу users, которая будет хранить данные о пользователях информационной системы, в поле table Name впишем имя таблицы, в разделе формы Columns создадим поля таблицы:

— Первое поле id будет содержать уникальный номер пользователя, зададим ему свойства: Auto Increment, Not Null, Primary key и Unique, в разделе Data type выберем целочисленный тип integer.

— Второе поле fio, где будет хранится Ф.И.О. пользователя, установим полю свойства: Not Null, Primary key,, в разделе Data type выберем строковый тип VARCHAR и зададим количество символов в 255.

— Третье поле login, будет содержать логин пользователя, оно должно быть уникальным, как и поле id, поэтому установим ему свойство Unique и зададим количество символов в 255.

— Следующие поля: password содержащее пароль, e_mail содержащее адрес электронной почты и поле type содержащее тип пользователя будут без особых свойств, со строковым типом VARCHAR длинной в 255 символов, за исключением последнего поля type которому хватит с 45 символов.

После проделанных манипуляций форма с именем таблицы users будет выглядеть так:

На диаграмме появится таблица users c полями и индексами:

Аналогичным способом создадим таблицу settings с настройками доступа к базе данных ИС, содержащую поля id, host для указания имени хоста (адреса сервера), db – имени базы данных, user и password с именем пользователя и паролем, для установки ИС на удалённый сервер.

Далее по уже известному методу создадим таблицу shops которая будет хранить данные о магазинах в полях: id типа integer – ключевое, ненулевое, уникальное с автоинкрементом, поле name хранящее название магазина, поле address – его физический адрес, поле tel – телефон магазина, site – интернет сайт магазина и поле email с электронным адресом магазина.

Затем создадим таблицу products хранящую данные о продукции магазина в полях: id типа integer – ключевое, ненулевое, уникальное с автоинкрементом, поле name хранящее название магазина, ключевое, ненулевое поле целочисленного типа shop_id хранящее номер магазина, поле type_id с информацией о номере товара из таблицы видов продукции. Поле brand – брэнд изготовителя длинной в 255 символов, поле model – с моделью товара, поле data – с данными и характеристиками товара типа Tinytext, поле img с полным адресом до изображения товара длинной в 255 символов, и поля price с ценой товара и warranty с информацией о сроках гарантии на товар длинной в 45 символов.

Созданные нами таблицы settings, shops и products выглядят следующим образом:

Далее нам понадобится таблица хранящая тип продуктов product_type, она состоит из уникального, ненулевого, ключевого поля id с автоинкрементом целочисленного типа, и уникального поля name длинной в 255 символов, которое содержит название вида продуктов.

Вид таблицы таков:

Последние две таблицы это orders и deliveries, первая содержит информацию о заказах клиентов, а последняя данные о доставке продукции.

Поля таблицы orders: id ключевое, ненулевое, уникальное поле целочисленного типа с автоинкрементом, поле shop_id содержащее номер магазина – ключевое, ненулевое целочисленного типа, поле product_id хранящее номер продукта – ключевое, ненулевое целочисленного типа, поле fio с номером пользователя совершившего заказ — ключевое, ненулевое целочисленного типа, поле date c датой заказа – типа DATE, поле quantity с количеством заказанных товаров – целочисленного типа, поле tel с номером телефона заказчика – строкового типа длинной в 255 символов и поле confirm содержащее информацию о подтверждении заказа – логического типа.

Поля таблицы deliveries: order_id с номером заказа — ключевое, ненулевое, уникальное поле целочисленного типа с автоинкрементом, поле поле fio с номером пользователя совершившего заказ — ключевое, ненулевое целочисленного типа, поле address хранящее адрес доставки товара указанный клиентом – строкового типа длинной в 255 символов, поле time хранящее желаемое время доставки товара – строкового типа длинной в 255 символов, поле date с датой совершения заказа клиентом – типа DATE и поле логического типа confirm хранящее информацию о доставке товара.

Таблицы orders и deliveries выглядят так:

Связи таблиц

Мы создали базу данных, состоящую из семи таблиц, теперь необходимо связать таблицы, мы уже создали ключевые поля целочисленного типа, они и станут основой для связывания.

Для того чтобы связать две таблицы к примеру products и product_type, необходимо дважды щёлкнуть левой кнопкой мыши на диаграмму с таблицей products и выбрать вкладку Foreign keys (внешние ключи), далее в поле Foreign key name ввести уникальное имя внешнего ключа, дважды щёлкнуть по вкладке Referenced table и выбрать таблицу product_type, затем в форме расположенной правее выбрать ссылающееся поле type_id и выбрать в всплывающем списке поле id.

Таким образом, оба поля таблицы оказываются связанны, затем нужно задать тип отношений связи между таблицами, откроем окно, кликнув на появившуюся связь между таблицами, и выберем вкладку Foreign Key и в разделе Cardinality выберем тип связи один ко многим, и закроем окно. На диаграмме отобразится связь таблиц:

Аналогичным образом связываем все ключевые поля в таблицах, чтобы они были логически взаимосвязаны, далее нам необходимо убедится, что спроектированная база данных соответствует третьей нормальной форме.

Нормальная форма — свойство отношения в реляционной модели данных, характеризующее его с точки зрения избыточности, которая потенциально может привести к логически ошибочным результатам выборки или изменения данных. Нормальная форма определяется как совокупность требований, которым должно удовлетворять отношение.

В реляционной модели отношение всегда находится в первой нормальной форме по определению понятия отношение. Что же касается различных таблиц, то они могут не быть правильными представлениями отношений и, соответственно, могут не находиться в первой нормальной форме. Переменная отношения находится во второй нормальной форме тогда и только тогда, когда она находится в первой нормальной форме и каждый не ключевой атрибут неприводимо (функционально полно) зависит от её потенциального ключа. База данных будет находиться в третьей нормальной форме, если она приведена ко второй нормальной форме и каждый не ключевой столбец независим друг от друга.

Таким образом наша база находится в третьей нормальной форме, т.к. каждый не ключевой столбец независим друг от друга. Это наглядно видно на диаграмме нашей базы данных:

Большинство таблиц находятся в отношении один-ко-многим, за исключением таблиц deliveries и orders находящихся в отношении одни-к-одному, т.к. доставлен, может быть только одни заказ, т.е. у одного заказа только одна доставка. Остальные связи наглядно указаны выше.

Теперь загрузим нашу базу данных на сервер. Для этого создадим новое подключение к базе данных, щёлкнув по ссылке New connection в стартовом окне программы:

Затем заполним поля в открывшимся окне:

Укажем имя соединения в поле Connection Name, выберем метод соединения в списке Connection Method, зададим имя хоста и порт во вкладке Parameters, укажем имя пользователя и пароль если он есть и нажмём на кнопку ОК. Затем откроем вкладку EER Diagram, в панели выберем пункт Database и нажмём на параметр Forward Engineer:

После того как появится окно, нажимаем на кнопку “Next”, выбираем параметр Export MySQL Table Objects и нажимаем на кнопку “Next”:

После нажатия кнопки появится вкладка с SQL кодом, можно сохранить его нажав кнопку “Save to file” если это необходимо, а затем нажать на кнопку “Next”. Появится окно с параметрами соединения:

Проверяем, верны ли параметры подключения и нажимаем на кнопку “Execute”, если в SQL коде не содержится ошибок, то после исполнения кода мы увидим окно со списком таблиц, иначе выведется сообщение об ошибке. Теперь наша база загружена на сервер.

Благодарю за внимание, скачать саму программу можно здесь.

UPD:

Некоторых хабравчан интересовала возможность отображения линий связей таблиц в режиме поле-к-полю

по совету одного из пользователей я приведу небольшое пояснение о том как изменить вид связей и таблиц, для этого необходимо выбрать следующий параметр в разделе меню

Relationship Notation

:

После этого связи таблиц примут вид:

Также есть возможность изменить вид таблиц, для этого нужно поставить галочку в вышеуказанном разделе меню и в нижеследующем Object Notation:

Вот так выглядит таблица на диаграмме приведенная к стандарту IDEF1X:

Благодарю за дельные комментарии!

Как создать базу данных MySQL?

Подробности




апреля 28, 2015




Просмотров: 67253


Как создать структуру базы данных MySQL? Как создавать таблицы MySQL? Программа для создания базы данных MySQL Workbench!

 

Как создать структуру базы данных MySQL, используя MySQL Workbench

Хотите, создать свою собственную базу данных, но вы устали от создания таблиц и связей между ними с помощью SQL? Используйте свободное программное обеспечение MySQL Workbench, которая была создана, чтобы визуально создавать базы данных.

MySQL Workbench позволяет моделировать базу данных MySQL, используя визуальное представление таблиц. Это устраняет необходимость кропотливо описывать структуру базы данных, в SQL, программа MySQL Workbench будет генерировать код за вас! Скачать программу можно бесплатно на веб-сайте: http://www.mysql.com/downloads/workbench, вы можете скачать как установочную версию, так и ту, которая требует только распаковки (доступные системы включают в себя: Windows, Ubuntu Linux, Fedora, Mac OS Х).

 

Как использовать программу для создания базы данных MySQL?

Откройте MySQL Workbench, выберите пункт File -> New Model, или нажмите CTRL + N. область моделирования баз данных, отображается на изображении ниже:

 

 Первое, что вы должны сделать, это создать таблицу с атрибутами — поэтому нажмите на кнопку «Добавить таблицу».

 

Заполните соответствующие поля: имя таблицы, атрибуты (помните, что один из них должен быть главным ключом – обозначенным флажком, PK «первичный ключ».).

 

Когда вы создаете таблицы, вы должны думать о том, как они будут связаны друг с другом.

Если вы заполнили все таблицы, нажмите на кнопку «Добавить диаграмму», чтобы определить отношения между субъектами.

 

Вы увидите окно, похожее на приведенное ниже, в котором показана созданная таблица В рабочей области диаграммы.

 

Моя структура базы данных не будет правильной, так как здесь я лишь показываю, как моделировать структуру базы данных. Поэтому можно развернуть таблицы в рабочей области.

 

Теперь объедините таблицу, с тем, чтобы сформировать отношения.

Предположим они будут выглядеть таким образом:

— Книга, может принадлежать к одному читателю

— Читатель может занять несколько книг

— Книга может иметь только одного автора

— Автор может опубликовать множество книг

Как правило, используются три опции, которые позволяют создать журнал (1: 1, 1 для многих, и многие ко многим):

 

Таким образом, мы создаем соединения, как показано на рисунке:

 

Если вы дважды щелкните на отношения, вы сможем установить дополнительные параметры.

 

Когда вы закончите создание структуры, вы можете создать базу данных SQL просто импортировав ее. Чтобы сделать это, выберите меню Файл -> Экспорт -> и выберите нужный вариант, данные в основном представляют собой таблицы, и пользователей (если такие созданы). Файл, который я создал показан ниже.

 

Также вы можете нажать «Сохранить в другой файл», чтобы сохранить файл в .sql формате.

Читайте также

 

 

 

 

MySQL Workbench Tutorial — CoderLessons.com

1. О MySQL Workbench

MySQL Workbench, как видно из названия, является настольным инструментом для управления серверами баз данных MySQL и базами данных. MySQL Workbench поставляется с целым набором инструментов, которые облегчают работу с базой данных. В основном это визуальный инструмент для проектирования баз данных, который объединяет различные средства, перечисленные ниже:

  • Создание базы данных
  • Управление доступом к базе данных и свойствами
  • Разработка в базе данных
  • Проектирование структуры базы данных
  • Администрирование и поддержка базы данных

Он используется почти всеми в проекте разработки программного обеспечения, использующего базу данных MySQL. Все, включая разработчика, администратора базы данных, а также архитектора программного обеспечения.

2. Установка MySQL Workbench

Прежде чем начать понимать особенности MySQL Workbench, давайте начнем с установки MySQL Workbench. Существует только одно предварительное условие для установки. Если вы планируете использовать локальную базу данных, в вашей системе должна быть установлена ​​совместимая версия MySQL Server. Если он не установлен, следуйте инструкциям по этой ссылке, чтобы установить его. В случае удаленного сервера MySQL, MySQL Workbench может быть установлен прямо сейчас.

Когда у вас есть готовая локальная или удаленная настройка сервера MySQL, убедитесь, что сервер работает, проверив процессы / службы на наличие запущенного процесса сервера MySQL или подключившись к удаленному хосту с помощью соответствующего онлайн-плагина. Чтобы начать установку MySQL Workbench, перейдите к загрузке соответствующего установочного файла по этой ссылке . Как показано ниже, MySQL Workbench доступен для Windows, MacOSX и нескольких вариантов систем Linux.

Варианты установки MySQL Workbench

Процесс установки довольно прост. В следующих подразделах описан процесс установки.

2.1 Установка в MacOSX

Для установки в MacOSX загрузите установочный пакет .dmg . Пакет установщика открывает окно приложения, которое позволяет скопировать приложение в папку приложений. Окно приложения показано ниже:

Установка MySQL Workbench в Mac OSX (Источник: https: //dev.mysql.com/)

2.2 Установка в ОС Windows

Чтобы установить MySQL Workbench в Windows, загрузите. EXE- файл для настройки. Выполните настройку после загрузки. Программа установки проверяет установку сервера MySQL перед установкой Workbench. После того, как проверки пройдены, приступайте к их установке. Более подробную информацию об установке Workbench в Windows можно найти здесь

2.3 Установка в вариантах Linux

Для вариантов Linux MySQL доступен в виде файла .deb . Файл deb похож на exe. Это может быть выполнено как обычная установка для установки. Однако для Linux разработчики обычно предпочитают командную строку для установки инструментов. Чтобы установить MySQL Workbench с помощью командной строки, сначала установите менеджер пакетов apt для mysql, выполнив следующие команды.

1

2

$ sudo dpkg -i mysql-apt-config_0.5.3-1_all.deb

$ sudo apt-get update

После установки и обновления установите рабочую среду с помощью приведенной ниже команды.

1

$sudo apt-get install mysql-workbench-community

Таким образом, MySQL Workbench может быть легко установлен. После установки запускается MySQL верстак. Workbench часто меняет свою версию экрана приветствия на версию.

3. Начало работы с MySQL Workbench

Как только MySQL Server и MySQL Workbench успешно установлены, запустите приложение Workbench. В зависимости от установленной версии вы увидите экран приветствия, аналогичный показанному ниже.

Экран приветствия MySQL Workbench

По умолчанию отображается локальное соединение. Эти соединения могут быть отредактированы в любой момент времени. Также возможно добавлять и управлять несколькими подключениями одновременно. Локальный сервер может быть подключен, только если был установлен локальный сервер MySQL. Чтобы подключиться к работающему локальному серверу, просто щелкните метку экземпляра, показанную в прямоугольном поле.

3.1 Добавление и настройка соединений

Чтобы добавить новые соединения, нажмите символ +, показанный рядом с меткой соединений MySQL. Откроется небольшое окно, как показано ниже.

Новое соединение с базой данных в MySQL Workbench

В окне есть определенные обязательные значения, которые необходимо заполнить. Они перечислены ниже:

  1. Название соединения
  2. Способ подключения
  3. Hostname
  4. порт
  5. имя пользователя
  6. Пароль (Вы можете сохранить его или вводить каждый раз)

Параметр «Имя соединения» обычно используется для псевдонима, который будет использоваться для идентификации соединения. Метод подключения останется стандартным методом TCP / IP. В имени хоста вам необходимо указать IP-адрес удаленного сервера MySQL или localhost в случае локального сервера. Порт по умолчанию 3306, так как он настроен сервером MySQL в качестве порта по умолчанию. Имя пользователя и пароль — учетные данные для подключения.

После того, как учетные данные были добавлены, можно проверить соединение перед сохранением сведений. Чтобы проверить соединение, нажмите кнопку « Проверить соединение» в вышеприведенных окнах. Если появится предупреждение о несовместимости, нажмите Да, чтобы продолжить. Если соединение установлено успешно, должен отображаться ответ, показанный ниже.

Тест соединения

3.2 Подключение к базе данных в первый раз

После успешного подключения вы можете открыть соответствующую базу данных. Чтобы сохранить конфигурацию, просто нажмите Закрыть / Сохранить и дважды щелкните соединение, чтобы открыть базу данных. Экран, показанный ниже, будет отображаться, пока сервер запущен и работает. Как видно, на левой боковой панели окна расположены различные разделы, а именно:

  1. управление
  2. Пример
  3. Производительность
  4. Schemas

Каждый раздел подробно описан ниже.

Экран приветствия базы данных Workbench

Первый раздел, показанный выше, является разделом « Управление ». Раздел управления позволяет управлять и контролировать состояние сервера. Он позволяет просматривать количество клиентов, подключенных к базе данных, просматривать память и пространство, которое она использует, просматривать состояние определенных используемых функций и множество других параметров администрирования. Раздел управления также предоставляет нам две важные функции для базы данных. Особенности импорта и экспорта данных. Эти функции будут подробно рассмотрены далее.

Второй раздел — это раздел Экземпляр . Раздел экземпляра позволяет запускать или останавливать сервер в любой момент времени. Однако это требует, чтобы сервер MySQL был установлен в расположении по умолчанию, поскольку MySQL Workbench пытается найти файл конфигурации, а также сценарии, связанные с сервером, в расположении по умолчанию.

Следующий раздел — это раздел « Производительность », в котором представлен превосходный анализ производительности и отчеты. Однако эта функция ограничена MySQL Server версии 5.6.6 или выше. Следовательно, чтобы использовать эту функцию, убедитесь, что сервер баз данных имеет более высокий выпуск.

Последний раздел, видимый на изображении выше, является основным разделом для обычного разработчика. Раздел Схемы содержит список схем, которые были созданы в базе данных. В базе данных MySQL схема — это своего рода каталог, созданный в базе данных для хранения различных таблиц и записей. В следующем разделе описывается процесс создания и управления схемами и таблицами в MySQL Workbench.

4. Создание и управление схемой и таблицами базы данных.

С точки зрения разработчика, создание и управление схемой и таблицами — это самое важное, что нужно сделать в инструменте базы данных. Следовательно, мы подробно рассмотрим этот процесс, прежде чем перейти к функциям, которые характерны для администраторов баз данных или разработчиков баз данных. Почти каждая операция с базой данных может быть выполнена тремя способами с использованием MySQL Workbench.

  1. Используйте графический интерфейс для выполнения команды
  2. Написать и выполнить запрос SQL в окне SQL
  3. Откройте командную строку SQL и выполните запросы с помощью консоли SQL.

Здесь мы начнем использовать первые два способа создания схемы.

4.1 Создание схемы

Чтобы создать схему с использованием графического интерфейса, щелкните правой кнопкой мыши любую из существующих схем или в пустом окне схемы. В открывшемся всплывающем меню выберите « Создать схему», как показано ниже.

Создать схему

В открывшейся вкладке новой схемы введите имя схемы и параметры сортировки по умолчанию. Атрибут collation — это специфический для базы данных термин. Если вы не знаете об этом, вы можете оставить это поле пустым. Выберите Применить, как только вы ввели значения. Это откроет экран обзора, отображающий SQL, как показано ниже. Для каждой операции базы данных на основе графического интерфейса MySQL Workbench предоставляет запрос SQL перед применением изменений. Это позволяет понять синтаксис, используемый для действия.

1

CREATE SCHEMA `Tutorial` ;

Теперь при нажатии кнопки «Применить» схема создается и отображается в окне «Схема». Закройте вкладку Новая схема сейчас.
Чтобы выполнить ту же операцию с использованием MySQL-запроса, перейдите на вкладку « Запрос 1», которая открывается по умолчанию, и введите указанный выше запрос. Окно запроса содержит множество символов, которые будут рассмотрены далее в статье. На данный момент, после ввода запроса, используйте Ctrl / Cmd + Enter для выполнения запроса. Результат выполнения запроса можно увидеть в окне вывода Action, как показано ниже.

Действие Выход

4.2 Отбрасывание схемы

Теперь, когда мы создали дополнительную схему, которая в настоящее время бесполезна, мы можем выбрать удаление схемы таким же образом. Щелкните правой кнопкой мыши схему в разделе «Схемы» на левой боковой панели. Выберите Drop Schema. Точно так же, как Create Schema показала соответствующий SQL, Drop Schema также показывает соответствующий SQL. Вы можете применить его, чтобы удалить схему.

Таким же образом схема также может быть отброшена простым выполнением соответствующего SQL.

4.3 Создание таблицы с использованием графического интерфейса

После создания схемы можно приступить к созданию таблиц в схеме. Чтобы создать таблицу в схеме, щелкните правой кнопкой мыши на маленькой стрелке рядом с именем схемы, чтобы развернуть узел. Он показывает различные группы, такие как таблицы, представления, хранимые процедуры и функции. Щелкните правой кнопкой мыши группу таблиц и выберите « Создать таблицу» .

Создать таблицу в Workbench

При выборе опции открывается вкладка, позволяющая создать таблицу. Введите имя таблицы по желанию. В табличном разделе ниже, вы можете ввести имена столбцов по желанию. Пример данных для таблицы сведений о пользователе показан ниже.

Создать таблицу в Workbench

Первый и второй столбец выше говорят сами за себя. Остальные столбцы описаны ниже.

ПК: первичный ключ

NN: не нуль

UQ: уникальные данные

BIN: содержит двоичные данные

ООН: содержит неподписанные данные

ZF: подставки для заполненных нулями колонн

AI: Авто Увеличение значения поля

G: Сгенерированный столбец. Значение генерируется с использованием формулы для столбца

Установите соответствующие флажки, чтобы создать таблицу. Это не конец вариантов. Как видно на вкладке создания таблицы, существует множество дополнительных вкладок для настройки различных параметров. Они будут обсуждаться дальше. Нажмите « Применить», чтобы создать таблицу. Вы заметите, что так же, как Create Schema показала соответствующий SQL-скрипт, DDL создания таблицы появляется во всплывающем окне. Вы можете внести любые изменения, если это необходимо, в сценарии и нажать «Применить».

Вы можете заметить, что группа таблиц в дереве схемы отображает маленькую стрелку, указывающую, что есть таблицы, которые нужно увидеть. Вы можете найти таблицу в группе таблиц, развернув узел.

4.4 Настройка внешних ключей, триггеров и других параметров для таблицы

Как обсуждалось в приведенном выше разделе, графический интерфейс создания таблицы не ограничивается именами столбцов, типами данных и конкретными параметрами столбцов. MySQL Workbench предоставляет подробный пользовательский интерфейс для настройки каждого параметра, связанного с таблицей.

Конфигурация рабочего стола

Как видно на рисунке выше, в окне создания таблицы есть 6 вложенных вкладок, которые позволяют настроить практически все возможные параметры в процессе создания таблицы и сгенерировать сценарий SQL на основе этих параметров. На приведенном выше изображении была создана таблица со столбцом идентификатора пользователя, который должен ссылаться на столбец идентификатора ранее созданной таблицы. В этом разделе мы кратко обсудим каждую вкладку.

Вкладка «Индексы» используется для создания индекса по конкретным столбцам в дополнение к первичному ключу. Вы можете изучить параметры, щелкнув вкладку Индексы. Доступные опции не требуют пояснений, если пользователь обладает достаточными знаниями о базе данных MySQL. На данный момент эта таблица больше не нуждается в создании индексов. Следовательно, мы перейдем к следующей вкладке.

Вкладка «Внешние ключи» позволяет назначать ограничения внешнего ключа для столбцов таблицы. На вкладке отображается пользовательский интерфейс, как показано ниже.

настроить внешние ключи в MySQL Workbench

Левая панель позволяет задать псевдоним для идентификации внешних ключей и выбрать таблицу для ссылки. Панель между ними позволяет выбрать столбцы, которые будут связаны для ограничения внешнего ключа. Правая боковая панель позволяет настроить действие, которое будет выполняться при обновлении и удалении указанной строки, и при необходимости предоставить некоторые комментарии для внешнего ключа.

Триггеры следующей вкладки очень важны, когда разработчик разрабатывает крупномасштабную систему. Однако триггеры в основном создаются и разрабатываются администраторами базы данных. Чтобы использовать эту вкладку, необходимо создать триггеры с помощью графического интерфейса Trigger. После создания они могут быть привязаны к условию, например, «Перед обновлением», «После обновления» или другим, если необходимо.

Остальные две вкладки предназначены для опытных пользователей, которым необходимо управлять разбиением базы данных и настраивать другие параметры шифрования и защиты для таблицы.

4.5 Таблица изменения и удаления

Теперь, когда таблицы созданы, может потребоваться изменить столбцы или типы данных таблиц. Так же, как создание таблицы, это также возможно с помощью графического интерфейса. Чтобы изменить таблицу, просто наведите указатель мыши на имя таблицы в разделе схем. Вы сможете увидеть три иконки —

Информация — первый значок, чтобы получить информацию о таблицах.

Настройки — открывает окно создания таблицы, чтобы вы могли изменить таблицу

Select Rows — третий значок выполняет запрос на выборку для таблицы, чтобы извлечь все строки таблицы

Чтобы изменить схему, щелкните второй значок и внесите необходимые изменения в открывшемся окне. При необходимости измените параметры или имя таблицы и нажмите «Применить». Он автоматически сгенерирует скрипт изменения, необходимый для изменений.

Чтобы удалить таблицу или схему, все, что вам нужно сделать, это щелкнуть правой кнопкой мыши по соответствующим объектам и выбрать таблицу удаления или схему удаления соответственно. Он отобразит SQL-скрипт отбрасываемой таблицы или схемы отбрасывания и, нажав «применить», выполнит операцию.

5. Создание модели в MySQL Workbench

Теперь, когда у нас был прост процесс создания базы данных в MySQL, пришло время использовать MySQL для большей цели. Основная причина того, что MySQL Workbench является популярным инструментом среди разработчиков и администраторов баз данных, заключается в том, что он предоставляет огромные возможности для упрощения создания баз данных с помощью нескольких инструментов, таких как инструмент проектирования EER, инструмент проектирования моделей, графический интерфейс пользователя для управления схемами, таблицами, триггерами и процедурами, утилиты для мониторинга производительности, утилиты для управления сервером и средства для экспорта, импорта и миграции данных. В этом разделе обсуждается одна из этих важных функций — создание модели.

Создание модели — это альтернативный способ создания схемы и таблиц. Следовательно, мы сократили бы процесс создания таблицы здесь. Тем не менее, мы бы рассмотрели создание EER диаграммы из того же.

5.1 Создание схемы с использованием интерфейса модели Workbench

Модель является точной копией схемы, за исключением того, что она отображается визуально в виде диаграммы EER. Чтобы начать с создания новой модели, перейдите к File-> New Model . Открывается вкладка Новая модель. Во вкладке вверху есть несколько значков. Первые три значка на изображении, показанном ниже, относятся к операциям с файлом, таким как создание нового документа, открытие существующей модели и сохранение модели. За этими значками следуют значки отмены и повтора. Следующая группа значков необходима здесь.

Создать модель в Workbench

Для начала нажмите второй значок в группе — Создать новую схему. Следует создать новую схему, как показано выше. Под ним открывается вкладка, позволяющая настроить имя схемы. Затем приступите к созданию таблиц, нажав «Добавить таблицу» на изображении, показанном выше. Процесс создания таблицы аналогичен приведенному выше разделу после нажатия на ссылку «Добавить таблицу».

Если в схеме есть две-три таблицы, можно приступить к созданию диаграммы EER. На приведенной ниже диаграмме есть две таблицы, созданные аналогично предыдущему разделу. Нажмите Добавить диаграмму в разделе диаграммы EER на вкладке, чтобы создать диаграмму EER для текущей схемы.

Модель в SQL Workbench

Откроется новая вкладка с пустым листом диаграммы EER. На левой панели есть раздел Каталога, помеченный красным прямоугольником внизу.

Новая вкладка EER Diagram

Чтобы создать диаграмму EER, просто разверните узел таблиц и перетащите таблицы на лист. Перетаскивая ранее созданные таблицы на лист, он автоматически рисует линию, ссылающуюся на внешнюю ссылку между таблицами. Это можно увидеть ниже.

EER Diagram в верстаке

Также возможно создавать таблицы прямо из интерфейса. Кнопки, помеченные красным прямоугольником, позволяют легко добавлять новые таблицы на лист и открывают пользовательский интерфейс создания таблиц под листом. Вы можете заметить, что когда вы добавляете столбцы и ограничения внешнего ключа, они автоматически добавляются на диаграмме EER выше. Таким образом, диаграмма EER может быть легко создана с использованием интерфейса перетаскивания.

6. Экспорт и импорт данных

Это важная функция для каждой базы данных. MySQL Workbench позволяет довольно легко экспортировать, а также импортировать полную базу данных с помощью графического интерфейса. MySQL Workbench предоставляет графический интерфейс, который позволяет полностью настраивать выбор, начиная с выбора схемы и заканчивая выбором таблиц.

6.1 Экспорт данных

Чтобы экспортировать данные, перейдите к Серверу -> Экспорт данных. Он открывает вкладку, как показано ниже.

Интерфейс экспорта данных

Всякий раз, когда присутствует несколько схем, это позволяет выбрать схему. При выборе схемы для переноса на правой панели отображаются соответствующие таблицы. Это также позволяет вам выбрать таблицы для переноса. На нижней панели вы можете найти параметры для миграции хранимых процедур, событий, а также триггеров. Дополнительные параметры экспорта позволяют выбрать, следует ли экспортировать объекты в виде отдельных файлов или в виде отдельного файла. Дамп в папку проекта создает отдельный файл для каждого объекта, выбранного для экспорта.

Для понимания процесса импорта просто выберите « Экспорт в автономный файл» на данный момент после выбора схемы, созданной на предыдущих этапах. Теперь удалите схему, созданную ранее. В случае несоответствия объекта будет отображаться предупреждение. Тем не менее, это абсолютно безопасно для обработки, если вы не использовали что-то специфическое для предыдущей версии. Введите пароль при появлении запроса. Файл будет сохранен в папке назначения.

6.2 Импорт данных

Чтобы импортировать данные в базу данных MySQL, откройте пользовательский интерфейс импорта данных, перейдя к Серверу -> Импорт данных . В открывшемся интерфейсе выберите опцию автономного файла и найдите сохраненный файл дампа. Если вы планируете импортировать таблицы в другую схему, выберите схему и нажмите «Импорт». Он импортирует всю структуру таблицы в выбранную или новую схему.

7. Обратный инжиниринг

Часто случается, что разработчик кода непосредственно начинает создание таблиц вместо того, чтобы сначала следовать процессу создания EER, а затем переходить к таблицам. В таком случае, когда количество таблиц увеличивается, сложно создать диаграмму ER с нуля. MySQL Workbench решает эту проблему для вас. Благодаря функции обратного проектирования Workbench, MySQL workbench позволяет создавать диаграммы EER из любой существующей схемы в любой момент времени. Это не конец этого. Это также позволяет создавать EER любых других удаленных баз данных, к которым можно иметь доступ.

Переход к обратному проектированию

Чтобы создать диаграмму EER, просто перейдите в базу данных-> Обратный инженер . Откроется окно с запросом выбора соединения с базой данных, которое будет использоваться для реверс-инжиниринга. После выбора соединения нажмите «Продолжить». Он подключается к базе данных и проверяет соединение. Позже он выбирает список доступных объектов из базы данных. На следующем экране отображается успех этих шагов, как показано ниже.

Обратный Инжиниринг Шаг 2

Следующий шаг позволяет вам выбрать схемы, для которых нужно сгенерировать EER. Можно также создать комбинированную диаграмму EER для нескольких схем. После того как схемы выбраны, Workbench извлекает список объектов для выбранных схем и на следующем шаге обрабатывает диаграмму EER. Также можно выбрать объекты для отображения диаграммы EER.

В последнем окне вывода отображаются таблицы в формате диаграммы EER. Можно перетаскивать и размещать таблицы для большой базы данных, а также покрывать их на ограниченной области листа. Следующее — сохранить диаграмму как изображение, чтобы поместить ее в документ. Чтобы сохранить диаграмму, перейдите к File -> Export. Выберите вариант в соответствии с вашими потребностями и сохраните диаграмму.

8. Заключение

В статье подробно описаны все важные операции, которые можно выполнить с помощью MySQL Workbench. Основные операции, такие как создание схемы, таблиц и диаграммы EER, были рассмотрены. В дополнение к этому мы также рассмотрели процесс экспорта и импорта данных. Однако это еще не все, что есть в Workbench. Всегда есть что исследовать. Чтобы узнать больше, вы можете изучить руководство MySQL Workbench, доступное на его сайте .

Перенос Amazon RDS для MySQL в Базу данных Azure MySQL с помощью MySQL Workbench


  • Статья

  • Чтение занимает 7 мин


  • Участники: 2



Были ли сведения на этой странице полезными?




Да



Нет



Хотите оставить дополнительный отзыв?

Отзывы будут отправляться в корпорацию Майкрософт. Нажав кнопку «Отправить», вы разрешаете использовать свой отзыв для улучшения продуктов и служб Майкрософт. Политика конфиденциальности.


Отправить

В этой статье

применимо к: База данных Azure для MySQL — одиночный сервер

Чтобы перенести Amazon RDS для MySQL в Базу данных Azure MySQL, можно использовать различные служебные программы, такие как функции экспорта и импорта MySQL Workbench, Azure Database Migration Service (DMS) и средство дампа и восстановления MySQL. Однако самый простой и удобный способ переноса баз данных Amazon RDS для MySQL в Базу данных Azure MySQL — это мастер миграции MySQL Workbench.

С помощью мастера миграции вы можете легко выбрать схемы и объекты для переноса. Он также позволяет просматривать журналы сервера в поисках ошибок и узких мест в режиме реального времени. В результате при обнаружении ошибки в ходе миграции можно отредактировать и изменить таблицы или структуры и объекты баз данных, а затем возобновить процесс без необходимости перезапуска с нуля.

Примечание

Мастер миграции также можно использовать для переноса данных из других источников, например Microsoft SQL Server, Oracle, PostgreSQL, MariaDB и т. д., что выходит за рамки этой статьи.

Предварительные требования

Перед началом процесса миграции рекомендуется убедиться, что определенные параметры и компоненты настроены и установлены должным образом, как описано ниже.

  • Убедитесь, что кодировка исходной и целевой баз данных совпадает.

  • Задайте достаточное время ожидания в зависимости от объема данных или рабочей нагрузки, которую необходимо импортировать или перенести.

  • Задайте для параметра max_allowed_packet parameter разумное значение в зависимости от размера базы данных, которую необходимо импортировать или перенести.

  • Убедитесь, что во всех таблицах используется InnoDB, так как сервер Базы данных Azure MySQL поддерживает только подсистему хранилища InnoDB.

  • Удалите, замените или отредактируйте все триггеры, хранимые процедуры и другие функции, содержащие определения корневых пользователей или суперпользователей (База данных Azure MySQL не поддерживает привилегии суперпользователя). Вы можете заменить такие предложения DEFINER именем администратора, выполняющего процесс импорта, с помощью следующей команды:

    DELIMITER; ;/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`127.0.0.1`*/ /*!50003
    DELIMITER;
    /* Modified to */
    DELIMITER;
    /*!50003 CREATE*//*!50017 DEFINER=`AdminUserName`@`ServerName`*/ /*!50003
    DELIMITER;
    
    
  • Если на сервере базы данных выполняются определяемые пользователем функции (UDF), необходимо удалить права доступа к базе данных MySQL. Чтобы выяснить, какие пользовательские функции выполняются на сервере, используйте следующий запрос:

    SELECT * FROM mysql.func;
    

    Если вы обнаружите выполняемые UDF, удалите их с помощью следующего запроса:

    DROP FUNCTION your_UDFunction;
    
  • Убедитесь, что на сервере, на котором работает средство, и в месте экспорта достаточно места на диске и вычислительной мощности (виртуальных ядер, ЦП и памяти) для выполнения операции экспорта, особенно при экспорте очень большой базы данных.

  • Создайте путь между локальным или AWS экземпляром и Базой данных Azure MySQL, если рабочая нагрузка находится за брандмауэрами или другими системами защиты сети.

Запуск миграции

  1. Чтобы запустить миграцию, войдите в MySQL Workbench и щелкните значок «Главная».

  2. На панели навигации слева выберите значок мастера миграции, как показано на снимке экрана ниже.

    Отобразится страница Обзор мастера миграции, как показано ниже.

  3. Определите, установлен ли драйвер ODBC для сервера MySQL, выбрав элемент Открыть администратор ODBC.

    В нашем случае на вкладке Драйверы можно заметить, что установлены два драйвера ODBC для сервера MySQL.

    Если драйвер ODBC MySQL не установлен, используйте установщик MySQL, с помощью которого установили MySQL Workbench. Дополнительные сведения об установке драйвера ODBC MySQL см. в следующих документах:

  4. Закройте диалоговое окно Администратор источников данных ODBC и продолжайте процесс миграции.

Настройка параметров подключения сервера исходной базы данных

  1. На странице Обзор выберите Запустить миграцию.

    Появится страница Выбор источника. На этой странице укажите сведения о реляционной СУБД, из которой выполняется миграция, и параметры соединения.

  2. В поле Система базы данных выберите MySQL.

  3. В поле Сохраненное соединение выберите один из сохраненных параметров подключения для этой реляционной СУБД.

    Подключение можно сохранить, установив флажок в нижней части страницы и указав имя.

  4. В поле Метод подключения выберите Стандартный TCP/IP.

  5. В поле Имя узла укажите имя сервера базы данных источника.

  6. В поле Порт укажите 3306, а затем введите имя пользователя и пароль для подключения к серверу.

  7. В поле База данных укажите имя базы данных, которую необходимо перенести, если оно известно; в противном случае оставьте этот параметр пустым.

  8. Выберите Проверить подключение, чтобы проверить подключение к экземпляру сервера MySQL.

    Если вы ввели правильные параметры, появится сообщение об успешном подключении.

  9. Выберите Далее.

Настройка параметров подключения сервера целевой базы данных

  1. На странице Выбор целевого объекта задайте параметры для подключения к целевому экземпляру MySQL Server так же, как настраивали соединение с исходным сервером.

  2. Чтобы проверить подключение, нажмите Проверить подключение.

  3. Выберите Далее.

Выбор схемы для переноса

Мастер миграции установит соединение с экземпляром сервера MySQL и получит список схем с исходного сервера.

  1. Выберите Показать журналы, чтобы отследить эту операцию.

    На снимке экрана ниже показано, как извлекаются схемы с исходного сервера базы данных.

  2. Нажмите кнопку Далее, чтобы убедиться, что все схемы были успешно получены.

    На снимке экрана ниже показан список выбранных схем.

    Вы можете перенести только те схемы, которые отображаются в этом списке.

  3. Выберите схемы для переноса и нажмите кнопку Далее.

Миграция объектов

Затем укажите объекты, которые требуется перенести.

  1. Выберите Показать выделенное, а затем в разделе Доступные объекты выберите и добавьте объекты, которые требуется перенести.

    После добавления объектов они появятся в разделе Объекты для миграции, как показано на снимке экрана ниже.

    В этом сценарии мы выбрали все объекты таблицы.

  2. Выберите Далее.

Изменение данных

В этом разделе вы можете изменить объекты, которые требуется перенести.

  1. На странице Редактирование вручную обратите внимание на раскрывающееся меню Вид в правом верхнем углу.

    Раскрывающийся список Вид содержит три элемента:

    • Все объекты — отображает все объекты. С помощью этого параметра можно вручную изменить созданный скрипт SQL перед его применением к целевому серверу базы данных. Для этого выберите объект и щелкните «Показать код и сообщения». Можно просмотреть (и изменить) созданный код MySQL, соответствующий выбранному объекту.
    • Проблемы с миграцией — отображает все проблемы, возникшие во время миграции, которые можно просмотреть и проверить.
    • Сопоставление столбцов — отображает сведения о сопоставлении столбцов. Это представление можно использовать для редактирования имен и изменения столбцов целевых объектов.
  2. Выберите Далее.

Создание целевой базы данных

  1. Установите флажок Создать схему в целевой реляционной СУБД.

    Также можно сохранить существующие схемы, чтобы не менять и не обновлять их.

    В этой статье мы создаем схему в целевой СУБД, но можно также установить флажок Создать файл скрипта SQL, чтобы сохранить файл на локальном компьютере или для других целей.

  2. Выберите Далее.

Запуск скрипта MySQL для создания объектов базы данных

Так как мы решили создать схему в целевой СУБД, скрипт SQL для переноса будет выполнен на целевом сервере MySQL. Вы можете просмотреть ход его выполнения, как показано на снимке экрана ниже.

  1. После создания схем и их объектов нажмите кнопку Далее.

    На странице Создание целевых результатов отображается список объектов, которые были созданы, и уведомления об ошибках, обнаруженных при их создании, как показано на снимке экрана ниже.

  2. Проверьте сведения на этой странице, чтобы убедиться, что все выполнено правильно.

    В рассматриваемом в этой статье примере ошибок нет. Если устранять ошибки по сообщениям нет необходимости, можно отредактировать скрипт миграции.

  3. В поле Объект выберите объект, который нужно изменить.

  4. В разделе Скрипт SQL CREATE для выбранного объекта отредактируйте скрипт SQL, а затем нажмите кнопку Применить, чтобы сохранить изменения.

  5. Выберите Повторно создать объекты, чтобы запустить скрипт с изменениями.

    В случае сбоя скрипт придется снова отредактировать. Вы можете вручную исправить ошибки в скрипте SQL и выполнить его еще раз. В примере из этой статьи мы ничего не меняем, поэтому оставляем скрипт как есть.

  6. Выберите Далее.

Передача данных

На этом этапе процесса данные перемещаются из экземпляра базы данных исходного MySQL Server в созданный целевой экземпляр базы данных MySQL. Для настройки этого процесса используйте страницу Настройка передачи данных.

На этой странице представлены параметры для настройки передачи данных. В рамках этой статьи мы используем значения по умолчанию.

  1. Чтобы начать фактический перенос данных, нажмите кнопку Далее.

    Ход перемещения отображается, как показано на снимке экрана ниже.

    Примечание

    Длительность переноса данных напрямую зависит от размера переносимой базы. Чем больше база данных-источник, тем дольше будет выполняться процесс (для больших баз данных он может занять до нескольких часов).

  2. После завершения переноса нажмите кнопку Далее.

    Откроется страница Отчет о миграции с отчетом, содержащим сводку всего процесса, как показано на следующем снимке экрана:

  3. Нажмите кнопку Готово, чтобы закрыть окно мастера миграции.

    После этого миграция считается успешно завершенной.

Проверка согласованности перенесенных схем и таблиц

  1. Затем войдите в экземпляр целевой базы данных MySQL, чтобы убедиться, что перенесенные схемы и таблицы соответствуют исходной базе данных MySQL.

    В нашем случае можно увидеть, что все схемы (sakila, moda, items, customer, clothes, world и world_x) из базы данных Amazon RDS для MySQL MyjolieDB успешно перенесены в экземпляр базы данных Azure MySQL azmysql.

  2. Чтобы проверить количество таблиц и строк, выполните следующий запрос для обоих экземпляров:

    SELECT COUNT (*) FROM sakila.actor;

    На снимке экрана ниже можно увидеть, что число строк для Amazon RDS MySQL — 200, и это соответствует экземпляру Базы данных Azure MySQL.

    Хотя приведенный выше запрос можно выполнить для каждой отдельной схемы и таблицы, это может потребовать значительных усилий, если вы работаете с сотнями тысяч или даже миллионами таблиц. Для сверки размеров схемы (базы данных) и таблиц можно использовать приведенные ниже запросы.

  3. Чтобы проверить размер базы данных, выполните следующий запрос:

    SELECT table_schema AS "Database", 
    ROUND(SUM(data_length + index_length) / 1024 / 1024, 2) AS "Size (MB)" 
    FROM information_schema.TABLES 
    GROUP BY table_schema;
    
  4. Чтобы проверить размер таблиц, выполните следующий запрос:

    SELECT table_name AS "Table",
    ROUND(((data_length + index_length) / 1024 / 1024), 2) AS "Size (MB)"
    FROM information_schema.TABLES
    WHERE table_schema = "database_name"
    ORDER BY (data_length + index_length) DESC;
    

    На снимках экрана ниже показан размер схемы (базы данных) из исходного экземпляра Amazon RDS MySQL, который совпадает с параметрами целевого экземпляра Базы данных Azure MySQL.

    Поскольку размеры схемы (базы данных) одинаковы в обоих экземплярах, проверять размеры отдельных таблиц нет необходимости. В любом случае при необходимости всегда можно использовать приведенный выше запрос для проверки размеров таблицы.

    Теперь вы убедились, что миграция выполнена успешно.

Дальнейшие действия

  • Дополнительные сведения о переносе баз данных в службу «База данных Azure для MySQL» см. в этой статье.
  • Просмотрите видео Easily migrate MySQL/PostgreSQL apps to Azure managed service (Простой перенос приложений MySQL и PostgreSQL в управляемую службу Azure), в котором демонстрируется миграция приложений MySQL в Базу данных Azure для MySQL.

Как создать базу данных MySQL на Amazon Web Services

Сеть и безопасность

  • Virtual Private Cloud (VPC): выберите Default VPC (VPC по умолчанию). Дополнительную информацию о VPC см. в разделе Amazon RDS и Amazon Virtual Private Cloud (VPC).
  • Subnet Group (Группа подсетей): выберите группу подсетей default (По умолчанию). Дополнительную информацию о группах подсетей см. в разделе Работа с группами подсетей БД.
  • Public accessibility (Общий доступ): выберите Yes (Да). Инстансу базы данных будет присвоен IP-адрес, что позволит подключаться к базе данных непосредственно с пользовательского устройства.
  • Availability Zone (Зона доступности): выберите значение No Preference (Нет предпочтений). Для получения дополнительной информации см. раздел Регионы и зоны доступности.
  • VPC security groups (Группы безопасности VPC): выберите Create new VPC security group (Создать новую группу безопасности VPC). Будет создана группа безопасности, поддерживающая соединение между IP-адресом используемого устройства и созданной базой данных.

Настройки базы данных

  • Database Name (Имя базы данных): введите имя базы данных, которое может содержать от 1 до 64 буквенно-цифровых символов. Если имя не указано, Amazon RDS не сможет автоматически создать базу данных на основе нового инстанса БД.
  • Port (Порт): сохраните значение по умолчанию – 3306.
  • Option group (Группа настроек): выберите значение по умолчанию default:mysql5.7. С помощью групп настроек в Amazon RDS активируются и настраиваются дополнительные возможности.  Дополнительную информацию см. в разделе Работа с группами настроек.
  • IAM DB authentication (Аутентификация IAM БД): выберите Disable (Отключить). С помощью этой настройки можно управлять данными для доступа к базе данных с использованием пользователей и групп AWS IAM.

Шифрование

Эта настройка недоступна на уровне бесплатного пользования. Дополнительную информацию см. в разделе Шифрование ресурсов Amazon RDS.

Резервное копирование

  • Backup Retention Period (Срок хранения резервных копий): в этом поле можно выбрать количество дней, в течение которого сохраняются резервные данные. В данном случае выберите значение 1 day (1 день).
  • Backup Window (Окно резервного копирования): задайте значение по умолчанию – No Preference (Нет предпочтений).

Мониторинг

  • Enhanced Monitoring (Расширенный мониторинг): выберите Disable enhanced monitoring (Отключить расширенный мониторинг), чтобы остаться на уровне бесплатного пользования. В случае активации расширенного мониторинга в режиме реального времени становятся доступны метрики для операционной системы (ОС), на которой работает инстанс БД. Дополнительную информацию см. в разделе Просмотр метрик инстанса БД.

Performance Insights

Для выполнения заданий этого учебного пособия выберите Disable Performance Insights (Отключить Performance Insights).

Обслуживание

  • Auto minor version upgrade (Автоматическое промежуточное обновление версии): выберите Enable auto minor version upgrade (Включить автоматическое промежуточное обновление версии), чтобы получать автоматические обновления, как только они станут доступны.
  • Maintenance Window (Окно обслуживания): выберите No preference (Нет предпочтений).

Защита от удаления

Отключите параметр Enable deletion protection (Включить защиту от удаления) для выполнения заданий этого учебного пособия. Если этот параметр включен, базу данных невозможно удалить.

 

MySQL :: MySQL Workbench Manual :: 9.3.1 Создание модели

В этом руководстве описывается, как создать новую модель базы данных и как
для перенаправления модели на работающий сервер MySQL.

  1. Запустите MySQL Workbench. На главном экране щелкните представление моделей.
    на боковой панели, а затем нажмите (+) рядом с
    Модели. Кроме того, вы можете нажать
    а затем из меню (показанного на рисунке, что
    следует).

    Рис 9.22 Руководство по началу работы – главный экран

    Модель может содержать несколько схем. Обратите внимание, что при создании
    новая модель, она содержит схему mydb от
    По умолчанию. Вы можете изменить имя этой схемы по умолчанию как
    необходимо или вы можете удалить его.

  2. Нажмите кнопку + справа от
    на панели инструментов Physical Schemas, чтобы добавить новый
    схема. Имя схемы по умолчанию
    new_schema1 , который теперь можно изменить на
    dvd_collection , изменив его
    Поле имени.Подтвердите это изменение в
    Панель «Физические схемы», показанная на следующем
    фигура. Теперь вы готовы добавить таблицу.

    Рисунок 9.23. Учебное пособие по началу работы — новая схема

  3. Дважды щелкните Добавить таблицу в
    Раздел «Физические схемы».

  4. Это автоматически загружает редактор таблиц с таблицей по умолчанию.
    имя таблица1 . Изменить таблицу
    Поле имени, чтобы изменить имя таблицы с
    таблица1 от до фильмы .

  5. Затем добавьте столбцы в таблицу. Дважды щелкните столбец
    Имя ячейки и первое поле по умолчанию
    movieid , потому что (по умолчанию) MySQL Workbench
    добавляет id к имени таблицы для начального
    поле. Измените movieid на
    movie_id и сохранить
    Тип данных как INT и
    также выберите ПК (ПЕРВИЧНЫЙ КЛЮЧ),
    NN (НЕ NULL) и AI
    (AUTO_INCREMENT) флажки.

  6. Добавьте два дополнительных столбца, описанных в следующей таблице.
    На рисунке, который появляется после таблицы, показаны все три столбца.
    в фильмах стол.

    Имя столбца Тип данных Свойства столбца
    фильм_название ВАРЧАР(45) НН
    дата_релиза ДАТА (ГГГГ-ММ-ДД) Нет

    Рис 9.24 Руководство по началу работы — Редактирование столбцов таблицы

  7. Для визуального представления (диаграмма EER) этой схемы выберите
    а затем создать диаграмму EER для
    модель. На следующем рисунке показана новая вкладка под названием
    Диаграмма EER, которая отображает диаграмму
    представление таблицы фильмов и столбцов.

    Рисунок 9.25 Учебник по началу работы — схема EER

  8. В редакторе таблиц измените имя столбца
    movie_title от до title .Обратите внимание, что диаграмма EER автоматически обновляется, чтобы отразить
    это изменение.

    Примечание

    Чтобы открыть редактор таблиц, либо вернитесь к
    Вкладка «Модель MySQL» и щелкните правой кнопкой мыши
    фильмы стол или щелкните правой кнопкой мыши
    фильмов на диаграмме EER и выберите
    вариант.

  9. Сохраните модель, выбрав и затем
    из меню или нажмите
    значок Сохранить модель в текущий файл на
    панель инструментов меню.Для этого руководства введите
    Home_Media и нажмите
    Сохранять.

Прежде чем синхронизировать новую модель с работающим сервером MySQL,
подтвердите, что вы уже создали соединение с MySQL. Этот учебник
предполагает, что вы уже создали соединение. Если нет, см.
Раздел 5.2, «Создание нового подключения к MySQL (учебник)» и
используйте этот учебник для создания соединения MySQL с именем
MyFirstConnection, хотя альтернатива
соединение также может работать.

Теперь перенесите вашу модель на работающий сервер MySQL следующим образом:

  1. Выберите , а затем в меню, чтобы открыть
    Инженер для мастера базы данных.

  2. Шаг Connection Options выбирает соединение MySQL и
    опционально устанавливает дополнительные параметры для выбранного MySQL
    связь. Внесите необходимые изменения в подключение, а затем нажмите
    Следующий.

    Примечание

    Вы можете выбрать здесь другое соединение с MySQL,
    но в этом руководстве используется MyFirstConnection.

  3. На шаге «Параметры» перечислены дополнительные дополнительные параметры (как показано на
    следующий рисунок). Для этого урока вы можете игнорировать
    эти параметры и нажмите кнопку Далее.

    Рисунок 9.26. Учебное пособие по началу работы — опции

  4. Выберите объект для экспорта на работающий сервер MySQL. В этом
    случай, есть только одна таблица
    ( dvd_collection.movie ). Выберите
    Флажок Экспорт объектов таблицы MySQL (как
    показанный рисунок), а затем нажмите кнопку Далее.

    Рисунок 9.27. Учебное пособие по началу работы. Выбор объектов

  5. На шаге Review SQL Script отображается сценарий SQL, который будет
    выполняется на действующем сервере для создания вашей схемы. Обзор
    сценарий, чтобы убедиться, что вы понимаете операции, которые
    осуществляться.

    Щелкните Далее, чтобы выполнить
    процесс опережающего проектирования.

    Рис 9.28 Учебное пособие по началу работы. Обзор сценария SQL

  6. Шаг Commit Progress подтверждает выполнение каждой задачи.
    Щелкните Показать журналы, чтобы просмотреть журналы. Если нет
    присутствуют ошибки, нажмите Закрыть, чтобы закрыть
    Мастер.

  7. Новая база данных dvd_collection теперь
    присутствует на сервере MySQL. Подтвердите это, открыв MySQL
    подключение и просмотр списка схем или выполнение
    ПОКАЗАТЬ БАЗЫ ДАННЫХ из командной строки MySQL
    Клиент ( mysql ).

  8. Щелкните значок «Сохранить модель в текущем файле».
    на панели инструментов меню, чтобы сохранить модель.

Дополнительные сведения о моделировании данных см.
Глава 9, Проектирование и моделирование баз данных .

Как создать базу данных MySQL в Workbench {Создать таблицы и добавить данные}

Введение

Workbench — это кросс-платформенный визуальный инструмент с открытым исходным кодом для управления базами данных.

В то время как некоторым архитекторам баз данных и администраторам нравится работать через командную строку, другие предпочитают графический интерфейс. Workbench предоставляет удобный графический интерфейс, в котором вы можете создавать и поддерживать базы данных.

Узнайте, как создать базу данных и таблицу MySQL в Workbench, а также как добавить данные в таблицу.

Предпосылки

  • MySQL Workbench установлен в вашей системе
  • Сервер MySQL (поскольку Workbench работает с базами данных MySQL)

Как использовать MySQL Workbench для создания базы данных

1.Для создания базы данных сначала нужно открыть Workbench .

2. Выберите сервер базы данных, к которому у вас есть доступ, и подключитесь к нему.

3. Существует два способа создания новой базы данных:

  • Найдите раздел «Схема» на боковой панели слева и щелкните правой кнопкой мыши белую (пустую) область. Нажмите Создать схему . Создаваемая вами схема фактически является базой данных.
  • Нажмите значок для создания новой схемы на панели инструментов Workbench.

4. Назовите базу данных, используя буквенно-цифровые символы и заменив пробелы символом подчеркивания ( _ ).

5. Вы можете установить сортировку по умолчанию , например Latin1 или UTF8. Однако это не является обязательным. Если вы не определяете сопоставление, оно автоматически использует то, что назначено экземпляру сервера.

6. Нажмите Применить. Workbench позволяет вам изменить сценарий SQL, который будет применяться к базе данных. Если все в порядке, нажмите Применить еще раз.

Примечание: Убедитесь, что операторы, которые вы собираетесь применить, работают с вашей базой данных. После того, как вы зафиксируете сценарий SQL, вы не сможете отменить операторы без потери некоторых данных.

7. Далее вывод сообщит вам, что сценарий SQL был успешно применен к базе данных.

8. На этом шаге вы создали базу данных (схему). Закройте сценарий SQL и начните работать с таблицей.

Создать таблицу

Как и в случае с базой данных, вы можете создать таблицу с помощью графического интерфейса Workbench.

1. Разверните базу данных, в которой вы хотите создать таблицу.

2. Первым пунктом в расширенном меню должно быть Tables . Щелкните элемент правой кнопкой мыши и выберите Создать таблицу .

3. Дайте вашей таблице имя.

4. Дважды щелкните пустой белый раздел под именем таблицы, чтобы добавить столбцы.

5. Определите имя столбца, тип данных и любые ограничения, которые могут потребоваться.

6. Добавьте необходимое количество столбцов и выберите Применить .

На этом вы выполнили SQL-скрипт и можете переходить к добавлению данных в таблицу.

Добавить данные в таблицу

Перед добавлением данных в таблицу необходимо выполнить несколько шагов.

1. На левой боковой панели найдите таблицу, в которую вы хотите добавить данные.

2. Наведите указатель мыши на таблицу. С правой стороны появятся три (3) светло-серых значка. Последний значок — это значок таблицы. Щелкните этот маленький значок таблицы, чтобы загрузить таблицу.

3.Это действие вызывает новое окно, в котором в верхнем левом разделе отображается инструкция MySQL, а в нижнем разделе отображаются строки данных (в настоящее время с нулевыми значениями).

4. Чтобы добавить строки данных, выберите нужный столбец и введите значение. После того, как вы ввели данные, нажмите кнопку Применить .

5. Появится новое окно со скриптом SQL. Нажмите Применить и Готово , чтобы добавить данные.

Заключение

Вы успешно создали базу данных MySQL и таблицу в Workbench.Кроме того, вы научились добавлять данные в свои таблицы и теперь можете начать работать с различными базами данных MySQL.

Ознакомьтесь с нашим руководством о том, как создать таблицу в MySQL и вставить данные, а также о различных способах запроса данных с помощью оболочки MySQL или File Script.

Как создать базу данных MySQL с помощью MySQL Workbench

MySQL Workbench — это программный агент Windows с графическим интерфейсом, используемый для администрирования серверов и баз данных MySQL, и часто устанавливается по умолчанию на сервере Windows, на котором работает MySQL, однако вы также можете установить его удаленно на клиентскую машину или машину разработчика.В этом руководстве показано, как создать новую базу данных и нового пользователя для доступа к этой базе данных на сервере MySQL с помощью phpMyAdmin.

  • Вам потребуется логин пользователя root или администратора баз данных на сервере MySQL или логин пользователя с разрешением на создание новых баз данных.
  • Серверы MySQL обычно настроены так, чтобы НЕ разрешать вход пользователю root с удаленного хоста. Вам нужно будет сначала создать логин пользователя DBA или использовать MySQL Workbench, локально установленный на сервере Mysql.
  • У вас должна быть установлена ​​рабочая среда MySQL.Чтобы загрузить последнюю версию, нажмите сюда.

Откройте программное обеспечение MySQL Workbench.

ДВОЙНОЙ щелчок на вашем экземпляре MySQL в разделе SQL Development Workbench, чтобы создать новую схему.

ПРИМЕЧАНИЕ. Базы данных называются схемами в MySQL Workbench.

Рабочему месту MySQL может потребоваться вход на сервер MySQL. Введите корневого пользователя или пользователя и пароль, которым были назначены привилегии сервера dba.

Щелкните значок New Schema в меню, а затем введите имя для вашей новой базы данных в поле, как показано.Нажмите кнопку Применить , чтобы сгенерировать сценарий SQL.

Нажмите кнопку Apply еще раз, чтобы выполнить оператор создания базы данных и создать новую базу данных.

Нажмите Готово .

Теперь ваша база данных должна быть указана слева вместе с другими схемами вашей базы данных.

Щелкните значок Home в верхнем левом углу, чтобы вернуться на главный экран Workbench.Нажмите на свой экземпляр сервера MySQL в разделе Server Administrator рабочей среды MySQL, чтобы создать нового пользователя базы данных и назначить привилегии для вашей новой базы данных.

Щелкните Пользователи и привилегии . Затем нажмите Добавить учетную запись . Введите имя пользователя для нового пользователя, введите localhost и новый пароль , как показано. Щелкните Применить , чтобы создать новую учетную запись пользователя.

Чтобы назначить этому пользователю права доступа к определенной базе данных, щелкните вкладку Schema Privileges . Щелкните учетную запись пользователя в списке пользователей слева. Нажмите кнопку Добавить запись .

Выберите переключатель Selected Schema и выберите схему базы данных из списка.

Выберите соответствующие привилегии, чтобы разрешить пользователю доступ к выбранной базе данных. Большинству современных программ для веб-сайтов потребуются только разрешения, перечисленные ниже. Щелкните Сохранить изменения, чтобы завершить настройку нового пользователя.

Выбрать, Вставить, Обновить, Удалить, Создать, Изменить, Индексировать, Удалить, Создать временные таблицы, Блокировать таблицы

Теперь вы можете протестировать новый логин пользователя, используя MySQL Workbench с только что созданной учетной записью пользователя.

Как создавать таблицы и добавлять данные в базу данных MySQL с помощью MySQL Workbench

Графический интерфейс MySQL Workbench кроссплатформенный, с открытым исходным кодом и невероятно прост в использовании.

Многим администраторам баз данных удобно работать в командной строке. Для них это настолько эффективно, насколько может быть рабочая среда. Однако для других командная строка слишком громоздка, чтобы быть эффективной. К счастью, для таких пользователей доступно множество графических интерфейсов, облегчающих задачу.Одним из таких графических интерфейсов является MySQL Workbench. Этот конкретный инструмент является одним из лучших локально установленных клиентских инструментов MySQL, которые вы найдете. Он кроссплатформенный, с открытым исходным кодом и невероятно прост в использовании.

Сеть: обязательный к прочтению охват

Я собираюсь показать вам, насколько просто использовать MySQL Workbench. Для этого я проведу вас через процесс создания базы данных, добавления таблицы в эту базу данных, а затем добавления данных в таблицу.

SEE: Контрольный список развертывания/миграции сервера (Tech Pro Research)

Что вам нужно

Я буду использовать MySQL Working 6.3, который радикально отличается от более старых версий инструмента. Мой экземпляр MySQL Workbench будет подключаться к базе данных MySQL, размещенной на сервере Ubuntu 18.04. Вам нужно убедиться, что у вас настроен MySQL для удаленных подключений ( См. Как настроить MySQL для удаленного доступа на Ubuntu Server 16.04 (Это также работает для Ubuntu 18.04).

Я предполагаю, что у вас уже установлен MySQL Workbench.

Создание базы данных

Первое, что нужно сделать, это создать базу данных (также известную как Schema).Откройте MySQL Workbench и подключитесь к серверу базы данных. На главном экране базы данных ( Рисунок A ) щелкните правой кнопкой мыши пустое место под панелью СХЕМЫ и выберите Создать схему.

Рисунок А

В появившемся окне ( Рисунок B ) укажите имя схемы (базы данных) и (при необходимости) выберите сортировку по умолчанию.

Рисунок В

После того, как вы назовете свою схему, нажмите кнопку «Применить» и, когда будет предложено, просмотрите сценарий SQL и снова нажмите «Применить».После создания схемы закройте окно SQL Script. Вы готовы создать таблицу.

Создание таблицы

Я создал базу данных SERVERS, которая будет отображаться на панели SCHEMAS. Разверните этот список, щелкните правой кнопкой мыши запись «Таблицы» и выберите «Создать таблицу». В новом окне ( Рисунок C ) назовите таблицу.

Рисунок С

Дважды щелкните имя столбца, и вы сможете ввести имя первого столбца.После этого вы можете выбрать тип данных для столбца ( Рисунок D ).

Рисунок D

Продолжайте добавлять столбцы, пока ваша таблица не будет завершена. Нажмите «Применить», чтобы выполнить сценарий SQL. Теперь ваша таблица готова для данных.

Добавление данных в таблицу

Пришло время заполнить эту таблицу некоторыми данными. Вот где это становится сложно. В предыдущих воплощениях MySQL Workbench на главном экране можно было найти кнопку, которая приводила вас непосредственно к разделу ввода данных таблицы.Этого больше нет. Чтобы начать добавлять данные в таблицу, щелкните правой кнопкой мыши таблицу (на панели СХЕМЫ), которую нужно изменить, и выберите Выбрать строки. Затем вы окажетесь в окне, позволяющем вводить данные ( Рисунок E ).

Рисунок Е

В этом окне вы можете либо использовать сетку результатов, либо открыть редактор форм. Для самого быстрого пути к успеху используйте сетку результатов (которая используется по умолчанию). Дважды щелкните первую запись в одном из столбцов и введите данные, которые необходимо добавить.После ввода необходимых данных нажмите Enter на клавиатуре. Дважды щелкните под этой вновь созданной строкой и создайте другую. После того, как вы добавите все свои данные, нажмите «Применить», чтобы выполнить сценарий SQL.

Редактор форм так же прост в использовании; вам нужно только не забыть щелкнуть кнопку «Следующий ввод» (одиночная стрелка вправо), чтобы перейти к следующей строке данных ( Рисунок F ), прежде чем вводить новые данные.

Рисунок F

Ваша база данных готова

Поздравляем, вы успешно создали базу данных, добавили таблицу и ввели в нее данные.Ваша база данных готова к использованию.

Верстак MySQL

. Создание базы данных

SQLS*Plus — лучший инструмент отчетности и автоматизации командной строки SQL Server! SQLS*Plus на несколько порядков лучше, чем инструменты командной строки SQL Server sqlcmd и osql.

Главная » Блог SQL Server » MySQL Workbench. Создание базы данных

9 июня 2020 г.

MySQL Workbench. Веб-разработчик растет вместе с проектами, которые он создает и разрабатывает .По мере роста проектов возрастает сложность программной части, неизбежно увеличивается объем обрабатываемых ею данных, а также сложность схемы данных. Взаимодействие с другими веб-разработчиками показывает, что у нас очень популярны базы данных MySQL, а для управления ими — всем известный PHPMyAdmin.

Переходя от маленьких проектов к большим, от cms к фреймворкам, многие, как и я, остаются верны MySQL. Однако для проектирования сложной базы данных с большим количеством таблиц и ссылок возможностей PHPMyAdmin катастрофически не хватает. Вот и я решил написать обзор MySQL Workbench — отличной бесплатной десктопной программы для работы с MySQL.

MySQL Workbench — это инструмент для проектирования баз данных, который объединяет проектирование, моделирование, создание и эксплуатацию баз данных в единой бесшовной среде для системы баз данных MySQL.

Надо сказать, программа действительно отличная. Он позволяет быстро и безболезненно инкапсулировать схемы данных проекта, проектировать сущности и связи между ними, безболезненно вносить изменения в схему и так же быстро и безболезненно синхронизировать ее с удаленным сервером.А графический редактор EER-диаграмм, напоминающий забавных тараканов, позволяет увидеть общую картину модели данных и насладиться ее легкостью и изящностью. После первой попытки этот инструмент становится незаменимым помощником в боевом арсенале веб-программиста.

Скачать MySQL Workbench

Дистрибутив MySQL Workbench доступен на этой странице. Последняя версия программы на момент написания — Версия 6.1. Перед загрузкой необходимо выбрать одну из следующих платформ:

  • Microsoft Windows (доступны установщик MSI и ZIP-архив).
  • Убунту Линукс
  • Федора
  • Red Hat Enterprise Linux / Oracle Linux
  • Mac OS X

После выбора платформы вам будет предложено зарегистрироваться или войти в Oracle. Если не хотите, внизу есть ссылка «Нет, спасибо, просто начните мою загрузку» — нажмите на нее .

Начало работы с MySQL Workbench

Стартовый экран программы отражает основные направления ее функциональности – проектирование моделей баз данных и их администрирование:

В верхней части экрана находится список подключений к MySQL сервера ваших проектов, а список последних открытых моделей данных — внизу экрана.Работа обычно начинается с создания схемы данных или загрузки существующей структуры в MySQL Workbench. Приступаем к работе!

Создание и редактирование модели данных

Чтобы добавить модель, нажмите плюс рядом с заголовком «Модели» или выберите «Файл → Новая модель» (Ctrl + N):

На этом экране введите имя базы данных, выберите кодировку по умолчанию и при необходимости заполните поле комментария. Вы можете начать создавать таблицы.

Добавление и редактирование таблицы

Список баз данных проекта и список таблиц в базе данных будет находиться на вкладке «Физические схемы». Чтобы создать таблицу, дважды щелкните «+Добавить таблицу»:

Откроется удобный интерфейс для редактирования списка полей и их свойств. Здесь мы можем задать имя поля, тип данных, а также задать различные атрибуты для полей: назначить поле как Primary Key (PK), пометить его как Not Null (NN), BIN, Unique (UQ) и другие, установить поле для автоинкремента (AI) и по умолчанию (Default).

Управление индексами

Вы можете добавлять, удалять и редактировать индексы таблиц на вкладке «Индексы» интерфейса управления таблицами:

Введите имя индекса, выберите его тип, затем проверьте список полей, участвующих в этот индекс в нужном порядке.Порядок полей будет соответствовать порядку, в котором были расставлены галочки. В этом примере я добавил уникальный индекс в поле имени пользователя.

Связи между таблицами

Установка внешних ключей и связывание таблиц возможны только для таблиц InnoDB (эта система хранения выбрана по умолчанию). Для управления привязками в каждой таблице есть вкладка «Внешние ключи»:

Для добавления соединения откройте вкладку «Внешние ключи» дочерней таблицы, введите имя внешнего ключа и выберите родительскую таблицу .Затем в средней части вкладки в колонке Column выберите ключевое поле из дочерней таблицы, а в колонке Referenced Column – соответствующее поле из родительской таблицы (тип полей должен совпадать). При создании внешних ключей в дочерней таблице автоматически создаются соответствующие индексы.

В разделе «Параметры внешнего ключа» настраиваем поведение внешнего ключа при изменении соответствующего поля (ON UPDATE) и удалении (ON DELETE) родительской записи:

  • RESTRICT — выдавать ошибку при изменении/удалении родительской записи
  • CASCADE — обновить внешний ключ при изменении родительской записи, удалить дочернюю запись при удалении родительской
  • SET NULL – установить значение внешнего ключа NULL при изменении/удалении родителя (недопустимо для полей, у которых установлен флаг NOT NULL!).
  • NO ACTION — ничего не делать, но по сути эффект аналогичен RESTRICT.

В приведенном выше примере я добавил внешний ключ в дочернюю таблицу UserProfile для связи с родительской таблицей User. При редактировании поля userId и удалении элементов из таблицы User аналогичные изменения автоматически произойдут с соответствующими записями в таблице UserProfile.

Заполнение таблицы исходными данными

При создании проекта часто возникает необходимость внести в базу стартовые данные.Это могут быть корневые категории, пользовательские админы и т.д. В управлении таблицами MySQL Workbench для этого есть вкладка «Вставки»: перед записью в базу данных это делается с использованием синтаксиса \func имя_функции(‘данные’), например, \func md5(‘пароль’).

После ввода данных необходимо сохранить их в локальную базу данных, нажав кнопку «Применить изменения».

Создание диаграммы EER (диаграмма связи объекта)

В MySQL Workbench имеется редактор диаграмм EER для графического представления схемы данных, объектов и их отношений. Чтобы создать диаграмму, дважды щелкните значок «+Добавить диаграмму» в верхней части экрана управления базой данных:

В ее интерфейсе можно создавать и редактировать таблицы, добавлять различные типы связей между ними. Чтобы добавить таблицу, которая уже существует в диаграмме, просто перетащите ее из панели «Дерево каталога» .

Чтобы экспортировать данные схемы в графический файл, выберите «Файл → Экспорт», а затем один из вариантов (PNG, SVG, PDF, файл PostScript).

Импорт существующей схемы данных (из дампа SQL)

Если у нас уже есть схема данных, вы можете легко импортировать ее в MySQL Workbench для дальнейшей работы. Чтобы импортировать модель из файла SQL, выберите «Файл → Импорт → Обратный инжиниринг MySQL Create Script…», затем выберите нужный файл SQL и нажмите «Выполнить >».

MySQL Workbench также обеспечивает импорт и синхронизацию моделей данных непосредственно с удаленным сервером. Для этого необходимо создать подключение удаленного доступа к MySQL.

Учебное пособие по MySQL Workbench. Введение в MySQL Workbench. Обучение администратора баз данных MySQL. Эдурека (видео)

 

Теги: типы данных, MySQL, MySQL Workbench, SQL

Visual Database Creation with MySQL Workbench

В сегодняшнем руководстве вы узнаете, как использовать утилиту визуального моделирования базы данных, чтобы нарисовать диаграмму базы данных и автоматически сгенерировать SQL. В частности, мы рассмотрим, как использовать MySQL Workbench, кроссплатформенный инструмент визуального проектирования баз данных.

Что такое MySQL Workbench?

MySQL Workbench — это мощный инструмент, разработанный MySQL с тремя основными областями функциональности:

  • SQL Development : Заменяет браузер запросов MySQL. Позволяет пользователю подключаться к существующей базе данных, редактировать и выполнять запросы SQL.
  • Моделирование данных : Полное визуальное проектирование и моделирование базы данных.
  • Администрирование базы данных : Заменяет администратора MySQL.Графический интерфейс для запуска/остановки серверов, создания учетных записей пользователей, редактирования файлов конфигурации и т. д.

В этом руководстве мы сосредоточимся на аспекте Моделирование данных , чтобы создать базу данных с нуля, а затем просто взглянем на редактор SQL, чтобы выполнить сгенерированный сценарий SQL и создать базу данных в MySQL.

MySQL Workbench доступен для Windows, Linux и Mac OSX. Существует две разные версии: Community OSS Edition и коммерческая Standard Edition .Как и следовало ожидать, версия для сообщества имеет открытый исходный код и лицензию GPL. Он полностью функционален, и именно его мы будем использовать в этой статье. Коммерческая версия добавляет некоторые дополнительные функции, такие как проверка схемы и модели или создание документации.

Примечание. Это руководство основано на Community OSS Edition версии 5.2 (5.2.16), которая в настоящее время находится в бета-версии на момент написания (апрель 2010 г.).

Планирование нашей базы данных

Чтобы узнать, как использовать MySQL Workbench, мы будем использовать в качестве примера очень простую базу данных для онлайн-классов.Предположим, группа учителей хочет предложить онлайн-занятия по нескольким предметам, используя Skype или любое другое программное обеспечение для видеоконференций. Для нашего небольшого проекта мы решили, что нам нужно хранить следующую информацию:

При построении диаграммы нам также необходимо знать отношения между этими группами данных; так что нам лучше подумать об этом сейчас!

  • Один учитель может преподавать много предметов
  • Один предмет может преподаваться многими учителями
  • В каждом классе есть только один учитель
  • Один учитель может вести несколько классов
  • Один ученик может посещать несколько занятий
  • В одном классе много учеников
  • Одно занятие может длиться несколько часов (в неделю)
  • В один день и час может быть несколько занятий
  • Класс посвящен одному предмету
  • Один предмет может преподаваться во многих классах

На данный момент у нас есть вся информация, необходимая для встречи со звездой этого шоу…

Отправить в MySQL Workbench

Пришло время запустить Workbench. В части моделирования данных на главном экране мы нажимаем «Создать новую модель EER» , и появляется следующий экран:

Когда мы создаем новую модель базы данных, она содержит схему mydb по умолчанию. Мы можем переименовать его и использовать в качестве нашей схемы БД. Модель базы данных может иметь несколько разных схем.

Каталог справа покажет каждый элемент нашей схемы и позволит нам перетаскивать элементы на диаграммы, если это необходимо.

Наличие отдельных разделов для физических схем и диаграмм EER, а также возможность включения нескольких схем в одну модель базы данных могут сбивать с толку. В следующем разделе объясняются эти концепции и то, как они связаны.

Уточнение понятий

Физическая схема содержит все необходимые части для определения базы данных: таблицы, столбцы, типы, индексы, ограничения и т. д. Это то, что мы на самом деле определяем. Каждый объект, добавленный в графическую модель, также отображается на физической схеме.На самом деле это визуальный способ определить нашу схему.

У нас может быть несколько схем для одной и той же модели базы данных точно так же, как у нас может быть несколько баз данных на сервере MySQL. Каждая схема будет базой данных MySQL. Например, на следующем экране у нас есть две вкладки схемы:

.

Если мы сгенерируем сценарий SQL, у нас будет два отдельных оператора CREATE DATABASE — на самом деле у нас будет CREATE SCHEMA, который является просто синонимом.

 СОЗДАТЬ СХЕМУ, ЕСЛИ НЕ СУЩЕСТВУЕТ `schema1`;
СОЗДАТЬ СХЕМУ, ЕСЛИ НЕ СУЩЕСТВУЕТ `schema2`; 

«EER расшифровывается как расширенный (или расширенный) Entity-Relationship .Диаграммы EER — это просто способ моделирования данных и взаимосвязей между данными с использованием стандартных символов»

Они будут перечислены как базы данных на хосте сервера MySQL при использовании SHOW DATABASES.

Итак, что такое диаграмма EER? EER расшифровывается как расширенный (или расширенный) Entity-Relationship >. Диаграммы EER — это просто способ моделирования данных и взаимосвязей между данными с использованием стандартных символов. Модели EER могут быть сложными, но MySQL Workbench использует только подмножество всех возможных графических элементов, потому что цель этой диаграммы (в этом инструменте) состоит в том, чтобы каждый элемент отображался на физической схеме.

Мы можем использовать диаграмму EER для определения всей базы данных или только ее небольших частей. Например, мы можем иметь схему с пятью определенными таблицами, а затем создать новую диаграмму для определения еще двух таблиц с помощью визуального редактора. Диаграмма будет содержать только две таблицы, но эти две таблицы также будут включены в схему вместе с предыдущими пятью.

Создание наших таблиц

Вернемся к нашему исходному примеру; мы должны переименовать схему по умолчанию, дважды щелкнув имя.На данный момент у нас есть две возможности: мы можем начать добавлять таблицы в нашу физическую схему, используя значок добавления таблицы, или мы можем запустить диаграмму EER и добавить туда все таблицы.

Я предпочитаю добавлять новую диаграмму с самого начала и создавать свою схему визуально; однако, чтобы показать, как это сделать с помощью обоих методов, мы создадим первые две таблицы на вкладке схемы, а затем продолжим работу с диаграммой EER.

При нажатии на значок Добавить таблицу редактор таблиц открывается в виде вкладки ниже:

Используя редактор таблиц, мы меняем имя таблицы и переключаемся на вкладку столбцов (во вкладках под редактором), чтобы ввести наши столбцы.Мы можем выбрать тип данных (есть раскрывающийся список со всеми типами данных MySQL), при необходимости назначить значение по умолчанию, и у нас есть семь флажков для отметки любого из следующих свойств:

  • ПК — первичный ключ
  • NN — не нуль
  • UQ — уникальный
  • БИН — Двоичный
  • ООН — без знака
  • ZF — нулевое заполнение
  • ИИ — автоинкремент

Визуал

Это один из способов добавления наших таблиц, хотя мы также можем создавать их с помощью диаграмм.Если мы щелкнем значок Добавить диаграмму сейчас, мы начнем новую пустую диаграмму, а это не то, что нам нужно. Мы хотим, чтобы две таблицы, которые мы только что создали, были на диаграмме.

Если мы перейдем в меню, выберите Модель/Создать диаграмму из объектов каталога , теперь у нас есть наша диаграмма, и мы готовы продолжить.

Выберите значок таблицы слева; указатель меняется на руку с столиком. Затем щелкните в любом месте холста, чтобы создать новую таблицу.

Теперь вам просто нужно дважды щелкнуть таблицу, и появится вкладка редактора для редактирования имени, столбцов, типов и т. д.- так же, как и раньше.

После ввода сведений о столбцах для новых таблиц мы будем готовы начать рисовать отношения.

Взаимосвязи чертежей

На вертикальной панели инструментов слева у нас есть шесть инструментов для создания взаимосвязей.

Не беспокойтесь о последнем, мы объясним его позже. Для отношений 1:1 и 1:n у нас есть два разных типа символов: идентифицирующие и неидентифицирующие. Что это значит?

Связь считается идентифицирующей, когда существование одной таблицы полностью зависит от другой.

Связь считается идентифицирующей, когда существование одной таблицы полностью зависит от другой. Строка в этой таблице зависит от строки в другой таблице. Типичным примером является наличие отдельной таблицы для хранения телефонов пользователей. Возможно, необходимо иметь его в другой таблице, потому что у одного пользователя может быть несколько телефонов, но каждая строка в этой таблице полностью зависит от пользователя — она ​​ принадлежит пользователю.

Вы должны знать, что отношения имеют некоторые последствия.Если мы хотим создать физические таблицы в MySQL, отношения должны быть каким-то образом сопоставлены. Есть несколько правил для отображения отношений в таблицы:

  • Отношения 1:1 . Первичный ключ для одной из таблиц включен в качестве внешнего ключа в другую таблицу.
  • Связь 1:n . Первичный ключ таблицы на стороне «1» добавляется как внешний ключ в таблицу на стороне «n».
  • отношения н:м . Создается новая таблица (таблица соединений).Первичный ключ состоит из первичных ключей двух исходных таблиц.

Идентифицирующие отношения обычно используются для таблиц соединения, созданных на основе отношения «многие ко многим». Эти новые таблицы полностью зависят от двух исходных таблиц.

Кроме того, в случае отношений идентификации 1:1 и 1:n введенный внешний ключ будет частью первичного ключа для этой таблицы, образуя составной первичный ключ.

Хорошая новость заключается в том, что MySQL Workbench знает эти правила лучше, чем большинство из нас.Мы просто рисуем наши линии, и внешние ключи или таблицы соединений будут созданы автоматически. Мы также можем сделать это вручную, как мы вскоре увидим.

Чтобы нарисовать связь, щелкните значок, а затем щелкните две таблицы, которые необходимо связать. Для отношений «один ко многим» сначала щелкните боковую таблицу «многие», а затем боковую таблицу «один». Давайте посмотрим, как это сделать для отношений n:m учителя-предметы и для 1:n учителей-классов.

Имя по умолчанию, назначенное внешним ключам и таблицам соединения, можно изменить глобально на вкладке Edit/Preferences/Model или только для текущего проекта в Model/Model Options .

Если мы не хотим, чтобы таблицы и внешние ключи генерировались таким образом, мы можем использовать загадочный «шестой символ».

«Шестой символ» создает связь с использованием существующих столбцов, что означает, что вы уже включили необходимые внешние ключи в свои таблицы и создали необходимые таблицы соединения (таблицы сопоставления n:m). Поскольку мы уже создали эти таблицы соединений, нам не нужны отношения n:m; доступен только 1:n.

Когда мы определили все отношения, наша диаграмма должна выглядеть так:

Имейте в виду, что мы использовали нотацию MySQL Workbench по умолчанию для диаграмм, но вы можете изменить ее в нотации Model/Object и Notation Model/Relationship.Это пример нашей модели в классических обозначениях:

.

На данный момент наша модель готова, и мы можем сгенерировать SQL для создания базы данных MySQL.

Генерация SQL

Выберите File/Export/Forward Engineer SQL CREATE Script . Мы находимся всего в трех экранах мастера от создания нашего файла!

У нас даже есть возможность просмотреть и отредактировать сгенерированный SQL перед его сохранением:

Вот и все. Нажав «Готово», сценарий SQL будет сгенерирован и сохранен.Теперь мы можем использовать его как угодно. Мы можем загрузить его с помощью клиента mysql из командной строки:

.

mysql> ИСТОЧНИК scriptName.sql

Или мы можем использовать MySQL Workbench, чтобы закончить работу, подключившись к нашему серверу MySQL и запустив скрипт.

Подключение к серверу MySQL

Выберите База данных/Управление соединениями в меню и нажмите NEW .

Если вы не хотите устанавливать пароль здесь, вам будет предложено ввести его при необходимости.Нажмите «Проверить соединение», чтобы проверить правильность ваших параметров, а затем нажмите «Закрыть».

Теперь для загрузки скрипта воспользуемся редактором SQL. В главном меню выберите База данных/Запрос базы данных ; появится окно с предложением выбрать соединение, а затем откроется вкладка редактора SQL.

Теперь щелкните значок молнии, чтобы выполнить скрипт SQL, и ваша база данных будет сгенерирована!

Мы также могли бы сгенерировать базу данных MySQL непосредственно из модели, без ссылки на фактический файл, используя Database/Forward Engineer из меню; однако я считаю полезным создать сценарий, а затем использовать его по своему усмотрению.

Заключение

MySQL Workbench — впечатляющий инструмент. Мы рассмотрели только несколько основных возможностей в части моделирования данных и только взглянули на редактор SQL во второй половине этого руководства. Мы научились визуально создавать базу данных и рисовать диаграммы, которые можно сохранить в качестве документации. Вы можете экспортировать диаграммы в виде файлов PNG, SVg, PDF или PostScript. Спасибо за чтение, и дайте мне знать, что вы думаете!

Полное руководство по инструменту RDBMS

Моделирование и проектирование

Моделирование — это отличный способ визуализации требований и создания высокопроизводительных баз данных, способных соответствовать постоянно меняющимся требованиям к данным.MySQL Workbench позволяет создавать модели и манипулировать ими, реконструировать действующую базу данных в модель, а также создавать и редактировать таблицы и вставлять данные.

Вы можете преобразовать диаграммы ER в операторы SQL и отправить их на сервер SQL. Вы также можете создавать модели из целевой базы данных или даже из импортированных файлов SQL.

Средство разработки SQL

MySQL Workbench позволяет создавать, управлять и настраивать подключения и параметры подключения к серверам баз данных MySQL.Он также позволяет выполнять SQL-запросы для этих подключений с помощью встроенного редактора.

Визуальный редактор SQL позволяет создавать, редактировать и выполнять запросы. Он имеет автозаполнение и цветную подсветку, которые помогают легко писать и отлаживать операторы SQL.

Визуальное исполнение

MySQL Workbench предлагает различные инструменты, которые позволяют просматривать и улучшать производительность. Панель мониторинга производительности позволяет быстро просмотреть различные показатели производительности. Отчеты о производительности позволяют анализировать производительность ваших баз данных.

Миграция базы данных

MySQL Workbench упрощает процесс миграции. Он позволяет вам мигрировать с Microsoft SQL Server, SQLite, Microsoft Access и многих других. Он также позволяет настраивать, планировать, редактировать и выполнять проекты миграции.

Управление соединением

MySQL Workbench позволяет создавать, управлять и организовывать подключения к базе данных.
Управление объектами
Браузер объектов MySQL Workbench позволяет визуально выбирать таблицы и столбцы.Вы можете легко перемещаться между схемами, выбирать таблицы и поля, создавать новые или удалять их.

Управление пользователями

MySQL Workbench значительно упрощает управление пользователями. Вы можете легко:

  • Просмотр информации об учетных записях всех пользователей на сервере MySQL
  • Добавление и удаление пользователей
  • Предоставление и отзыв привилегий
  • Изменить глобальные разрешения и разрешения базы данных
  • Изменить пароли
  • Аудит, чтобы узнать, кто что сделал и когда

Конфигурация сервера

MySQL Workbench позволяет настраивать серверы MySQL, позволяя просматривать и редактировать расширенные параметры.Вы также можете просматривать журналы сервера, чтобы быстрее выявлять проблемы и отслеживать изменения в базе данных. Вы можете указать имя хоста MySQL, чтобы указать, где разместить базу данных MySQL.

Экспорт и импорт

MySQL Workbench позволяет легко экспортировать или импортировать данные, выбирая схемы или таблицы базы данных в обозревателе объектов.