Разворот тестовой локальной базы данных и инструменты для работы с ней #
Подготовка #
Перед тем, как начать разворот тестовой локальной БД убедитесь, что у Вас установлены:
Поднятие контейнера с mySQL #
Для начала работы необходимо загрузить последнюю версию образа MySQL Community Edition:
docker pull mysql/mysql-server:latest
latest - это тег, указывающий, какую версию образа необходимо установить. С полным списком тегов можно ознакомиться здесь.
Просмотреть загруженные образы Docker можно с помощью команды:
docker images
Далее необходимо запустить новый контейнер Docker для сервера mySQL:
docker run --name mysql -e MYSQL_ROOT_PASSWORD=passw -e LANG=C.UTF-8 -p 3306:3306 -d mysql/mysql-server:latest
В данной команде используются следующие параметры:
–name - для присвоения пользовательского имени;
-e (–env) - для того, чтобы задать переменные окружения;
-p (–port) - для публикации портов (публикация портов означает отображение контейнерных портов на порты хост-компьютера, чтобы эти порты были доступны для служб за пределами Docker;
-d (–detach) - для запуска контейнера автономно.
Просмотреть запущенные контейнеры Docker можно с помощью команды:
docker ps
Создание пользователя базы данных #
В первую очередь необходимо запустить клиент mySQL внутри контейнера Docker:
docker exec -it mysql mysql -uroot -ppassw
winpty docker exec -it mysql mysql -uroot -ppassw
В данной команде используются следующие параметры:
-it <имя_контейнера> - для того, чтобы указать docker оставить стандартный вход подключенным к терминалу и назначить псевдо-TTY;
-uroot (–user) - для передачи имени пользователя;
-ppassw (–password) - для передачи пароля.
Затем добавить нового пользователя в mySQL и назначить ему привилегии:
CREATE USER 'dba'@'localhost' IDENTIFIED BY 'dbaPass';
GRANT ALL PRIVILEGES ON *.* TO 'dba'@'localhost' WITH GRANT OPTION;
CREATE USER 'dba'@'%' IDENTIFIED BY 'dbaPass';
GRANT ALL PRIVILEGES ON *.* TO 'dba'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
exit
Создание подключения в DBeaver #
Для создания в DBeaver нового подключения необходимо нажать на кнопку “Новое соединение”, в открывшемся окне выбрать необходимый тип соединения (в данном случае mySQL).
На вкладке “Главное” заполнить следующие параметры:
- Сервер: localhost
- Порт: 3306
- База данных: mysql
- Пользователь: dba
- Пароль: dbaPass
На вкладке “Свойства драйвера” указать значения:
- allowPublicKeyRetrieval TRUE
- useSSL FALSE
Работа с базами данных #
В DBeaver работа с базами данных осуществляется с помощью инструмента “Редактор SQL”. Для выполнения запроса к БД необходимо создать новый скрипт, написать запрос и запустить скрипт с помощью кнопки “Выполнить SQL скрипт”, либо сочетанием клавиш Alt + X.
Результат выполнения запроса отображается в нижней части экрана. Если во время выполнения запроса произошла ошибка, она отобразится в модальном окне.
Основные запросы #
Для создания новой базы данных:
CREATE DATABASE test_bd;
Для удаления базы данных:
DROP DATABASE test_bd;
Для переключения между базами данных:
USE DATABASE test_bd;
Для добавления таблицы в существующую базу данных:
CREATE TABLE Customers
(
Id INT,
Age INT,
FirstName VARCHAR(100),
LastName VARCHAR(100)
);
Для удаления таблицы:
DROP TABLE Customers;
Где посмотреть про остальные запросы mySQL? #
Если необходимо узнать, что еще умеет mySQL и как правильно формировать запросы, можно послушаться кнопку ниже и почитать руководство.