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

- Подготовка системы Ubuntu к установке MySQL
- Установка MySQL Server на Ubuntu
- Первоначальная настройка безопасности MySQL
- Настройка конфигурации MySQL (файл my.cnf)
- Работа с пользователями и правами доступа
- Настройка удаленного доступа к MySQL
- Основные команды администрирования и мониторинга
- Автоматическое резервное копирование (cron+mysqldump)
- Решение частых проблем при установке и настройке
- Установка графических инструментов (MySQL Workbench, phpMyAdmin)
Подготовка системы Ubuntu к установке MySQL
Перед установкой нужно обновить список доступных пакетов и удалить компоненты предыдущих установок, если они были. Рассказываем пошаговый алгоритм действий.
Обновление списка пакетов и системы
Перед установкой MySQL обновите доступные пакеты и установленные компоненты. Это нужно, чтобы СУБД получила все необходимое ПО для работы. Выполните в терминале такие команды:

Команда sudo apt update обновит список доступных пакетов из репозиториев, sudo apt upgrade — обновит версии компонентов.
Проверка наличия предыдущих установок MySQL
Проверьте, не устанавливали ли вы ранее MySQL. Если да, то старые версии могут конфликтовать с новой. Для проверки выполните команду:
Если вывод покажет наличие пакетов MySQL, удалите их вместе с конфигурационными файлами с помощью команды:
В этой команде purge удаляет пакеты и их конфигурацию, autoremove — ненужные зависимости. Затем можно вручную очистить /etc/mysql или /var/lib/mysql, если они вам не нужны.
Установка MySQL Server на Ubuntu
Сначала установите сервер базы данных (БД). Это можно сделать через репозитории Ubuntu или официальный репозиторий MySQL от Oracle. Описываем оба способа.
Установка пакета mysql-server
Можно установить MySQL Server на Ubuntu с помощью пакета mysql-server. Он содержит сервер и все компоненты для его работы. Для установки выполните в терминале команду:
На устройство загрузятся сервер, клиентская утилита и ключевые файлы СУБД. После установки служба автоматически запустится.
При установке из стандартного репозитория Ubuntu (команда выше) для пользователя root используется плагин аутентификации auth_socket. Это означает, что войти в MySQL с паролем не получится — нужно заходить командой sudo mysql. Если вы хотите установить пароль для root, выполните после установки инструкции из раздела «Настройка пароля root вручную».
На этом этапе можно также настроить автозапуск MySQL при загрузке системы.
Установка mysql-serverМожно использовать облачный сервис Relational Database Service (RDS) for MySQL от Cloud.ru. Сервис автоматизирует развертывание и администрирование реляционных баз данных, избавляя от необходимости вручную управлять инфраструктурой.
Установка последней версии MySQL из официального репозитория Oracle (опционально)
Этот способ можно использовать, если нужна конкретная версия СУБД, например, 8.0 или 8.4 LTS либо вы хотите получать от разработчиков обновления. Чтобы добавить APT-репозиторий MySQL, сначала загрузите конфигурационный пакет с официального сайта:
Выберите, какие версии вам нужны.
Когда репозиторий будет добавлен, установите сервер через apt:
В отличие от установки из стандартного репозитория Ubuntu, здесь во время установки появится диалоговое окно с запросом пароля для пользователя root. Запомните или запишите этот пароль — он понадобится для дальнейшей настройки.
Альтернатива: управляемый ClickHouse для аналитических задач
Для аналитики данных удобно использовать Evolution Managed ClickHouse® от Cloud.ru — управляемый сервис ClickHouse®, который сам разворачивает и обслуживает кластеры.
Преимущества сервиса:
Не нужно администрировать инфраструктуру — установка, конфигурация и обновления выполняются автоматически.
Гибкая настройка — ключевые параметры ClickHouse (лимиты, кеши, фоновые операции) изменяются через интерфейс без ручной правки файлов и перезапуска.
Высокая надежность — сервис обеспечивает отказоустойчивость и подходит для продакшн-нагрузок.
Интеграция с экосистемой Cloud.ru Evolution — мониторинг, логи, управление доступом и уведомления доступны «из коробки».
Запуск и проверка статуса службы MySQL
После установки убедитесь, что служба запущена на устройстве. Для управления используйте команду systemd:
Команда start запускает сервис, enable отвечает за автозапуск после перезагрузки системы, status показывает состояние службы. Если вы все сделали верно, то увидите статус active (running).
Первоначальная настройка безопасности MySQL
После установки MySQL Server выполните базовые настройки безопасности и настройте пароль root. Рассказываем, какие команды использовать.
Запуск скрипта безопасности mysql_secure_installation
Используйте скрипт mysql_secure_installation, который входит в стандартную поставку MySQL. Запустите его командой:
Дальше последовательно установите сложный пароль для пользователя root, удалите анонимные учетные записи и тестовую базу данных, отключите удаленный доступ для пользователя с административными полномочиями.
Выполнение mysql_secure_installationНастройка пароля root вручную (альтернативный способ)
Если вы не выполнили настройки через sudo mysql_secure_installation, установите или измените пароль root вручную. Войдите в MySQL под административной учетной записью:
Командой ALTER USER задайте новый пароль:
Примените изменения:
Настройка конфигурации MySQL (файл my.cnf)
Настройки MySQL хранятся в конфигурационных файлах. В Ubuntu используется следующая структура:
/etc/mysql/my.cnf — главный файл, который подключает дополнительные директивы из других каталогов. Обычно его не редактируют напрямую.
/etc/mysql/conf.d/ — каталог для пользовательских файлов настроек (например, my.custom.cnf). Все файлы с расширением .cnf в этом каталоге будут прочитаны после основного.
/etc/mysql/mysql.conf.d/ — каталог, в котором находится основной файл конфигурации сервера mysqld.cnf. Именно здесь задаются параметры производительности и сетевые настройки.
Для базовой оптимизации производительности отредактируйте файл /etc/mysql/mysql.conf.d/mysqld.cnf:
innodb_buffer_pool_size — размер буферного пула InnoDB. В этой области кэшируются данные и индексы, поэтому от неё напрямую зависит скорость работы. Для сервера, выделенного под MySQL, рекомендуется устанавливать значение 60–80% от доступной оперативной памяти.
max_connections — максимальное количество одновременных подключений к БД.
Чтобы обеспечить корректную работу с символами Unicode (включая эмодзи), добавьте или измените следующие параметры в том же файле в секции [mysqld]:
Также рекомендуется настроить клиентскую часть, добавив в конец файла /etc/mysql/my.cnf:
После внесения изменений перезапустите службу MySQL:
Работа с пользователями и правами доступа
В задачи по администрированию MySQL входит работа с базами данных, пользователями и их привилегиями. Основные команды:
Задача | Пример команды |
Подключение к MySQL от имени пользователя root | sudo mysql или mysql -u root -p |
Создание нового пользователя и БД | CREATE DATABASE mydb;CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'password'; |
Назначение пользователю привилегий | GRANT ALL PRIVILEGES ON mydb.* TO 'myuser'@'localhost';FLUSH PRIVILEGES; |
Настройка удаленного доступа к MySQL
MySQL на Ubuntu в целях безопасности по умолчанию принимает подключения только с локального хоста. Чтобы разрешить удаленный доступ, в конфигурационном файле /etc/mysql/mysql.conf.d/mysqld.cnf найдите параметр bind-address и установите 0.0.0.0.
Установка bind-address = 0.0.0.0 разрешает подключения со всех сетевых интерфейсов. Если сервер имеет публичный IP-адрес, это создаёт серьёзную угрозу безопасности. Лучше указать конкретный IP-адрес внутренней сети (например, 192.168.1.10), если сервер доступен только внутри неё. Для доступа из интернета настоятельно рекомендуется использовать VPN или SSH-туннель.
Затем перезапустите службу MySQL. Дальше нужно создать пользователя для удаленного подключения:
Этому пользователю нужно дать права доступа на конкретные базы данных и применить изменения с помощью команды FLUSH PRIVILEGES.
Последний этап — настройка брандмауэра. Разрешите подключение к MySQL, открыв порт TCP-порт 3306. Обычно это делается с помощью команды sudo ufw allow 3306/tcp.
Основные команды администрирования и мониторинга
Чтобы проверить версию сервера MySQL, примените команду:
В результате выполнения вы увидите номер версии MySQL Server. Информация нужна, чтобы выбирать правильные инструкции для настройки, диагностировать ошибки и обеспечивать совместимость с программным обеспечением.
Чтобы посмотреть системные переменные, выполните:
Появится информация о версии сервера, протокола, платформы и сборки. Она нужна для детального анализа рабочего окружения MySQL
Чтобы посмотреть список доступных баз данных, выполните:
Для просмотра пользователей службы выполните:
Эта команда выполняется от имени пользователя с привилегиями администратора. Она выведет список пользователей и хостов, с которых разрешены подключения.
Посмотреть активные подключения можно с помощью команды:
Появится список пользователей, хостов, идентификаторов соединений, задействованных баз данных и выполняемых команд с указанием времени.
Автоматическое резервное копирование (cron+mysqldump)
Для копирования данных в MySQL применяется утилита mysqldump. Рассказываем, как ее использовать и автоматизировать процесс с помощью планировщика заданий cron.
Создание скрипта для бэкапа
Утилита mysqldump позволяет в виде SQL-файлов создавать логические дампы БД. Пример bash-скрипта с ее использованием:
Расшифровываем параметры:
--all-databases — резервное копирование всех баз данных;
--single-transaction — создание дампа для таблиц InnoDB;
--quick — построчная выгрузка данных.
Чтобы выполнить скрипт, нужно назначить права на выполнение:
Настройка регулярного выполнения через cron
Чтобы выполнять задачи по расписанию, используйте планировщик cron. Добавить задачи в расписание можно командой:
Формат: минута час день_месяца месяц день_недели команда. Пример:
Чтобы проверить текущие задания, используйте команду:
Решение частых проблем при установке и настройке
У пользователей, особенно новичков, могут возникать проблемы, связанные с запуском MySQL, учетными данными и правами доступа. Подсказываем решения:
Проблема | Причины | Решение |
Ошибка доступа | Неверный пароль, некорректная аутентификация, отсутствие у пользователя нужно привилегий | Проверьте учетные данные и права доступа через SHOW GRANTS. Если проблемы с паролем, задайте новый командой ALTER USER. |
MySQL не запускается | Ошибка в конфигурации my.cnf, занятый порт 3306, мало памяти или повреждены файлы данных | Проверьте статус службы с помощью sudo systemctl status и лог mysql/var/log/mysql/error.log. Измените настройки и освободите порт 3306. |
Утрачен пароль root | Забыт или потерян пароль от учетной записи администратора MySQL |
|
Установка графических инструментов (MySQL Workbench, phpMyAdmin)
Графические инструменты управления облегчают работу с данными, диагностику проблем и администрирование MySQL. Для этих целей подойдут веб-интерфейс phpMyAdmin и приложение MySQL Workbench.
Установка и настройка phpMyAdmin через Apache2
Для установки через терминал выполните команду:
Выберите веб-сервер Apache2, с помощью dbconfig-common подтвердите автоматическую настройку и задайте пароль для пользователя phpMyAdmin. Проверьте доступность веб-интерфейса через браузер — введите http://<адрес_сервера>/phpmyadmin.
phpMyAdmin Подключение MySQL Workbench к серверу Ubuntu
Подключить MySQL Workbench к серверу MySQL можно двумя способами. Первый — прямое TCP/IP-подключение. Вариант подойдет, если сервер СУБД доступен по сети. В настройках подключения укажите имя пользователя и пароль, hostname или IP-адрес сервера и порт MySQL.
К удаленным серверам лучше подключаться SSH-туннель. MySQL Workbench сначала устанавливает SSH-соединение с Ubuntu-сервером, затем передает трафик внутри защищенного канала. Чтобы этого добиться, подключите доступ по SSH, укажите локальный MySQL-порт и параметры MySQL-сервера. Для проверки корректности настроек используйте кнопку Test Connection.
MySQL WorkbenchЗаключение
После установки MySQL не ограничивайтесь базовыми настройками. Изучайте продвинутые инструменты, следите за обновлениями и организуйте мониторинг системы. Ubuntu предоставляет все необходимые инструменты для администрирования.

