Как установить mysql на debian 10

Обновлено: 05.07.2024

MySQL – это популярная открытая система управления базами данных (СУБД), которая используется для хранения и извлечения данных различных приложений. MySQL является одним из компонентов стека LAMP.

В Debian 10 в качестве альтернативы MySQL по умолчанию используется форк проекта, MariaDB, который поддерживается сообществом. MariaDB подходит в большинстве случаев, но если вам нужны уникальные функции MySQL Oracle, вы можете установить и использовать пакеты из репозитория, поддерживаемого разработчиками MySQL.

Этот мануал поможет добавить репозиторий MySQL, установить новую версию СУБД, а также защитить и протестировать установку.

Требования

Для работы нужен сервер Debian 10, настроенный по этому мануалу.

1: Добавление репозитория MySQL

Разработчики MySQL предоставляют пакет .deb, который отвечает за настройку и установку официальных репозиториев MySQL. Добавив репозитории, вы сможете установить новую версию MySQL с помощью стандартного пакетного менеджера системы (в данном случае apt).

Прежде чем мы это сделаем, нужно установить зависимость, пакет GnuPG, реализацию стандарта OpenPGP с открытым исходным кодом.

Начнем с обновления локального индекса пакетов:

sudo apt update

Затем загрузите gnupg:

sudo apt install gnupg

Подтвердите установку, после чего apt загрузит нужный пакет и его зависимости.

Теперь нужно загрузить файл .deb для MySQL через wget, а затем установить его с помощью dpkg.

Откройте страницу загрузок сайта MySQL в браузере. Найдите кнопку Download в правом нижнем углу и перейдите на следующую страницу. Здесь будет предложено войти в систему или зарегистрировать учетную запись веб-сервера Oracle. Этот этап можно пропустить; найдите ссылку No thanks, just start my download. Щелкните правой кнопкой мыши по ссылке и выберите Copy Link Address (или аналогичный вариант, который предложит ваш браузер).

Сейчас можно загрузить файл. Откройте каталог tmp. Загрузите файл с помощью команды wget. Вставьте в команду скопированную ссылку на пакет.

Файл будет загружен в текущий каталог. Просмотрите содержимое:

Теперь можно установить файл:

sudo dpkg -i mysql-apt-config*

Команда dpkg используется для установки, удаления и проверки пакетов .deb. Флаг –i указывает компоненты, которые нужно установить.

Во время установки у вас будет экран конфигурации, с помощью которого вы можете указать, какую версию MySQL нужно использовать, и установить репозитории других инструментов, связанных с MySQL. По умолчанию файл добавит информацию только о репозитории последней стабильной версии MySQL. В данном случае этого достаточно; выберите Ok и нажмите Enter.

После этого репозиторий будет добавлен на сервер. Обновите индекс пакетов:

sudo apt update

Итак, репозиторий MySQL добавлен. Теперь с его помощью можно установить последнюю версию MySQL. Чтобы обновить конфигурацию этих репозиториев, просто запустите:

sudo dpkg-reconfigure mysql-apt-config

Затем выберите новые параметры и обновите индекс пакетов:

sudo apt-get update

2: Установка MySQL

Добавив репозиторий, установите новую версию MySQL:

sudo apt install mysql-server

Пакетный менеджер apt просмотрит все доступные пакеты mysql-server и выберет наиболее новую версию MySQL. Затем он определит зависимости программы и предложит подтвердить установку. Для этого нажмите y и Enter.

После этого будет предложено установить root-пароль. Выберите и подтвердите надёжный пароль. Программа предложит выбрать плагин аутентификации. Рекомендуем использовать Use Strong Password Encryption (по умолчанию), чтобы выбрать его, нажмите ENTER.

СУБД MySQL будет установлена и запущена. Проверьте состояние MySQL:

