21.07.2025

Установка и настройка СУБД MySQL на Ubuntu

Система управления базами данных (СУБД) — это программное обеспечение, предназначенное для создания, управления и манипулирования базами данных. СУБД предоставляет интерфейс для взаимодействия с базой данных, обеспечивая создание, защиту, чтение, обновление и удаление данных. Она также управляет безопасностью, целостностью данных и параллельным доступом, что делает ее незаменимой для современных приложений, от небольших веб-сайтов до крупных корпоративных систем.

СУБД играет ключевую роль в организации данных, обеспечивая их согласованность, минимизацию избыточности и упрощение доступа. Без СУБД управление большими объемами данных было бы сложным и неэффективным, особенно в веб-приложениях, требующих быстрого доступа к данным. По данным W3Techs на июль 2025 года, реляционные СУБД, такие как MySQL, используются примерно в 43% веб-сайтов с известной базой данных.

Обзор популярных СУБД

Почему MySQL?

MySQL выбран для этого руководства благодаря своей превосходной совместимости с PHP и WordPress, простоте использования и широкой поддержке сообщества. MySQL является одной из самых популярных баз данных для веб-приложений, обеспечивая баланс между производительностью и легкостью настройки. Согласно официальным требованиям WordPress, для его работы необходима СУБД MySQL версии 5.7 или выше (или MariaDB 10.3 и выше). MySQL интегрируется с PHP через расширения, такие как mysqli или mysqlnd, что делает его идеальным выбором для WordPress, который использует MySQL для хранения контента сайта, настроек и пользовательских данных.

MySQL также поддерживается крупными компаниями, включая Google (Cloud SQL), LinkedIn и Netflix (для отдельных сервисов), что подтверждает его надежность и масштабируемость. Простота установки и наличие обширной документации делают MySQL доступным как для новичков, так и для опытных администраторов.

Предварительные требования

Перед установкой MySQL на Ubuntu убедитесь, что выполнены следующие условия:

Также рекомендуется настроить брандмауэр (например, UFW) для безопасного доступа к порту MySQL (3306). Разрешайте подключения только с доверенных IP:

sudo ufw allow from 192.168.1.100 to any port 3306/tcp

Установка MySQL на Ubuntu

Установка MySQL на Ubuntu выполняется с помощью пакетного менеджера apt, который устанавливает последнюю доступную версию MySQL из репозиториев Ubuntu. На момент июля 2025 года в Ubuntu 24.04 по умолчанию устанавливается MySQL версии 8.0.x (например, 8.0.38 или новее).

Шаги установки

1. Обновите список пакетов
Обновите индекс пакетов, чтобы убедиться, что вы устанавливаете последние версии:

sudo apt update

2. Установите MySQL сервер
Установите пакет mysql-server, который включает сервер MySQL и необходимые зависимости:

sudo apt install mysql-server

Эта команда автоматически устанавливает и запускает службу MySQL. После установки MySQL будет настроен для автозапуска при загрузке системы.

3. Проверьте версию MySQL
Убедитесь, что установка прошла успешно, проверив версию:

mysql --version

Ожидаемый вывод, например:

mysql Ver 8.0.38-2ubuntu3 for Linux on x86_64 ((Ubuntu))

4. Запустите скрипт безопасности
Для повышения безопасности выполните:

sudo mysql_secure_installation

Этот скрипт проведет вас через несколько шагов настройки:

Рекомендуется отвечать Y на все вопросы для обеспечения максимальной безопасности.

Базовая настройка

После установки MySQL можно настроить для оптимальной работы. Основной файл конфигурации находится по пути /etc/mysql/mysql.conf.d/mysqld.cnf. Этот файл содержит специфические настройки сервера.

Обзор файла конфигурации

Файл /etc/mysql/mysql.conf.d/mysqld.cnf содержит секции:

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

sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf

Пример изменения: увеличение размера буфера для InnoDB:

[mysqld]
innodb_buffer_pool_size = 256M

После внесения изменений перезапустите MySQL:

sudo systemctl restart mysql

Настройка учетных записей пользователей

В MySQL 8.0 по умолчанию используется плагин аутентификации caching_sha2_password. Для совместимости со старыми приложениями можно изменить его:

1. Войдите в оболочку MySQL:

sudo mysql

2. Создайте пользователя с совместимым методом аутентификации:

CREATE USER 'new_user'@'localhost' IDENTIFIED WITH mysql_native_password BY 'secure_password';

3. Предоставьте необходимые привилегии:

GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, ALTER ON *.* TO 'new_user'@'localhost';

4. Примените изменения:

FLUSH PRIVILEGES;

5. Выйдите:

EXIT;

Создание базы данных и пользователя для WordPress

Для работы WordPress требуется база данных и пользователь с соответствующими привилегиями. Следуйте этим шагам:

1. Войдите в оболочку MySQL
Войдите как root:

sudo mysql

2. Создайте базу данных
Создайте базу данных с именем wordpress:

CREATE DATABASE wordpress CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

3. Создайте пользователя
Создайте пользователя для WordPress:

CREATE USER 'wp_user'@'localhost' IDENTIFIED WITH mysql_native_password BY 'secure_password';

Замените secure_password на надежный пароль.

4. Предоставьте привилегии
Дайте пользователю минимально необходимые права для работы с базой wordpress:

GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES
ON wordpress.* TO 'wp_user'@'localhost';

5. Примените изменения
Обновите таблицы привилегий:

FLUSH PRIVILEGES;

6. Выйдите из оболочки

EXIT;

Тестирование подключения к базе данных

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

1. Войдите с новым пользователем
Подключитесь к MySQL с учетной записью wp_user:

mysql -u wp_user -p

Введите пароль.

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

USE wordpress;
SHOW TABLES;

Если команды выполняются без ошибок — подключение работает.

3. Выйдите из оболочки

EXIT;

Устранение проблем

Если MySQL не работает как ожидалось, используйте следующие методы диагностики:

1. Проверка статуса службы MySQL

sudo systemctl status mysql

Если служба не активна, запустите ее:

sudo systemctl start mysql

2. Просмотр логов ошибок

sudo tail -50 /var/log/mysql/error.log

3. Решение типичных проблем

Установка и настройка MySQL на Ubuntu — это простой процесс, который позволяет подготовить надежную базу данных для веб-приложений, таких как WordPress. Следуя приведенным шагам, вы можете установить MySQL, настроить базу данных и пользователя для WordPress, протестировать подключение и устранить возможные проблемы. MySQL остается популярным выбором благодаря своей совместимости с PHP, простоте использования и поддержке сообщества.

Таблица: Основные команды для установки и настройки MySQL

Команда Описание
sudo ufw allow from 192.168.1.0/24 to any port 3306 Безопасное открытие порта MySQL
sudo apt install mysql-server Установка MySQL
sudo mysql_secure_installation Настройка безопасности
CREATE USER 'user'@'localhost' IDENTIFIED WITH mysql_native_password BY 'pass' Создание пользователя (совместимый метод)
GRANT SELECT, INSERT, UPDATE, DELETE ON db.* TO 'user'@'localhost' Минимальные привилегии
sudo mysqld_safe --skip-grant-tables & Запуск в режиме восстановления
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_pass' Сброс пароля root