Установка сервера MySQL в Ubuntu с Nginx
Сейчас существует несколько версий MySQL
. Непосредственно MySQL
, разрабатываемая компанией Oracle
и свободный форк от основного разработчика MySQL
- MariaDB
. Имя MairaDB
программа получила в честь первой дочери программиста, также как и MySQL
в честь имени второй. В большинстве дистрибутивов Linux
используется MariaDB
, в том числе и в Ubuntu
. Но в этой статье давайте рассмотрим установку именно MySQL
в Ubuntu 20.04
.
Версия MySQL по умолчанию
Обновляем списки пакетов:
sudo apt update
Обновляем пакеты сервера:
sudo apt upgrade
Смотрим версию по умолчанию:
sudo apt show mysql-server
Устанавливаем необходимые пакеты по умолчанию:
sudo apt install mysql-server mysql-client
Управление сервером MySQL
Проверить установленную версию MySQL:
mysql -V
Проверить, запущенна ли служба MySQL
. Должны увидеть зеленую надпись Active, Running
и версию программы, которую устанавливали:
sudo systemctl status mysql
Запустить службу MySQL:
sudo systemctl start mysql
Остановить службу MySQL:
sudo systemctl stop mysql
Перезапустить службу MySQL:
sudo systemctl restart mysql
Удаление MySQL
Удаляем MySQL Server и MySQL Client:
sudo apt purge mysql-server mysql-client mysql-common mysql-server-core-* mysql-client-core-*
Удаляем файлы MySQL:
sudo rm -rf /etc/mysql /var/lib/mysql
Удаляем логи MySQL:
sudo rm -r /var/log/mysql
Удаление ненужных зависимостей:
sudo apt autoremove
Удаляем неиспользуемые пакеты из кэша:
sudo apt autoclean
Настройка mysql в Ubuntu
Перед тем как вы сможете полноценно использовать только что установленную базу данных, необходимо выполнить ее первоначальную настройку. Для этого был разработан специальный скрипт, выполните его:
sudo mysql_secure_installation
-- отключаем плагин проверки надежности паролей N
VALIDATE PASSWORD PLUGIN can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD plugin?
Press y|Y for Yes, any other key for No: N
-- два раза вводим пароль от root пользователя
Please set the password for root here.
-- отключаем анонимный доступа к MySQL Y
By default, a MySQL installation has an anonymous user,
allowing anyone to log into MySQL without having to have
a user account created for them. This is intended only for
testing, and to make the installation go a bit smoother.
You should remove them before moving into a production
environment.
Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y
-- запрещаем подключаться к базе от имени root удаленно Y
Normally, root should only be allowed to connect from
'localhost'. This ensures that someone cannot guess at
the root password from the network.
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y
-- удаляем тестовую базу данных Y
By default, MySQL comes with a database named 'test' that
anyone can access. This is also intended only for testing,
and should be removed before moving into a production
environment.
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y
-- обновите привилегии для пользователей Y
Reloading the privilege tables will ensure that all changes
made so far will take effect immediately.
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y
PHP + MySql
Для возможности подключаться к базе данных скриптами PHP, необходимо установить следующие модули:
apt install php-mysql php-mysqli
Перезагружаем php-fpm:
systemctl restart php7.4-fpm
После завершения настройки вы можете подключиться к пользователя root
к серверу баз данных из командной строки:
sudo mysql -u root