Введение
MySQL - это система управления базами данных, первая версия которой вышла в 1995 году. Сейчас за разработку и поддержку этой СУБД отвечает компания Oracle. MySQL относится к свободно распространяемому программному обеспечению, то есть ее может использовать любой пользователь и при этом абсолютно бесплатно.
Сейчас MySQL является одной из самых популярных СУБД в мире. Это связано с простотой в использовании, высокой производительностью, безопасностью и многими другими моментами, из-за которых MySQL сейчас используют многие крупные компании.
По умолчанию Debian 10 поставляется вместе с MariaDB - форком от СУБД MySQL, разрабатываемым сообществом под лицензией GNU GPL. В подавляющем большинстве случаев это подходящий вариант, но иногда требуется именно использование MySQL.
Из этой статьи вы узнаете, как установить последнюю версию MySQL на сервер с Debian 10.
Требования
Для выполнения дальнейших действий у вас должен быть создан пользователь с sudo привилегиями (под которым вам нужно авторизоваться), а также должен быть установлен фаервол.
Шаг 1: добавление репозитория MySQL
Первым делом необходимо обновить список пакетов:
$ sudo apt update
Теперь нужно установить пакет gnupg:
$ sudo apt install gnupg
После подтверждения утилита apt установит gnupg и все необходимые зависимости.
Следующий шаг - установка пакета .deb. Сначала его нужно будет загрузить, используя команду wget, а затем установить командой dpkg.
Зайдите на страницу загрузки MySQL. В правом нижнем углу найдите кнопку “Download” и нажмите ее. Далее вы можете зарегистрироваться или зайти в уже имеющийся аккаунт Oracle, но главный интерес представляет строчка "No thanks, just start my download”. Скопируйте адрес, на который она ведет (можно нажать правую кнопку мыши и выбрать «Копировать адрес ссылки»).
Теперь нужно загрузить этот файл. Для этого перейдите в директорию, куда вы будете делать загрузку:
$ cd /tmp
А затем введите команду ниже со ссылкой, которую вы скопировали:
$ wget https://dev.mysql.com/get/mysql-apt-config_0.8.13-1_all.deb
Файл должен загрузиться в ту директорию, где вы сейчас находитесь. Можете проверить это, просмотрев список файлов:
$ ls
В выводе должен быть нужный файл:
mysql-apt-config_0.8.13-1_all.deb . . .
А теперь можно перейти к установке:
$ sudo dpkg -i mysql-apt-config*
Команда dpkg используется для того, чтобы устанавливать, удалять и инспектировать пакеты .deb. Ключ -i используется для установки определенного (указанного далее) файла.
В ходе установки вы увидите окно с настройками, где вы можете выбрать, какую конкретно версию MySQL вы хотите установить, а также вы можете установить репозитории связанных с MySQL инструментов. По умолчанию будет выбрана последняя стабильная версия MySQL и все. Такая настройка нам и нужна.
После окончания процесса еще раз обновите список пакетов:
$ sudo apt update
После добавления репозиториев MySQL можно переходить к установке самой MySQL.
Шаг 2: установка MySQL
Введите команду ниже:
$ sudo apt install mysql-server
Пакетный менеджер apt запросит подтверждение установки, введите y и нажмите Enter.
Во время процесса установки вам нужно будет задать root-пароль - введите и подтвердите выбор. Далее у вас будет возможность выбрать плагин аутентификации. Прочитайте варианты. Если не знаете, какой выбрать, выбирайте вариант “Use Strong Password Encryption”. После всех необходимых процедур ПО будет установлено и запущено.
Проверить это можно командой systemctl:
$ 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 sammy systemd[1]: Starting MySQL Community Server... Jul 25 17:20:12 sammy systemd[1]: Started MySQL Community Server.
Строка Active: active (running) свидетельствует о том, что СУБД MySQL запущена и работает.
Шаг 3: защита MySQL
Для того чтобы выполнить несколько апдейтов, связанных с безопасностью, нужно ввести команду:
$ mysql_secure_installation
Далее вам нужно будет ввести root-пароль и нажать Enter. Следующие несколько вопросов, на которые предстоит ответить (для согласия - “y” и Enter; для того, чтобы пропустить вопрос, - просто Enter):
- включение плагина валидации паролей: пароли пользователей MySQL будут проверяться на соответствие правилам защищенных, сильных паролей (можно поставить уровень от 0 до 2);
- изменение root-пароля (т.к. вы буквально недавно его создали, то этот шаг можно пропустить);
- на все остальные вопросы (удаление анонимных пользователей MySQL, запрет удаленной root-авторизации, удаление тестовой базы данных и т.д.) рекомендуется вводить “y” и нажимать Enter.
Скрипт завершится после того, как вы ответите на все вопросы. Разобравшись с безопасностью, можно переходить к тестированию.
Шаг 4: защита MySQL
mysqladmin представляет собой утилиту командной строки для MySQL. Она позволяет администраторам баз данных выполнять простые задачи вроде установки и изменения паролей, мониторинга процессов и так далее.
Для начала используйте эту утилиту для того, чтобы подключиться к серверу и посмотреть версию:
$ mysqladmin -u root -p version
Часть -u root отвечает за авторизацию в качестве суперпользователя, -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 на свой сервер.
Комментарии