Найти в Дзене

Установка и настройка сервера MySQL на Ubuntu Server

Установить пакет mysql-server, выполнив команды: sudo apt update sudo apt install mysql-server Проверить, что сервер установился и запущен, можно командой: sudo systemctl status mysql.service Вывод будет примерно следующим: ● mysql.service - MySQL Community Server Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled) Active: active (running) since Tue 2021-10-19 06:52:45 UTC; 37s ago Main PID: 16562 (mysqld) Status: "Server is operational" Tasks: 38 (limit: 9447) Memory: 353.8M CGroup: /system.slice/mysql.service └─16562 /usr/sbin/mysqld окт 19 06:52:43 server systemd[1]: Starting MySQL Community Server... окт 19 06:52:45 server systemd[1]: Started MySQL Community Server. Запустить скрипт настройки безопасности командой: sudo mysql_secure_installation В показываемых скриптом диалогах необходимо настроить удобные параметры. Для использования пароля для подключения к MySQL в качестве root пользователя необходимо изменить метод аутентификации с auth_socket н

Установить пакет mysql-server, выполнив команды:

sudo apt update
sudo apt install mysql-server

Проверить, что сервер установился и запущен, можно командой:

sudo systemctl status mysql.service

Вывод будет примерно следующим:

● mysql.service - MySQL Community Server
Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2021-10-19 06:52:45 UTC; 37s ago
Main PID: 16562 (mysqld)
Status: "Server is operational"
Tasks: 38 (limit: 9447)
Memory: 353.8M
CGroup: /system.slice/mysql.service
└─16562 /usr/sbin/mysqld
окт 19 06:52:43 server systemd[1]: Starting MySQL Community Server...
окт 19 06:52:45 server systemd[1]: Started MySQL Community Server.

Запустить скрипт настройки безопасности командой:

sudo mysql_secure_installation

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

Для использования пароля для подключения к MySQL в качестве root пользователя необходимо изменить метод аутентификации с auth_socket на mysql_native_password. Для этого необходимо запустить командную строку MySQL сервера командой в терминале:

sudo mysql

Проверить метод аутентификации, используемый аккаунтами пользователей MySQL с помощью команды:

SELECT user,host,plugin FROM mysql.user;

Вывод будет приблизительно в таком виде:

+------------------+-----------+-----------------------+
| user | host | plugin |
+------------------+-----------+-----------------------+
| debian-sys-maint | localhost | caching_sha2_password |
| mysql.infoschema | localhost | caching_sha2_password |
| mysql.session | localhost | caching_sha2_password |
| mysql.sys | localhost | caching_sha2_password |
| root | localhost | auth_socket |
+------------------+-----------+-----------------------+

Если пользователь root хоста localhost аутентифицируется методом auth_socket, то поменять метод следующей командой, в которой password заменить на новый пароль root:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

Для применения изменений выполнить команду:

FLUSH PRIVILEGES;

Проверить изменения метода аутентификации, повторив команду:

SELECT user,host,plugin FROM mysql.user;

Вывод станет похожим на:

+------------------+-----------------------+-----------+
| user | plugin | host |
+------------------+-----------------------+-----------+
| debian-sys-maint | caching_sha2_password | localhost |
| mysql.infoschema | caching_sha2_password | localhost |
| mysql.session | caching_sha2_password | localhost |
| mysql.sys | caching_sha2_password | localhost |
| root | mysql_native_password | localhost |
+------------------+-----------------------+-----------+

Выйти из оболочки MySQL командой:

exit

Теперь, чтобы зайти в MySQL пользователем root, необходимо указывать пользователя и пароль:

mysql -u root -p

Проверить, что сервер настроился и запущен, повторив команду:

sudo systemctl status mysql.service

Если сервер не запущен, ввести команду:

sudo systemctl start mysql

#mysql #ubuntuserver