Mysql workbench как создать базу данных
Перейти к содержимому

Mysql workbench как создать базу данных

  • автор:

Mysql workbench как создать базу данных

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

MySQL Workbench CE

Нам откроется следующее окно, где мы можем увидеть поле с названием запущенного локально экземпляра MySQL:

Local Instance MySQL

Нажмем на него, и нам отобразится окно для ввода пароля:

Ввод пароля в MySQL Workbench CE

Здесь надо ввести пароль, который был установлен для пользователя root при установке MySQL.

После успешного логина нам откроется содержимое сервера:

Базы данных в MySQL Workbench CE

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

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

Создание скрипта в MySQL Workbench CE

После этого в центральной части программы откроется окно для ввода скрипта SQL. Введем в него следующую команду:

CREATE DATABASE usersdb;

Данная команда создает базу данных usersdb.

Для выполнения скрипта в панели инструментов нажмем на значок молнии:

Выполнение скрипта в MySQL Workbench CE

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

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

USE usersdb; CREATE TABLE users ( id INTEGER AUTO_INCREMENT PRIMARY KEY, firstname VARCHAR(30), age INTEGER ); INSERT INTO users (firstname, age) VALUES ('Tom', 34);

Все команды отделяются друг от друга точкой с запятой. Первая комнда — USE устанавливает в качестве используемой базу данных usersdb, которая была создана выше. Вторая команда — CREATE TABLE создает в бд таблицу users, в которой будет три столбца: id, firstname и age. Третья команда — INSERT INTO добавляет в таблицу users одну строку. Для выполнения этих команд также нажмем на значок молнии.

Создание таблицы и добавление данных в MySQL Workbench CE

И в конце получим все данные из таблицы users с помощью следующих команд:

USE usersdb; SELECT * FROM users;

Получение данных из БД в MySQL Workbench CE

Таким образом, мы можем осуществлять запросы к БД в программе MySQL Workbench CE.

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

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

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

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

Пример схемы данных MySQL Workbench

Должен сказать, что программа действительно великолепная. Она позволяет быстро и с удовольствием накидывать схемы данных проекта, проектировать сущности и связи между ними, безболезненно внедрять изменения в схему и так же быстро и безболезненно синхронизировать её с удалённым сервером. А графический редактор 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 Workbench

В верхней части экрана находится список подключений к 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»:

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

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

EER диаграмма в MySQL Workbench

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

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

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

Импорт схемы данной из SQL файла

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

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

Работа в приложении MySQL Workbench

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

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

• настройки для подключения к удаленной базе данных;

• изменения пути сохранения базы данных — «по умолчанию» сохраняется на диск «C»;

• просмотра статистики базы данных;

Если база данных была установлена согласно инструкциям в предыдущем разделе, то MySQL Workbench был установлен вместе с MySQL, в противном случае ее можно скачать по этой ссылке: http://dev.mysql.com/downloads/workbench/

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

mysqlworkbench

Введите пароль пользователя root (который был введен при настройке MySQL):

mysqlworkbenchpassword

После подключения к серверу MySQL мы увидим стартовую страницу, которая содержит:

• Administration — настройки сервера MySQL.

• Schemas (Database area) — здесь отображается список созданных баз данных. Также при первом включении здесь могут отображаться тестовые базы данных — их можно удалить, щелкнув по названию базы с помощью правой клавишью мыши и выбрав «Drop Schema» во всплывающем меню.

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

Вам необходимо создать базу данных вручную:

Откройте закладку «Schemas». Нажмите иконку «Create a new schema in the connected server»:

createdatabase

Введите «Name» имя схемы и нажмите Apply:

createnameofdatabase

Появится окно «Apply SQL script to Database» . Нажмите Apply:

sqlscripttodatabase2

Затем нажмите «Finish»:

lastcreatedatabase

Установка часового пояса сервера

Если при первом запуске TeslaSCADA2 IDE или TeslaSCADA2 Runtime появляется сообщение об ошибке, подобное этому:

timezoneerror

Вы можете исправить это двумя способами:

1 . Установить глобально с помощью запроса SQL (это временное решение, после перезапуска сервера MySQL проблема вернется).

Для этого вам необходимо настроить часовой пояс для своего сервера My SQL, чтобы сделать это, откройте MySQL Workbench и щелкните значок «Create a new SQL tab for executing queries»:

workbenchtimezone

Введите: SET GLOBAL time_zone = ‘+3:00’, где вместо ‘+3:00’, Вам необходимо ввести ваш часовой пояс. И затем нажать иконку «Execute. «:

executetimzone

Теперь Вы можете снова попробовать Запустить проект TeslaSCADA2 в TeslaSCADA2 IDE или в TeslaSCADA2 Runtime.

2 . Изменить файл my.ini (Windows) или файл my.inf (Linux).