sudo systemctl status mysql
mysql.service - MySQL Community Server
Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2019-07-25 17:20:12 UTC; 3s ago
Docs: man:mysqld(8)
http://dev.mysql.com/doc/refman/en/using-systemd.html
Process: 2673 ExecStartPre=/usr/share/mysql-8.0/mysql-systemd-start pre (code=exited, status=0/SUCCESS)
Main PID: 2709 (mysqld)
Status: "Server is operational"
Tasks: 39 (limit: 4915)
Memory: 378.4M
CGroup: /system.slice/mysql.service
└─2709 /usr/sbin/mysqld
Jul 25 17:20:10 8host systemd[1]: Starting MySQL Community Server.
Jul 25 17:20:12 8host systemd[1]: Started MySQL Community Server.

Если в выводе есть строка Active: active (running), значит, СУБД успешно установлена и запущена.

3: Безопасность MySQL

MySQL предоставляет вам команду, с помощью которой можно повысить безопасность свежей установки. Запустите её:

Она запросит root-пароль MySQL. Введите его и нажмите Enter. После этого команда задаст вам ряд вопросов.

Для начала команда предложит включить плагин проверки валидности паролей (он автоматически применяет определенные правила защиты паролей пользователей MySQL). Необходимость этого плагина полностью зависит от индивидуальных потребностей вашего сервера. Чтобы включить его, введите y и Enter; чтобы пропустить этот вопрос, просто нажмите Enter. После включения плагина вам будет предложено выбрать уровень строгости проверки пароля (от 0 до 2). Выберите уровень и нажмите Enter, чтобы продолжить.

Затем команда предложит изменить root-пароль. Поскольку это свежая установка и пароль был выбран недавно, вы можете не менять его. Чтобы продолжить, нажмите Enter.

На остальные вопросы можно ответить yes. Команда предложит удалить анонимных пользователей MySQL, запретить удаленный root-доступ, удалить тестовую базу данных и перезагрузить привилегии, чтобы все изменения вступили в силу. Введите y и нажмите Enter в каждом новом окне.

Сценарий завершит свою работу после того как вы ответите на все вопросы.

4: Тестирование установки MySQL

mysqladmin – клиент командной строки MySQL. Используйте его, чтобы подключиться к серверу и вывести информацию о версии и состоянии MySQL:

mysqladmin -u root -p version

С помощью -u root клиент mysqladmin подключается как root- пользователь MySQL; опция –p включает поддержку пароля, а version – это команда, которую нужно запустить.

В выводе будет версия сервера MySQL, время его безотказной работы и некоторую другую информацию о состоянии.

mysqladmin Ver 8.0.17 for Linux on x86_64 (MySQL Community Server - GPL)
Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Server version 8.0.17
Protocol version 10
Connection Localhost via UNIX socket
UNIX socket /var/run/mysqld/mysqld.sock
Uptime: 3 min 9 sec
Threads: 2 Questions: 10 Slow queries: 0 Opens: 128 Flush tables: 3 Open tables: 48 Queries per second avg: 0.052

Если вы получили такой результат, установка последней версии MySQL прошла успешно!

Заключение

Теперь на сервере есть последняя версия MySQL, полностью готовая к работе.

MySQL наиболее широко используемая система управления базами данных (СУБД) с открытым исходным кодом. Она используется для хранения и извлечения данных во многих приложениях. В официальных репозиториях Debian 10 находится СУБД MariaDB в качестве альтернативы для MySQL, и в большинстве случаев, она работает хорошо.

Но если вы хотите, получить СУБД с характеристиками присущими лишь MySQL, то вам потребуется установить ее из официального репозитория MySQL. Далее мы разберем как выполняется установка MySQL Debian 10 от разработчиков.

Как установить MySQL 8 в Debian 10

Шаг 1: Добавление репозитория MySQL

Чтобы установить MySQL в Debian, вам необходимо скачать и установить APT репозиторий содержащийся в .deb пакете, который управляет настройкой и установкой программного обеспечения MySQL.

Во время установки пакета вам будет предложено настроить репозиторий MySQL APT для выбора версий сервера MySQL и других компонентов, которые вы хотите установить. Для установки последней версии оставьте все как есть, перейдите к Оk и нажмите Enter.


Шаг 2: Установка MySQL

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

sudo apt update
sudo apt install mysql-server

