Установка и базовая настройка MySQL на Centos 8 TAR
Коллеги всем привет.
СУБД Mysql это свободная реляционная система управления базами данных, и в сегодняшней статье мы поговорим о том как установить СУБД Mysql на Centos 8 из TAR архива. Версию будем устанавливать 8.0.29.
Содержимое статьи:
- Создаем учетной запись mysql.
- Скачиваем TAR архив Mysql.
- Создаем необходимые директории для СУБД Mysql.
- Роз архивируем наш скачанный TAR архив.
- Создаем конфигурационный файл.
- Инициализация базы данных.
- Запускаем базу данных.
- Остановить базу данных.
- Итоги.
1. Создаем учетной запись mysql.
Первым делом нам нужно создать учетную запись в Linux под названием mysql так как база данных работает только из под учетной записи mysql. Для того чтобы создать учетную запись в Linux воспользуемся командой:
$. useradd mysql
2. Скачиваем TAR архив Mysql.
Следующим шагом нам нужно скачать TAR архив СУБД Mysql. И чтобы нам скачать TAR архив Mysql нам нужно перейти на страницу https://dev.mysql.com/downloads/mysql/.
https://dev.mysql.com/downloads/mysql/
Дальше выбираете вашу операционную систему и её разрядность, и только после этого у вас появится полный список доступных файлов для скачивания.
Нам нужен именно TAR!! Нажимаете Download.
После нажатия на кнопку Download вас перебросит на страницу скачивания TAR архива. Нам нужно скопировать ссылку на скачивания. СКОПИРОВАТЬ!!
После копирования ссылки переходим на сервер и уже скачиваем TAR архив с помощью утилиты wget.
$. wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.29-el7-x86_64.tar
Супер! Мы успешно скачали TAR архив. Идем дальше.
3. Создаем необходимые директории для СУБД Mysql.
Следующим шагом нам необходимо создать директории под базу данных.
3.1. Директория под данные:
$. mkdir -p /app/mysql/data
3.2. Директория под логи ошибок, логи запросов и для логов медленных запросов.
$. mkdir -p /app/mysql/log
3.3. Директория для конфигурационных файлов.
$. mkdir -p /app/mysql/config
3.4. Директория для двоичных журналов (binary log).
$. mkdir -p /app/mysql/binlog
3.4. Директория для журналов ретрансляций (relay log).
$. mkdir -p /app/mysql/relaylog
3.5. Назначаем владельца директории и группу учетной записью mysql.
$. chown -R mysql:mysql /app/mysql
У вас должно быть так как у меня.
4. Роз архивируем наш скачанный TAR архив.
4.1. Переносим наш скачанный TAR архив в директорию /app/mysql
$. cp mysql-8.0.29-el7-x86_64.tar /app/mysql
4.2. Роз архивируем TAR архив с помощью утилиты tar.
$. tar -xvf mysql-8.0.29-el7-x86_64.tar.gz
У вас должно получится так как у меня. mysql-8.0.29-el7-x86_64.tar.gz можно удалять.
4.3. Переименуем директорию в server.
$. mv mysql-8.0.29-el7-x86_64 server
Название директорий у вас должно быть как у меня.
Главное чтобы владелец всех директорий был mysql.
5. Создаем конфигурационный файл.
Если кто не знает, то база данных Mysql любит когда у неё конфигурационный файл создается в директории /etc/my.cnf, но мы чуть схитрим и укажем путь конфигурационного файла там где мы хотим.
5.1. Создаем первый конфигурационный файл my.cnf в директории /etc.
$. vim /etc/my.cnf
И укажем в нем где у нас в действительности будет конфигурация базы данных.
Команда !include как бы кажет mysql что моя конфигурация будет продолжаться в файле my.cnf, но уже в директории которую мы создали /app/mysql/config.
5.2. Создаем уже наш конфигурационный файл в директории /app/mysql/config.
$. vim /app/mysql/config/my.cnf
И добавим в него самые важные параметры:
- basedir = /app/mysql/server
- datadir = /app/mysql/data
- log_bin = /app/mysql/binlog/mysqlbin
- log_bin_index = /app/mysql/binlog/mysql-bin.index
- log_error = /app/mysql/log/mysql.local.err
- default_authentication_plugin = mysql_native_password
6. Инициализация базы данных.
После создания всех директорий и конфигурационного файла нам нужно произвести инициализацию базы данных, чтобы создались все необходимые директории уже самой базы данных.
6.1. Если вы все делали под учетной записью root, то вам нужно переключиться на mysql.
$. su - mysql
6.2. Выполняем инициализацию базы данных.
$. export BASEDIR=/app/mysql/server
$. export PATH=$BASEDIR/bin:$PATH
$. mysqld --initialize --user=mysql --basedir=/app/mysql/server --datadir=/app/mysql/data --console
После инициализации у вас в директории /app/mysql/data должны появится файлы базы данных.
И в директории /app/mysql/log в файле mysql.local.err появится сгенерированный пароль от учетной записи root.
7. Запускаем базу данных.
После инициализации базы данных мы теперь может её запустить, для этого воспользуемся утилитой mysqld_safe.
$. mysqld_safe --basedir=/app/mysql/server --datadir=/app/mysql/data --console --user=mysql &
После запуска у вас должны появится процессы базы данных, для проверки воспользуемся командой:
$. ps aux | grep mysql
Как видим на скриншоте процессы базы данных присутствуют, а значит к ней уже можно подключатся через mysql -u root -p
8. Остановить базу данных.
Для остановки базы данных нужно использовать утилиту mysqladmin.
$. mysqladmin -u root -p shutdown
9. Итоги.
В итоге коллеги мы сегодня успешно установили базу данных Mysql из TAR архива. Я с вами согласен, что это не самый простой способ установки, но он является самым лучшим в плане обслуживании базы данных. Так что вам решать нужен ли вам такой способ установки или нет.
Всем спасибо, я надеюсь что вам моя статья хоть чем-то помогла.