2.1 Найдите файл my.ini или my.inf. Это файл инициализации для сервера MySQL. Обычно он помещается в C:/ProgramData/MySQL/MySQL Server 8.0/:

myinifilepath

2.2. Откройте файл my.ini и добавьте эту строку: default-time-zone=’+03:00′, где вместо ‘+3: 00’, нужно указать свой часовой пояс.

2.3. Сохраните файл (Ваш текущий пользователь должен иметь доступ к этой папке).

2.4. Перезагрузите сервер MySQL.

Теперь Вы можете снова попробовать запустить проект TeslaSCADA2 в TeslaSCADA2 IDE или в TeslaSCADA2 Runtime.

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

mysqlusersettings

1. Выберите пункт «Users and Privileges».

2. Выберите пользователя «root».

3. В поле «Limit to Hosts Matching» введите «%».

4. Сохраните настройки нажав кнопку «Apply».

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

Изменение пути сохранения базы данных

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

• остановить службу MySQL через службы Windows;

• переместить весь каталог «данных» из текущего местоположения (по умолчанию «C: \ ProgramData \ MySQL \ MySQL Server 5.x \ data») в новый (вырезать — вставить).

Далее вам необходимо запустить MySQL Workbench «as administrator» и изменить параметр «datadir» на новое расположение директории «data»:

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

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

Эта инструкция — часть курса «MySQL для новичков».

Смотреть весь курс

Введение

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

Подготовка

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

Мы будем работать с сервером, развернутым на виртуальной машине Selectel.

Так как это удаленный сервер, нам понадобится его внешний IP-адрес. В этих примерах мы будем использовать адрес 82.202.199.34.

Подключение к серверу и создание новой базы

Все операции будем показывать на двух примерах: консольный клиент и phpMyAdmin. Если у вас другой инструмент для подключения к серверу, почитайте его документацию или используйте SQL-команды, которые мы будем выполнять при работе через консольный клиент. Они универсальны и подойдут для любого инструмента.

Через консоль

Подключимся к удаленному серверу MySQL:

mysql -u root -h 82.202.199.34 -p 

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

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

show databases; 
+--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | sys | | test | +--------------------+ 

Это все служебные базы. Мы не будем их трогать, а создадим свою БД. Для этого выполним команду для создания новой базы данных MySQL:

CREATE DATABASE my_db_cli; 

Снова посмотрим список всех баз:

show databases; 

Видим, что наша БД появилась в списке:

+--------------------+ | Database | +--------------------+ | information_schema | | my_db_cli | | mysql | | performance_schema | | sys | | test | +--------------------+ 

Через phpMyAdmin

Чтобы указать сервер для подключения, нужно отредактировать файл config.inc.php. В зависимости от вашей ОС или дистрибутива Linux, этот файл может находиться в разных директориях, поэтому мы не будем указывать конкретный путь. Откройте файл и добавьте в него строчку:

$cfg['Servers'][$i]['host'] = '82.202.199.34'; 

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

Создадим еще одну базу. Для этого над списком БД нажмите кнопку «Создать БД».

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

utf8mb4_unicode_ci. 

База данных создана, и теперь она появилась в списке слева:

Настройка и проверка доступа к базе данных

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

Через консоль

Создадим нового пользователя:

CREATE USER 'user_cli'@'%' IDENTIFIED BY 'password'; 

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

GRANT ALL PRIVILEGES ON my_db_cli.* TO 'user_cli'@'%' WITH GRANT OPTION; 

Через phpMyAdmin

Теперь сделаем то же самое через phpMyAdmin. Переходим на вкладку «Учетные записи пользователей» и в нижней части экрана нажимаем «Добавить учетную запись пользователя».

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

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

На следующем экране нужно указать привилегии. Мы хотим дать полный доступ к базе, поэтому выберем пункт «Отметить все».

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

Подключаемся к серверу:

mysql -u user_cli -h 82.202.199.34 -p 

Попробуем выбрать БД, к которой нет доступа:

use my_db_gui; 
ERROR 1044 (42000): Access denied for user 'user_cli'@'%' to database 'my_db_gui' 

Теперь выберем базу, к которой есть доступ и попробуем создать в ней таблицу:

use my_db_cli; create table t(id int); 

Ошибок не возникло, значит полномочия настроены правильно.

Удаление базы данных

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

Через консоль

drop database my_db_cli; 

Через phpMyAdmin

Выбираем нужную БД, переходим на вкладку «Операции» и нажимаем «Удалить базу данных».

Заключение

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

Как установить и настроить MySQL в Ubuntu 20.04

Типы данных в MySQL

Зарегистрируйтесь в панели управления

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

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

Инструкция

Как создать 100 серверов в облаке за минуту? Работа с OpenStack клиентом

Инструкция

Как создать веб-приложение на базе Telegram Mini Apps

Инструкция

Что делает команда chmod и как ее использовать в Linux

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *