Краткое руководство. подключение к базе данных azure для mysql и запрос данных с помощью mysql workbenchquickstart: use mysql workbench to connect and query data in azure database for mysql
Содержание:
- Предварительные требованияPrerequisites
- Возможности
- Создание таблицы, добавление, считывание, обновление и удаление данныхCreate a table, insert data, read data, update data, delete data
- Получение сведений о подключенииGet connection information
- Install MySQL workbench Guide(for Windows)
- Что такое MySQL. Установка сервера
- Summary
- Изменение данных в WorkBench
- Нормализация базы данных
- Практика
- Getting Started MySQL workbench- Modeling and Design tool
- MySQL workbench — Administration tool
- Подключения
- Редактор SQL-запросов
- MySQL workbench — SQL development tool
- Экспорт/Импорт дампа из WorkBench
- Возможности программы
- Модели БД
Предварительные требованияPrerequisites
В качестве отправной точки в этом кратком руководстве используются ресурсы, созданные в соответствии со следующими материалами:This quickstart uses the resources created in either of these guides as a starting point:
- Create an Azure Database for MySQL server using Azure portal (Создание базы данных Azure для сервера MySQL с помощью портала Azure)Create an Azure Database for MySQL server using Azure portal
- Краткое руководство. Создание сервера базы данных Azure для MySQL с помощью Azure CLICreate an Azure Database for MySQL server using Azure CLI
Важно!
Убедитесь, что IP-адрес, с которого вы подключаетесь, добавлен в правила брандмауэра на сервере через портал Azure или Azure CLI.Ensure the IP address you’re connecting from has been added the server’s firewall rules using the Azure portal or Azure CLI
Возможности
Первое, что стоит отметить — Workbench дает возможность визуально проектировать вашу базу данных, т.е. составлять схему БД. Визуальное представление вашей базы данных всегда дает куда большую информацию, чем сухой список таблиц. В таком варианте вы сразу видите, каким образом связаны между собой таблицы, можете группировать таблицы по каким-либо параметрами и отражать это на схеме. При этом визуальное проектирование удобно не только для того, чтобы кому-то рассказывать о проектируемой БД, но и для личного использования.
Во-вторых, программа имеет встроенный редактор SQL-кода, с помощью которого можно быстро внести любые правки в SQL-запросы. При этом возможно строить запросы любой сложности, получать различные выборки из таблиц, связывать их, создавать новые таблицы и редактировать существующие, работать с ключами, полями, связями. Одним словом — полноценный SQL-редактор.
В-третьих, MySQL Workbench позволяет осуществлять синхронизацию локальной схемы БД с реальной базой на вашем локальном или рабочем сервере. Благодаря этому после проектирования не требуется вручную создавать таблицы в базе на вашем сервере, достаточно сделать несколько простых действий в программе, после чего на рабочем сервере будет создана полноценная база данных со всеми указанными связями и параметрами.
Создание таблицы, добавление, считывание, обновление и удаление данныхCreate a table, insert data, read data, update data, delete data
Скопируйте и вставьте пример кода SQL в пустую вкладку SQL для иллюстрации примера данных.Copy and paste the sample SQL code into a blank SQL tab to illustrate some sample data.
Этот код создает пустую базу данных с именем quickstartdb, а затем создает пример таблицы с именем inventory.This code creates an empty database named quickstartdb, and then creates a sample table named inventory. Он добавляет несколько строк, а затем считывает эти строки.It inserts some rows, then reads the rows. Он изменяет данные с помощью инструкции update, а затем еще раз считывает строки.It changes the data with an update statement, and reads the rows again
Наконец он удаляет одну строку и еще раз считывает строки.Finally it deletes a row, and then reads the rows again.
На снимке экрана показан пример кода SQL в SQL Workbench и выходные данные после его выполнения.The screenshot shows an example of the SQL code in SQL Workbench and the output after it has been run.
Чтобы выполнить пример кода SQL, щелкните значок молнии на панели инструментов вкладки SQL File (Файл SQL).To run the sample SQL Code, click the lightening bolt icon in the toolbar of the SQL File tab.
Обратите внимание на три вкладки с результатами, которые отображаются в разделе Сетка результатов посередине страницы.Notice the three tabbed results in the Result Grid section in the middle of the page.
Обратите внимание на список Output (Выходные данные) внизу страницы.Notice the Output list at the bottom of the page. Показано состояние каждой команды.The status of each command is shown.
Вы подключились к базе данных Azure для MySQL с помощью MySQL Workbench и запросили данные с помощью языка SQL.Now, you have connected to Azure Database for MySQL by using MySQL Workbench, and you have queried data using the SQL language.
Получение сведений о подключенииGet connection information
Получите сведения о подключении, необходимые для подключения к базе данных Azure.для MySQL.Get the connection information needed to connect to the Azure Database for MySQL. Вам потребуется полное имя сервера и учетные данные для входа.You need the fully qualified server name and login credentials.
-
Войдите на портал Azure.Log in to the Azure portal.
-
В меню слева на портале Azure щелкните Все ресурсы и выполните поиск по имени созданного сервера (например, mydemoserver).From the left-hand menu in Azure portal, click All resources, and then search for the server you have created (such as mydemoserver).
-
Щелкните имя сервера.Click the server name.
-
Запишите имя сервера и имя для входа администратора сервера с панели сервера Обзор.From the server’s Overview panel, make a note of the Server name and Server admin login name. Если вы забыли свой пароль, можно также сбросить пароль с помощью этой панели.If you forget your password, you can also reset the password from this panel.
Install MySQL workbench Guide(for Windows)
This is a 2 step process
1) Install MySQL Community Server
2) Install MySQL workbench. — You can install the workbench using a zip file or an msi installer (recommended)
Note: You will require Administrator or Power User Privileges to perform installation.
Getting Started
Once you have finished installing above you need to set up MySQL Workbench as shown below —
1. First step is launching the Workbench MySQL . What you see is called Home Window
2. Next you need to create your MySQL Server Connection which contains details about target database server including how to connect to it. Click » + » in MySQL Workbench Home Window. This will open Setup New Connection . Wizard
3. As a beginner you can create a connection for a locally installed server. Click Configure Server Management button in Setup New Connection window to check the cofiguration of the MySQL server.
4. A new window opens named Configure Local Management . Click Next button to continue.
5. Next the Wizard will test connections to database. If test fails, go back and correct database connection parameters.5. Next it will open a pop up window asking your root password to test your connection with the local mysql server instance. The password is the one you set during installation of MySQL Workbench. Enter your password and press OK
6. Next the Wizard will test connections to database. If test fails, go back and correct database connection parameters. Else if all tests are sucessful click Next to continue.
7. After that a new wizard will open about Local Service Management — It lets you switch between multiple mysql severs installed on one machines. As a beginner you can bypass this and click Next to continue.
8. The Wizard will then check ability to access MySQL Server Configuration File, and test start/stop commands.
9. Next you can review current configurations. After reviewing the configurations, Click Finish to finsh server cofiguration
10. Next Step is to setup a connection, which can be used to connect to server. If you have not created a connection already, you can use the default values given. Click on Test Connection after entering the Connection Name .
11. A new dialog box will open asking you password to root/selected user. If your MySQL root user has a password, you can enter that using Store in Vault feature. Click OK.
If the entered password for the user is correct then the following screen will show. Click on both OK buttons and you will be good to go.
A new instance is shown in the homepage
Double click and start querying.
Что такое MySQL. Установка сервера
Последнее обновление: 04.05.2018
MySQL представляет систему управления реляционными базами данных (СУБД). На сегодняшний день это одна из самых популярных систем управления базами данных.
Изначальным разработчиком данной СУБД была шведская компания MySQL AB. В 1995 году она выпустила первый релиз MySQL.
В 2008 году компания MySQL AB была куплена компание Sun Microsystems, а в 2010 году уже компания Oracle поглотила Sun и тем самым приобрела права
на торговую марку MySQL. Поэтому MySQL на сеголняшней день развивается под эгидой Oracle.
Текущей актуальной версией СУДБ является версия 8.0, которая вышла в январе 2018 года.
MySQL обладает кроссплатформенностью, имеются дистрибутивы под самые различные ОС, в том числе наиболее популярные версии Linux, Windows, MacOS.
Установка MySQL
После выбора версии нажмем на кнопку «Go to Download Page», и нас перенаправит на страницу загрузки дистрибутива. Здесь можно выбрать либо онлайн-загрузчик, либо полный пакет инсталятора. Можно выбрать любой:
После загрузки запустим инсталлятор. Вначале нам отобразится окно с лицензионным соглашением, которое нужно принять:
После принятия лицензионного соглашения будет предложено выбрать тип установки. Выберем тип Full и нажмем на кнопку Next:
Далее на следующем этапе может отобразится следующее окно, если какие-то дополнительные компоненты отсутствуют в системе:
В данном случае программа установки показывает, что у меня не установлен Python 2.7. Поскольку эти компоненты не важны, нажимаем Next.
Затем на этапе установки инсталлятор отобразит весь список устанавливаемых компонентов. У меня он выглядит так:
Чтобы выполнить установку всех компонентов, нажмем кнопку Execute.
После того, как все компоненты будут установлены, нажмем кнопку Next.
Далее надо будет указать тип сервера. Выберем настройку по умолчанию Standalone MySQL Server / Classic MySQL Replication
Далее будет предложено установить ряд конфигурационных настроек сервера MySQL. Оставим настройки соединения и порта по умолчанию:
На следующем шаге будет предложено установить метод аутентификации. Оставим настройки по умолчанию:
Затем на следующем окне прогаммы установки укажем какой-нибудь пароль, и запомним его, так как он потом потребуется при подключении к серверу
MySQL:
Следующее окно позволяет настроить дополнительные плагины и расширения. Начиная с версии 5.7 в MySQL доступен X Protocol, который представляет
новый способ взаимодействия с хранилищем данных. Эту опцию необязательно отмечать. В данном случае я ее отмечу:
И на следующем экране необходимо применить все ранее установленные конфигурационные настройки, нажав на кнопку Execute:
После применения конфигурационных настроек сервер MySQL будет полностью установлен и сконфигурирован, и мы сможем с ним работать.
НазадВперед
Summary
- MySQL is an open source relational database that is cross platform.
- MySQL supports multiple storage engines which greatly improve the server performance tuning and flexibility. Prior to version 5.5, the default storage engine was MyISAM which lacked support for transactions, as of version 5.5; the default storage engine is InnoDB which supports transactions and foreign keys.
- MySQL server can be administered using a number of server access mysql tools which include both commercial and open source products. Popular examples include;
- phpMyAdmin — cross platform web based open source server access tool
- SQLYog — targeted at the windows platform, desktop commercial server access tool
- MySQL workbench — cross platform open source server access tool.
- MySQL workbench is an integrated development environment for MySQL server. It has utilities for database modeling and designing, SQL development and server administration.
Изменение данных в WorkBench
Когда учился сам – не сразу понял разницу между данными в моделях и данными в LocalInstance.Для того, чтобы изменить данные в реальной БД, нужно пользоваться LocalInstance.
Вкладка Inserts в модели данных служит лишь для добавления новых записей! В LocalInstance же можно как добавлять новые записи так и изменять их. Примерно такая разница.
Добавление / Изменение данных через LocalInstance
Допустим нам нужно в ручную в 1001 строке в такой-то таблице поправить одно или несколько полей. Для этого открываем LocalInstance в WorkBench – раскрываем нашу базу данных, выбираем таблицу и нажимаем на
После чего видим следующее
Workbench сам нам составил запрос, сам показал данные, которые мы можем изменить. После изменения, чтобы они сохранились в БД, нужно нажать на Apply! Проверим это – изменим какие нибудь данные и нажмем Apply.
Как видно, WorkBench сам составит инструкцию UPDATE!
Вот какой результат у нас получается
Добавление данных через Inserts в модели данных
DataBase > ReverseEngeneering >Несколько раз Next и получаем такую вот диаграмму
Жмем на Edit
И переходим на вкладку Inserts
Далее, добавляем любые данные, согласно типам наших полей и жмем на зеленую галочку
Далее
После чего, делаем DataBase > Forward Engeneering и также, жмем несколько раз Next, единственное, что на странице выбора опций, нужно выбрать
Далее, выполняем скрипт и возвращаемся на LocalInstance
Всё! Данные в физической таблице!
Нормализация базы данных
В книге Д.Осипова говорится о 5 нормальных формах, для практической работы, на мой взгляд, достаточно четырех
1NF – атомарность или 1 поле 1 значение.
2NF – каждой таблице свой уникальный ключ.
3NF – 1 сущность 1 таблица (моя интерпретация)
4NF – каждую связь M:N (многие ко многим) разбить на многие к одному.
В своей книге Дмитрий приводит такой пример, берет вот такую таблицу и последовательно приводит её к 4 нормальной форме.
Как видно таблица – “плохая” в качестве БД, в одном поле несколько значений, уникального ключа нет, да и вообще все данные, все сущности в одной таблице, есть связи многие ко многим (авторы и жанры, и так далее). В общем, ни одной нормальной формы не соблюдено.
Повторим за Дмитрием вкратце его шаги
Приведение к 1NF – одно поле одно значение
Приведение ко 2NF – прописывание уникального ключа таблице. На рисунке ниже указаны ключ и поля таблицы.
Приведение к 3NF – разбиение на отдельные, независимые таблицы. Как видно из рисунка выше – все поля у нас в одной таблице, какие-то поля являются атрибутами для других, если смотреть при помощи модели Питера Чена. С точки зрения пользователя БД это очень, очень неудобно. На 3 шаге сделаем следующее – разобьем 1 большую таблицу на несколько таблиц, соответствующих сущностям и свяжем их. Атрибуты сгруппируем по сущностям. Каждой таблице пропишем свой уникальный ключ. В результате, по книге Дмитрия Осипова, у нас получится следующее.
4NF – разбить каждую зависимость многие ко многим на 2 зависимости 1 ко многим. Это можно сделать введя искусственную коммутационную таблицу.
В нашем случае
-1 автор может написать несколько книг. И также можно сказать – несколько авторов могли написать 1 книгу. Поэтому вводим тип сущности WRITERS_BOOKS
-В 1 жанре может быть несколько книг. 1 книга может быть написана в нескольких жанрах. Вводим GENRES_BOOKS
В принципе этот ряд можно было бы и продолжить
-1 поставщик может иметь несколько контрактов. В 1 контракте может быть несколько поставщиков. Но тут наверное всё зависит от реальной задачи и ситуации. Нельзя угодить на все случаи жизни. А, конечно хочется)))
Но остановимся на том, что написано в книге Дмитрия. Для понимания, думаю, этого достаточно.
Как разбить связь многие ко многие (M:N) на 2 связи один ко многим (1:M) ?
Пример из жизни – разные сотрудники выполняют разные заказы. Дмитрий в своей книге делает вот так, что вполне логично.
Практика
Итак, попробуем решить ту же задачу самостоятельно, используя все накопленные знания. Для начала – поймем, что у нас на входе и что требуется получить на выходе.
На входе
В приведенном к 1NF виде
На выходе
Готовая реляционная БД MySQL, соответствующая 4 нормальным формам.
Getting Started MySQL workbench- Modeling and Design tool
- Models are at the core of most valid and high performance databases. MySQLworkbench has tools that allow developers and database administrators visually create physical database design models that can be easily translated into MySQL databases using forward engineering.
- MySQL workbench supports creation of multiple models in the same environment.
- It supports all objects such as tables, views, stored procedures, triggers, etc. that make up a database.
- MySQL workbench has a built in model validating utility that reports any issues that might be found to the data modeler.
- It also allows for different modeling notations and can be extended by using LUA a scripting language.
The figure shown below shows the modeling window for MySQLWorkbench.
MySQL workbench — Administration tool
Server administration plays a critical role in securing the data of the company. The major issues concerning server administration are users’ management, server configuration, server logs and many more. Workbench MySQL has the following features that simplify the process of MySQL server administration;
- User administration — visual utility for managing users that lets database administrators easily add new and remove existing users if need arises, grant and drop privileges and view user profiles.
- Server configuration — allows for advanced configuration of the server and fine tuning for optimal performance.
- Database backup and restorations — visual tool for exporting/importing MySQL dump files. MySQL dump files contain SQL scripts for creating databases, tables, views, stored procedures and insertion of data.
- Server logs — visual tool for viewing MySQL server logs. The logs include error logs, binary logs and InnodDB logs. These logs come in handy when performing diagnosis on the server. The figure shown below shows the modeling window for MySQL Workbench.
The figure shown below shows the Admin panel for Workbench MySQL .
Подключения
“Плитка” подключения
При наведении курсора мыши на подключение, у “плитки” отгибается уголок. Если нажать на этот “уголок”, отобразится информация о подключении: версия СУБД, дата последнего использования, адрес сервера СУБД, логин, и т.п.
Информация о подключении
В правом нижнем углу есть кнопка ‘Connect’, которая откроет данное подключение.
Подключение так же можно открыть, нажав на саму “плитку”.
Откройте первое подключение в списке.
Редактор SQL-запросов
После открытия подключения, открывается окно редактора SQL-запросов.
Окно редактора SQL-запросов
В центре мы видим окно редактирования запроса.
Обратно к домашнему экрану можно вернуться, нажав на иконку в левом верхнем углу окна.
Слева находится навигатор, отображающий основные задачи и список объектов БД.
В левом нижнем углу находится окно информации о выбранном объекте.
Справа находится окно помощи.
Внизу – окно истории запросов.
В правом верхнем углу находятся элементы управления, позволяющие скрыть или отобразить боковые панели.
MySQL workbench — SQL development tool
Structured Query Language (SQL) allows us to manipulate our relational databases. SQL is at the heart of all relational databases.
- MySQLworkbench, has built in SQL visual editor.
- The Visual SQL editor allows developers to build, edit and run queries against MySQL server databases. It has utilities for viewing data and exporting it.
- Its syntax color highlighters help developers easily write and debug SQL statements.
- Multiple queries can be run and results automatically displayed in different tabs.
- The queries are also saved in the history panel for later retrieval and running.
The figure shown below shows the SQL development window for MySQL Workbench.
Экспорт/Импорт дампа из WorkBench
Дамп это архив БД, может включать в себя только модель данных, только данные, либо модель+сами данные. Допустим мы работаем со своей базой и в определенный момент хотим зафиксировать свои результаты во внешнем файле – тогда самое то – создать дамп, архив, бэкап БД – это все слова синонимы. Просто слово дамп – специфичное для MySQL.
Экспорт дампа из WorkBench
Открываем MySQL и создаем, либо используем уже готовую instance
Открываем instance и сразу же обращаем внимание на DataExport
Далее настраиваем то, что и как нам нужно экспортировать – только данные, только модель или то и другое вместе, в какое место экспортировать и так далее… Всё интуитивно понятно.
Если переносим на другой комп, на котором нет этой БД, то обязательно Include Create Schema
Далее, экспортируем и получаем такую вот картину
В принципе всё, на рабочем столе появляется дамп
Импорт дампа в WorkBench
После этого жмем на Refresh и смотрим, что произошло с нашей базой данных
Вот в принципе и всё! Остальное – самое важное – детали, но это уже отработается на практике!
Возможности программы
- Позволяет наглядно представить модель базы данных в графическом виде.
- Наглядный, функциональный механизм установки связей между таблицами, в том числе «многие ко многим» с созданием таблицы связей.
- Reverse Engineering — восстановление структуры таблиц из уже существующей на сервере БД (связи восстанавливаются в InnoDB, при использовании MyISAM — связи необходимо устанавливать вручную).
- Удобный редактор SQL запросов, позволяющий сразу же отправлять их серверу и получать ответ в виде таблицы.
- Возможность редактирования данных в таблице в визуальном режиме.
Модели БД
Модели в БД и MySQL это описание структуры БД – набор таблиц, триггеров, процедур, функций, представлений, их взаимосвязей, всё это удобно представляется в виде диаграммы. Модель не содержит в себе данные, могу ошибаться на этот счет, но пока думаю так.
Если базы нет, и она только проектируется, то удобно создавать базу как раз из модели.
Если база есть, и её нужно скорректировать, добавить или удалить таблицы, добавить или изменить поля таблиц, то как раз удобно пользоваться моделями!
Модель выглядит примерно следующим образом
Основные операции по моделям
Создание модели
File > NewModel
Получение модели из физической БД
DataBase>ReverseEngeneer
Создание физической БД из модели
DataBase > ForwardEngeneer
Внесение изменений в физическую БД или наоборот в модель из физической БД
DataBase > Synchronize
В другой статье я расскажу чуть более подробно как работать с моделями! А здесь пока всё! Спасибо за внимание!