Во время установки появится диалоговое окно конфигурации, в котором нужно будет установить пароль пользователя root для MySQL. Введите безопасный и надежный пароль, а затем подтвердите его.


После этого вас предупредят о новой системе аутентификации, на основе SHA256, использующейся в MySQL, нажмите Ok. Выберите плагин аутентификации (оставьте опцию по умолчанию, чтобы использовать рекомендуемый плагин) и нажмите кнопку Enter, чтобы завершить процесс установки.



Когда установка пакетов завершится, установщик запустит службу MySQL и настроит для неё автозагрузку. Чтобы убедиться, что служба MySQL работает, проверьте ее состояние с помощью следующей команды.

sudo systemctl status mysql


Есть несколько команд systemctl, которые вам нужно знать, чтобы управлять (запускать, перезапускать и останавливать) службу MySQL, когда это будет необходимо:

sudo systemctl start mysql
sudo systemctl restart mysql
sudo systemctl stop mysql
sudo systemctl reload mysql

Шаг 3: Настройка безопасности MySQL

Сервер MySQL из коробки не защищен, и для повышения безопасности потребуется запустить сценарий mysql_secure_installation. Выполните:

Прочитайте описание каждого вопроса и правильно ответьте на них. Во-первых, введите пароль пользователя root, который вы задали во время установки пакета. Вы можете выбрать y (для Yes) или n (для No), чтобы использовать или не использовать компонент VALIDATE PASSWORD.


Когда сценарий предложит вам установить новый пароль для пользователя root выберите No (вы уже установили его во время установки пакета). Затем внимательно следуйте другим подсказкам и выберите y (для YES), чтобы удалить анонимных пользователей, запретить удаленный вход под root в систему, удалить тестовую базу данных и перезагрузить таблицу привилегий.



Настройки MySQL Debian завершены, можно переходить к использованию.

Шаг 4: Проверка MySQL

После того как вы закончили настройку безопасности MySQL, можно начать использовать его для хранения данных для ваших веб-сайтов или веб-приложений. Чтобы получить доступ к оболочке MySQL, выполните следующую команду (пароль пользователя root введите по запросу, как показано на скриншоте):


Выводы

В этой статье мы рассказали, как выполняется установка MySQL Debian 10. Если у вас есть какие-либо вопросы по этой статье, спрашивайте в комментариях!

В этом руководстве описан процесс установки сервера MySQL в Debian 10.x., который также может работать с другими системами Linux (например, Ubuntu).

Шаг 1. Добавим репозиторий MySQL

Прежде всего обновите пакеты:

apt updateapt install gnupg

Затем загрузите MySQL с официального сайта или используйте wget:

https://serverspace.io/wp-content/uploads/2020/08/how-to-install-mysql-on-debian-10-1.jpg

Скриншот 1. Загрузка MySQL

sudo dpkg -i mysql-apt-config_x.x.x-x_all.deb
где x.x.x-x - версия MySQL.

При установке пакета выберите продукт и версию MySQL, которую будете использовать; а также инструменты, коннекторы и preview packages.
После выбора вы переместитесь в предыдущее меню - нажмите Ok:

https://serverspace.io/wp-content/uploads/2020/08/how-to-install-mysql-on-debian-10-3.jpg

Скриншот 2. Выбор версии

Пакет для установки сервера - mysql-community-server. Версия - та же, что выбиралась в установщике.

Шаг 2. Установим сервер MySQL

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

sudo apt-get install mysql-community-server

https://serverspace.io/wp-content/uploads/2020/08/how-to-install-mysql-on-debian-10-4.jpg

Скриншот 3. Установка

Когда apt завершит загрузку, установщик запросит root-пароль:

https://serverspace.io/wp-content/uploads/2020/08/how-to-install-mysql-on-debian-10-5.jpg

Скриншот 4. Ввод root-пароля

У вас есть два варианта на выбор:

  • Оставить поле пустым: сервер будет использовать аутентификацию через сокеты unix. Это означает, что вы сможете получить доступ к серверу только как пользователь root или как пользователь с sudo;
  • Установить пароль: метод аутентификации будет одинаковым для всех пользователей.

