Поиск по сайту:
Да — я в ладье. Меня разлив не тронет! Но как мне жить, когда народ мой тонет? (Саади).

6 шагов для установки и настройки MariaDB MySQL на CentOS/RedHat

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Загрузка...
10.11.2017
6 шагов для установки и настройки MariaDB MySQL на CentOS / RedHat

Начиная с CentOS 7, вы не увидите пакет под названием mysql-server в хранилище yum.

Теперь пакет называется mariadb-server.

Оригинальный MySQL в настоящее время принадлежит корпорации Oracle.

Но MariaDB это исходная база данных MySQL. Так же, как оригинальный и MySQL, MariaDB также с открытым исходным кодом, разработанная сообществом с открытым исходным кодом, разрабатывается и поддерживается корпорацией MariaDB.

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

Это руководство объяснит шаг за шагом о том, как установить и настроить MariaDB на CentOS или на RedHat на основе дистрибутивах Linux.

1. Пакеты MariaDB MySQL

Ниже приведены три основных пакета MariaDB:

  • mariadb-5.5.52-1.el7.x86_64 — Содержит несколько клиентских программ и утилит MySQL.
  • mariadb-server-5.5.52-1.el7.x86_64 — Это основной сервер баз данных MySQL MariaDB.
  • mariadb-libs-5.5.52-1.el7.x86_64 — Содержит общие библиотеки, необходимые для интерфейса клиентской программы.

Текущая версия MariaDB-server, которая доступна в хранилище yum CentOS 7, является 5.5.52, как показано ниже.

# yum info mariadb-server
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: repos-va.psychz.net
 * extras: linux.cc.lehigh.edu
 * updates: mirror.us.leaseweb.net
Available Packages
Name : mariadb-server
Arch : x86_64
Epoch : 1
Version : 5.5.52
Release : 1.el7
Size : 11 M
Repo : base/7/x86_64
..

2. Установка сервера MariaDB MySQL

Установите пакет сервера MariaDB MySQL, как показано ниже, с помощью yum install.

# yum install mariadb-server

 

В этом случае, на этом сервере, был установлен MariaDB-server вместе со следующими зависимыми пакетами.

  • mariadb-server.x86_64 1:5.5.52-1.el7
  • mariadb-libs.x86_64 1:5.5.52-1.el7
  • mariadb.x86_64 1:5.5.52-1.el7
  • libaio.x86_64 0:0.3.109-13.el7
  • perl-DBD-MySQL.x86_64 0:4.023-5.el7
  • perl-DBI.x86_64 0:1.627-4.el7
  • perl-Compress-Raw-Bzip2.x86_64 0:2.061-3.el7
  • perl-Compress-Raw-Zlib.x86_64 1:2.061-4.el7
  • perl-Data-Dumper.x86_64 0:2.145-3.el7
  • perl-IO-Compress.noarch 0:2.061-2.el7
  • perl-Net-Daemon.noarch 0:0.48-5.el7
  • perl-PlRPC.noarch 0:0.2020-14.el7

Убедитесь в том, чтобы было установлено три важных пакеты MariaDB MySQL.

# rpm -qa | grep -i maria
mariadb-5.5.52-1.el7.x86_64
mariadb-server-5.5.52-1.el7.x86_64
mariadb-libs-5.5.52-1.el7.x86_64

 

Если вы новичок в MySQL/MariaDB, вы можете пройти курс молодого бойца: Как создать таблицу в MySQL, сделать вставку и выбрать записи

3. Запуск базы данных MariaDB

Как вы видите ниже, модуль сервера базы данных MariaDB загружен, но еще не запущен.

# systemctl status mariadb
? mariadb.service - MariaDB database server
 Loaded: loaded (/usr/lib/systemd/system/mariadb.service; disabled; vendor preset: disabled)
 Active: inactive (dead)

 

Запустите сервер MySQL с помощью systemctl, как показано ниже.

# systemctl start mariadb

 

Проверьте состояние systemctl, чтобы убедиться, что сервер базы данных MariaDB запущен успешно.

# systemctl status mariadb
● mariadb.service - MariaDB database server
   Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled)                                                                 
  Drop-In: /etc/systemd/system/mariadb.service.d                                                                                                              
           └─nofile.conf                                                                                                                                      
   Active: active (running) since Tue 2017-10-03 13:56:53 MSK; 1 months 7 days ago
 Main PID: 840 (mysqld_safe)                                                                                                                                  
   CGroup: /system.slice/mariadb.service                                                                                                                      
           ├─ 840 /bin/sh /usr/bin/mysqld_safe --basedir=/usr                                                                                                 
           └─1121 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --log-error=/var/log/mariadb/mariadb.log...

Если вы программист, и используете PHP, вы найдете это полезным: 3 метода подключения к MySQL с помощью PHP с примерами кода

4. Подключение и проверка сервера MariaDB

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

# mysql -u root
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 2
Server version: 5.5.52-MariaDB MariaDB Server

Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>

 

Следующая команда базы данных покажет базу данных для MySQL по умолчанию.

MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
+--------------------+

5. Выполнение шагов после установки MariaDB

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

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

# /usr/bin/mysql_secure_installation

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we'll need the current
password for the root user.  If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.

 

Так как это первый раз мы проводим этот сценарий, нет пароля, заданного для корневой учетной записи в MySQL. Так что, введите его.

Enter current password for root (enter for none): 
OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.

 

На данном этапе, укажем, «у», чтобы назначить пароль для учетной записи суперпользователя MySQL. Введите пароль после этого.

Обратите внимание, что root в  MySQL отличается от Linux корневой учетной записи. Таким образом, здесь мы устанавливаем пароль для корневой учетной записи MySQL, которая не имеет ничего общего с корневой учетной записью в Linux.

Set root password? [Y/n] y
New password: 
Re-enter new password: 
Password updated successfully!
Reloading privilege tables..
 ... Success!

 

В рамках установки по умолчанию, MySQL устанавливает анонимного пользователя, который может войти в базу данных без реального пользователя. Таким образом, мы действительно должны удалить этого пользователя.

Remove anonymous users? [Y/n] y
 ... Success!

Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

 

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

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

Disallow root login remotely? [Y/n] y
 ... Success!

 

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

Remove test database and access to it? [Y/n] y
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

 

Введите у здесь, чтобы убедиться, что все изменения, которые мы сделали до сих пор, вступят немедленно в силу.

Reload privilege tables now? [Y/n] y
 ... Success!

Cleaning up...

All done!  If you've completed all of the above steps, your MariaDB
installation should now be secure.

Thanks for using MariaDB!

6. Проверка корневого доступа к MySQL

Теперь, если вы подключаетесь к Mysql без пароля суперпользователя, вы получаете сообщение об ошибке, что доступ запрещен.

# mysql -u root
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

 

Чтобы задать пароль, используйте опцию -p, как показано ниже. Это предложит пользователю ввести пароль.

# mysql -u root -p
Enter password:

 

Кроме того, как вы видите ниже, команда показывает базы данных, что проверочная база данных теперь удалена.

MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
+--------------------+

 

Если вы хотите передать пароль в командной строке MySQL, укажите его прямо рядом с опцией -p, как показано ниже.

# mysql -u root -pMySecurePassword

 

Примечание:
Там нет пробела между -p и паролем. Это может вызвать некоторую путаницу, поскольку у нас есть пространство между -u и именем пользователя. Но, нет никакого пространства между -p и паролем.

 

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Если статья понравилась, то поделитесь ей в социальных сетях:

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

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

**ссылки nofollow

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

Спасибо!

Теперь редакторы в курсе.