Если вы выберете второй вариант, установщик запросит выбор плагина аутентификации - надежно зашифрованный пароль (MySQL 8.x) или устаревший метод (MySQL 7.x и ранее). Вы должны выбрать метод, совместимый с вашим клиентом / программой. Как только вы выберете все параметры, процесс установки будет завершен, и служба запустится автоматически:

https://serverspace.io/wp-content/uploads/2020/08/how-to-install-mysql-on-debian-10-6.jpg

Скриншот 5. Выбор плагина аутентификации по умолчанию

Теперь проверьте статус службы с помощью systemctl:

systemctl status mysql.service

https://serverspace.io/wp-content/uploads/2020/08/how-to-install-mysql-on-debian-10-7.jpg

Скриншот 6. Проверка статуса службы

Если вы видите статус active, это означает, что сервер работает без ошибок. Для выхода нажмите Q или Ctrl + C.

Затем запустите команду от имени root-пользователя для безопасной настройки службы SQL:

Программа задаст вам вопросы, на которые необходимо ответить Да (кнопка Y / Y) или Нет (любая другая):

https://serverspace.io/wp-content/uploads/2020/08/how-to-install-mysql-on-debian-10-8.jpg

Скриншот 7. Запуск mysql_secure_installation

Для разрешения удаленного доступа, вам потребуется отредактировать файл mysqld.conf:

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

В конце файла добавьте bind_address со значением локального хоста:

Сохраните файл и перезапустите службу с помощью systemctl:

systemctl restart mysql

Важно: не забудьте открыть порт MySQL (желательно указать стандартный порт MySQL).

Если вы используете ufw:

ufw allow $yoursqlport
где вместо yoursqlport пропишите свой порт MySQL

Если вы используете iptables:

iptables –A INPUT –p tcp –dport $yoursqlport –j ACCEPT
где вместо yoursqlport пропишите свой порт MySQL

Как установить MySQL в Debian 10 Linux

Мы собираемся установить MySQL версии 8.0. Выберите OK , нажав Tab и ударяя Enter (как показано на изображении выше).

Если вы не уверены, какую версию выбрать, обратитесь к документации приложения, которое вы собираетесь развернуть на своем сервере.


Установка MySQL

Обновите список пакетов и установите пакет сервера MySQL, запустив:


Программа установки попросит вас установить пароль root MySQL. Не устанавливайте пароль сейчас (оставьте поле пустым), мы сделаем это в следующем разделе.



После завершения установки служба MySQL запустится автоматически, вы можете проверить это, набрав:

Обеспечение безопасности MySQL

Выполните mysql_secure_installation команду, чтобы установить пароль root и повысить безопасность установки MySQL:


Вам будет предложено настроить, VALIDATE PASSWORD PLUGIN который используется для проверки надежности паролей пользователей MySQL. Существует три уровня политики проверки пароля: низкий, средний и надежный. Нажмите, ENTER если вы не хотите устанавливать плагин проверки пароля.

В следующем запросе вам будет предложено установить пароль для пользователя root MySQL.

После установки пароля root сценарий также попросит вас удалить анонимного пользователя, ограничить доступ пользователя root к локальному компьютеру и удалить тестовую базу данных. Вы должны ответить «Д» (да) на все вопросы.


Подключение к серверу MySQL

Для взаимодействия с MySQL через терминал используйте mysql клиент, установленный как зависимость пакета сервера MySQL.

Если вы выбрали метод аутентификации по умолчанию для входа на сервер MySQL в качестве пользователя root:


В противном случае, если вы выбрали устаревший метод аутентификации для входа, введите:


Вам будет предложено ввести пароль root, который вы ранее установили при mysql_secure_installation запуске скрипта. После ввода пароля вам будет представлена ​​оболочка MySQL, как показано ниже:

Заключение

В этом руководстве вы узнали, как установить и защитить сервер MySQL на сервере Debian 10. Мы также показали вам, как подключиться к оболочке MySQL.

Если к вашему приложению не предъявляются какие-либо особые требования, вам следует придерживаться MariaDB , системы баз данных по умолчанию в Debian 10.

Читайте также: