1 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Установка и базовая оптимизация MariaDB в CentOS

Установка и базовая оптимизация MariaDB в CentOS

date11.11.2019
userVyacheslavK
directoryCentOS, Linux
commentsкомментария 2

В этой статье я рассмотрю особенности установки, базовой настройки и оптимизации сервера баз данных MariaDB. Передо мной стояла задача установитьc MariaDB и провести базовую настройку на Linux CentOS 7. Так как это актуальный вопрос, я надеюсь статья будет вам полезна. В конце статьи я приведу несколько примеров конфигурационных файлов, а вы с помощью их сможете подобрать параметры под свой сервер.

установка и настройка mariadb в linux centos

Установка MariaDB в CentOS

С недавнего времени MariaDB входит в стандартный для CentOS 7 репозиторий base, но в данном репозитории содержится версия 5.5. Эта версия уже не актуальна, в ней есть проблемы с производительностью и нет полнотекстового поиска в InnoDB. На момент написания статьи актуальная версия MariaDB — 10.4, поэтому подключившись к нашему Linux серверу по ssh мы для начала подключим репозиторий разработчика mariadb.org и после запустим установку сервера БД.

Я привык работать с файлами через редактор nano, устанавливаем его через yum:

yum install nano -y

И открываем файл репозитория для редактирования:

И добавляем туда следующую информацию:

Сохраняем файл и запускаем установку:

yum install MariaDB-server MariaDB-client -y

Установка окончена, теперь нужно добавить сервис в автозагрузку и запустить:

systemctl start mariadb
systemctl enable mariadb

Проверяем статус сервиса:

systemctl status mariadb

systemctl status mariadb - проверка службы в linux centos

Сервис mariadb запущен и работает, значит можно продолжить настройку.

Защита и безопасность MariaDB

После того, как мы установили и запустили MariaDB, можем перейти к настройкам безопасности. Запускаем встроенный сценарий:

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

Для подключения к mariadb серверу нужно создать правила в Linux файерволе с помощью iptables:

iptables -I INPUT -p tcp —dport 3306 -m state —state NEW,ESTABLISHED -j ACCEPT
iptables-save > /etc/sysconfig/iptables

Опционально, можно разрешить исходящие подключения к другим базам MariaDB.

iptables -I OUTPUT -p tcp —sport 3306 -m state —state ESTABLISHED -j ACCEPT

Проверка соединения с сервером MariaDB

Нужно убедиться, что установка MariaDB выполнена успешно.

Подключимся к серверу БД с помощью встроенного инструмента mysqladmin:

Команда выдаст результат:

Это означает, что установка MariaDB выполнена успешно, база данных работает и доступна.

Можно подключиться к консоли сервера maridb для интерактивного выполнения sql команд:

Настройка конфигурационного файла MariaDB

Обычно после установки MariaDB я добавляю в конфигурационный файл /etc/my.cnf свою стандартную конфигурацию, которая работает на большем количестве серверов и пока проблем с базами не возникало. Очистим файл my.cnf и добавим в него следующее:

Для общего понимания разберем основные параметры конфигурационного файла my.cnf:

  • datadir — каталог для хранения файлов БД;
  • tmpdir – каталог для хранения временных файлов;
  • skip-name-resolve – отключает DNS резолвинг;
  • max_allowed_packet — максимальный размер пакета. Если в БД используются поля blob, нужно выставлять значение не менее чем самое большое поле;
  • max_connections — максимальное количество открытых соединений, параметр определяет, сколько клиентов одновременно могут работать с сервером БД;
  • Секция # Cache parameters — все что связано с кешем запросов, устанавливать слишком высокие значения не рекомендуется, так как потребление ресурсов сервером БД станет расти;
  • Секция # InnoDB parameters — все что связано с таблицами innodb;
  • innodb_buffer_pool_size — буфер кеша для данных и индексов, если на сервере размещено 1-2 проекта, выставляйте значение равное 70-80% доступной оперативной памяти;
  • innodb_flush_method — для Linux ставим значение O_DIRECT , это отключит кеширование на уровне ОС;
  • innodb_flush_log_at_trx_commit — этот параметр влияет на скорость записи innoDB таблиц. Отнеситесь серьезно к данному параметру, выставляя значение 0, вы получаете большую производительность, но риск потери данных возрастает. Я предпочитаю устанавливать значение 2, так как большой прирост в работе сервера БД я не замечал, а безопасность превыше всего.

Оптимизация и тюнинг производительности MariaDB

Хочу добавить, что опираться конкретно на мой конфигурационный файл не нужно, под каждый сервер и под каждый проект, желательно подбирать собственные параметры. Я советую воспользоваться скриптами для автоматической проверки конфигурации MariaDB, которые после выполнения дают некоторые рекомендации для оптимизации сервера.

Установим скрипт Tuning-Primer.sh:

yum install bc net-tools -y

chmod +x tuning-primer.sh

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

Например, у меня скрипт сразу же выдал, что используемое количество коннектов гораздо меньше, чем я выставил:

тюнинг mariadb с помощью Tuning-Primer.sh

Данный параметр можно изменить, как и в файле my.cnf так и через консоль, я убавил до 10 и скрипт меня похвалил:

С помощью подобных манипуляций можно привести к идеалу работу вашего сервера БД.

Хочу заметить, что рекомендованное непрерывное время работы сервера БД не менее 48 часов, тогда информация будет более точной и на основе этого вам нужно будет провести тюнинг.

Читайте так же:
Как использовать Google Диск для компьютеров

К моему конфигурационному файлу, можно добавить секцию для активации журнала медленных запросов, это поможет вам анализировать работу ваших проектов. В секцию «mysqld» добавляем:

Так же нужно создать лог файлы, для ошибок работы MariaDB и журнала медленных запросов:

touch /var/log/mysql-error.log
touch /var/log/slow-query.log

Делаем рестарт сервиса:

systemctl restart mariadb

Просмотреть журнал медленных запросов можно открыв файл /var/log/slow-query.log или же проверять его в режиме реального времени:

tail -f /var/log/slow-query.log

Таким образом вы можете анализировать запросы к БД вашего проекта и на основе этого проводить аудит.

После любых изменений настроек БД нужно проверять конфигурацию на наличие ошибок:

Обязательно после всех работ с настройкой баз данных выполняйте проверку статуса на предмет ошибок выполняя команду:

systemctl status mariadb -l

Основные команды для работы в консоли MariaDB

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

Для локального входа в консоль MariaDB, выполните:

Для удаленного подключения к серверу БД MariaDB:

mysql -u root -p -h 10.1.1.20

create database db1; — создать БД с именем db1

show databases; — вывести список созданных БД

use db1; — войти в БД с именем db1

show tables; — вывести таблицы БД в которой мы находимся

create user ‘test’@’localhost’ identified by ‘123456’; — создать пользователя test и задать пароль 123456(используйте более сложные пароли)

grant all privileges on database_name.* to ‘test’@’localhost’; — даем полные права пользователю test

flush privileges; — обновляем все привилегии

show processlist; — посмотреть активные соединения в БД или же можно использовать команду:

show status where `variable_name` = ‘Threads_connected’;

Так же из консоли mysql можно просматривать или изменять параметры, например:

SHOW VARIABLES LIKE ‘max_error_count’;

mariadb cli SHOW VARIABLES

mariadb cli set VARIABLES

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

Предыдущая статьяПредыдущая статья Следующая статья Следующая статья

Установка и настройка MariaDB на CentOS 7

Если по какой-либо причине вам необходимо установить MySQL, ознакомьтесь с разделом Как установить MySQL на CentOS 7 . Если у вашего приложения нет особых требований, вам следует придерживаться MariaDB, системы баз данных по умолчанию в CentOS 7.

В этом уроке мы покажем вам, как установить последнюю версию MariaDB на CentOS 7 с использованием официальных репозиториев MariaDB.

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

Установите MariaDB 5.5 на CentOS 7

Версия сервера MariaDB в репозиториях CentOS по умолчанию — версия 5.5. Это не последняя версия, но она достаточно стабильна.

Для установки и защиты MariaDB 5.5 в CentOS 7 выполните следующие действия:

Установите пакет MariaDB с помощью менеджера пакетов yum:

Нажмите, y когда будет предложено продолжить установку.

После завершения установки запустите службу MariaDB и включите ее при загрузке, используя следующие команды:

Чтобы убедиться, что установка прошла успешно, проверьте статус службы MariaDB, введя:

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

Запустите mysql_secure_installation скрипт, который будет выполнять несколько задач, связанных с безопасностью:

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

Шаги объяснены подробно. Рекомендуется ответить Y (да) на все вопросы.

Установите MariaDB 10.3 на CentOS 7

На момент написания этой статьи последней версией MariaDB была версия 10.3. Если вам нужно установить любую другую версию MariaDB, перейдите на страницу репозиториев MariaDB и создайте файл репозитория для конкретной версии MariaDB.

Чтобы установить MariaDB 10.3 в CentOS 7, выполните следующие действия:

Первый шаг — включить репозиторий MariaDB. Создайте файл репозитория с именем MariaDB.repo и добавьте следующее содержимое:

Установите серверные и клиентские пакеты MariaDB, используя так yum же, как и другие пакеты CentOS:

Yum может предложить вам импортировать ключ MariaDB GPG:

Введите y и нажмите Enter .

После завершения установки включите MariaDB для запуска при загрузке и запустите службу:

Чтобы проверить установку, проверьте статус службы MariaDB, набрав:

Последний шаг — запустить mysql_secure_installation скрипт, который будет выполнять несколько задач, связанных с безопасностью:

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

Все шаги объяснены подробно, и рекомендуется ответить Y (да) на все вопросы.

Подключитесь к MariaDB из командной строки

Для подключения к серверу MariaDB через терминал от имени учетной записи root:

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

Centos установка mariadb. Установка MariaDB в Windows

В данной статье мы рассмотрим как установить и настроить Linux, Apache, MariaDB, PHP на Centos7 /RHEL 7. В новой версии Centos7 /RHEL 7 много изменений.

Читайте так же:
Как поделиться постом в сторис Инстаграм: новая версия

Что такое LAMP?

LAMP — комплект программного обеспечения на ОС, состоящей из операционной системы Linux, веб-сервера Apache, сервера базы данных MySQL и языка программирования PHP (или Perl / Python) . LAMP используется для работы тяжелых динамических веб-сайтов полностью состоящий из свободного программного обеспечения с открытым исходным кодом. В этой статье я собираюсь объяснить, как Linux, Apache, MySQL / MariaDB (замена для MySQL), PHP (LAMP) устанавливаются на CentOS 7 или RHEL 7.

  • Устанавливаем RHEL 7 или CentOS 7 сервер. Открываем терминал к серверу по ssh, у Вас должны быть права суперпользователя root.
  • Вам также понадобятся знания команд yum
  • Вам понадобится IP адрес вашего сервера, используйте следующую комманду, что бы определить IP адрес для интерфейса eth0
  • Полученный IP 10.180.10.10 адрес будем использовать для тестирования установки

Установка Apache on a CentOS 7 /RHEL 7 сервер

Для установки веб сервера используем команду

Yum install httpd

Включите службу HTTPd в автозагрузки

Чтобы отключить, автоматическую загрузку

Systemctl disable httpd.service rm «/etc/systemd/system/multi-user.target.wants/httpd.service»

Запустите HTTPd службу на CentOS 7 / RHEL 7

На данном этапе вы можете указать в веб-браузере IP-адрес вашего сервера, http://10.180.10.10. Вы увидите стартовую страницу apache:

Остановка HTTPd службы на CentOS 7 / RHEL 7

Перезапуск HTTPd службы на CentOS 7 / RHEL 7

Просмотр статуса apache службы на CentOS 7 / RHEL 7

Убедитесь что веб сервер запущен

Systemctl status httpd.service

Также перезапуск веб сервера может быть выполнен следующей командой

Проверка apache / httpd на наличие ошибок конфигурации в Centos 7/ RHEL 7

Конфигурация по умолчанию HTTPD сервера:

  1. По умолчанию конфигурационный файл: /etc/httpd/conf/httpd.conf
  2. Файлы конфигурации, загружаемых модулей: /etc/httpd/conf.modules.d/ (например, PHP)
  3. Выберите MPMs как загружаемые модули и события: / etc/httpd/conf.modules.d/00-mpm.conf
  4. Стандартные порты: 80 и 443 (SSL)
  5. Файлы журналов по умолчанию: /var/log/httpd/

Установка MariaDB на сервере CentOS 7 / RHEL

MariaDB — обновленная замена для сервера MySQL. На RHEL / CentOS 7 вместо MySQL используется система управления базами данных MariaDB. Введите следующую yum команду для установки MariaDB сервера:

Yum install mariadb-server mariadb

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

Systemctl start mariadb.service

Чтобы убедиться, что сервис MariaDB запускается автоматически во время загрузки, введите:

Systemctl enable mariadb.service

Ln -s «/usr/lib/systemd/system/mariadb.service» «/etc/systemd/system/multi-user.target.wants/mariadb.service»

Чтобы остановить / перезапуск и отключить MariaDB используйте следующие команды:

Sudo systemctl stop mariadb.service #— Остановить mariadb сервер sudo systemctl restart mariadb.service #— Перзапусить mariadb сервер sudo systemctl disable mariadb.service #— Отключить автозагрузку mariadb сервер sudo systemctl is-active mariadb.service #— Проверка запущен ли сервер?

Первый запуск MariaDB

Введите следующую команду:

Отвечая на вопросы Вы сможете настроить первоначальную безопасность БД

Проверка установки MariaDB

Введите следующую команду

Установка PHP на CentOS 7 / RHEL 7

Для установки PHP и модулей, такие как GD / mysql введите следующую комманду

Yum install php php-mysql php-gd php-pear

Необходимо перезагрузить HTTPD (Apache) сервер, введите:

Systemctl restart httpd.service

Для поиска всех других PHP модулей:

Чтобы получить более подробную информацию о модуле:

Yum info php-pgsql

Проверка PHP на сервере

Создайте файл с именем /var/www/html/test.php следующим образом:

Добавьте следующий код:

LAMP сервер установлен, если у вас есть проблемы с настройкой сервера, мы производим разовые работы по установке и настройке web сервера LAMP .

Я полностью поддерживаю Ваше решение! Я перевел свои серверы на MariaDB с MySQL 3 года назад и не от хорошей жизни. Версии MySQL после покупки его компанией Oracle становились все хуже и хуже. Постоянные падения и ошибки в таблицах плохо влияли на доступность сайтов, тогда было принято решение перейти на MariaDB.

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

Выбор версии MariaDB

Существует 2 ветки MariaDB — 5.x и 10.x.

5.x — это версии, максимально приближенные к MySQL последних версий, они полностью совместимы с MySQL. Если вы только переходите на MariaDB с MySQL — эта линейка версий для вас.

10.x — новая линейка версий, которую начали после версии 5.5. Эти версии полностью не копируют все новые функции последних версий MySQL, но содержат свои уникальные функции. Они по прежнему совместимы с MySQL, но, если вы только начинаете использовать MariaDB — лучше начать с версии 5.5.

Установка MariaDB на Linux сервер

Дистрибутивов MariaDB обычно нет в репозитариях основных дистрибутивов Linux (например в CentOS 6 и CentOS 7). Но, даже если бы были, лучше установить в систему родной репозитарий MariaDB, чтобы всегда иметь актуальные версии. Для установки репозитария yum следуйте инструкции:

1. Создайте новый файл репозитария с помощью команды:

Нажмите клавишу i для перехода в режим редактирования редактора vi.

2. Получите текст файла для своей версии дистрибутива Linux по этой ссылке . Вам понадобится выбрать название дистрибутива, его версию и разрядность:

Скопируйте текст для файла репозитария, вставьте его в свой файл и нажмите «:wq» для выхода из редактора vi с сохранением.

Теперь можно установить MariaDB Server и программы окружения с помощью yum:

yum install MariaDB-server MariaDB-client

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

Теперь вам необходимо запустить установленный сервер MariaDB и перейти к его настройке:

Читайте так же:
Настройка и подключение ASUS RT-N14U

Если вы все сделали правильно, увидите такое сообщение:

Настройка MariaDB

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

Первоначальная установка root пароля MySQL:

Самый простой способ установить пароль root — использовать специальный скрипт, он входит в дистрибутив MariaDB:

Следуйте инструкциям и установите root пароль.

Если у вас остались вопросы или нужны уточнения — пожалуйста, задайте вопрос или оставьте комментарий.

Я всегда рад помочь!

Думаю всем известно, что MariaDB — это ответвление от MySQL. Разработку и поддержку MariaDB осуществляет компания MariaDB Corporation Ab и фонд MariaDB Foundation. Ведущий разработчик MariaDB — это всем известный Майкл Видениус, автор оригинальной версии MySQL.

На текущий момент актуальной является версия , которая была выпущена 13 февраля 2018 года. В новой версии MariaDB хранилище InnoDB было обновлено до выпуска 5.7.21, так же было исправлено более 100 ошибок, в том числе , которые могли быть использованы для инициирования удалённого отказа в обслуживании.

Давайте попробуем установить новую версию на чистую систему Debian 9.3 (Stretch).

Не буду скрывать, что мне очень нравится MariaDB и я давно отказался от использования Oracle MySQL в пользу MariaDB или Percona Server for MySQL о чем ни капли не жалею. MariaDB используется в качестве замены Oracle MySQL во многих Linux дистрибутивах. Так же MariaDB используется в качестве БД на большом количестве крупных сайтов, собственно и мой блог тоже не исключение — в качестве БД у меня используется MariaDB 10.2.

Исходные данные: ОС Debian 9.3 (Stretch);
Задача: Установить MariaDB 10.2.13 с минимум телодвижений и произвести базовую настройку БД;

В интернете можно найти много статей о том как установить MariaDB на Debian, но все они предлагают довольно громоздкие решения.
Есть так же , но она тоже не содержит простого решения, а ведь оно есть!

Установка MariaDB 10.2.13 на Debian 9:

1. Установка необходимых доп. пакетов:

Apt-get update apt-get install dirmngr wget -y

2. А теперь та самая простая магия, о которой нигде не написано — скачивание и запуск скрипта установки репозитария:

Wget https://downloads.mariadb.com/MariaDB/mariadb_repo_setup && chmod a+x mariadb_repo_setup ./mariadb_repo_setup —mariadb-server-version=10.2

Для информации:
Данный скрипт проанализирует вашу систему, установит GPG-ключи и добавит репозитарий в файл /etc/apt/sources.list.d/mariadb.list
Скрипт является официальным и поддерживает дистрибутивы: RHEL/CentOS 6 & 7, Ubuntu 16.04 LTS (xenial) & 18.04 (bionic), Debian 8 (jessie) & 9 (stretch) и SLES 12 и 15
Скрипт так же поддерживает установку репозитариев для разных версий MariaDB, MaxScale и MariaDB Tools, Вы можете скачать его и посмотреть все опции запуска:

P.S. Для любителей все делать руками , где можно более гибко выбрать нужный репозитарий в зависимости от географического положения вашего сервера.

3. Обновляем список пакетов:

4. Устанавливаем последнюю версию MariaDB 10.2.x:

Apt-get install mariadb-server -y

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

После установки проверим статус работы MariaDB:

# systemctl status mariadb ● mariadb.service — MariaDB 10.2.13 database server Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled) Drop-In: /etc/systemd/system/mariadb.service.d └─migrated-from-my.cnf-settings.conf Active: active (running) since Thu 2018-02-15 12:14:17 +05; 19s ago Docs: man:mysqld(8) https://mariadb.com/kb/en/library/systemd/ Main PID: 7270 (mysqld) Status: «Taking your SQL requests now. » CGroup: /system.slice/mariadb.service └─7270 /usr/sbin/mysqld # netstat -ltupn | grep mysql tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 7270/mysqld # ps -ef | grep [m]ysql mysql 7270 1 0 12:14 ? 00:00:00 /usr/sbin/mysqld

А так же попробуем подключиться к БД с помощью команды mysql (т.к. на этапе установки мы оставили пароль root пустым, то использовать опции -u root -p мы не будеи):

# mysql Welcome to the MariaDB monitor. Commands end with ; or g. Your MariaDB connection id is 10 Server version: 10.2.13-MariaDB-10.2.13+maria

stretch-log mariadb.org binary distribution Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Type «help;» or «h» for help. Type «c» to clear the current input statement. MariaDB [(none)]>

Мы успешно подключились к серверу MariaDB.

5. Теперь запустим мастер настройки безопасности:

На вопрос:
Enter current password for root (enter for none):
нажимаем Enter, текущий пароль root у нас пустой.

И последний вопрос:
Reload privilege tables now?
вводим Y, да мы хотим перезагрузить таблицу привилегий для вступления их в силу.

После этого мы выполнили минимальные меры по защите нашего экземпляра MariaDB.

Попробуем теперь подключиться к базе:

# mysql ERROR 1045 (28000): Access denied for user «root»@»localhost» (using password: NO)

Как мы видим с пустым паролем root нас больше не пускают.

Подключимся с указанием дополнительных опций и вводом пароля:

# mysql -u root -p Enter password: Welcome to the MariaDB monitor. Commands end with ; or g. Your MariaDB connection id is 20 Server version: 10.2.13-MariaDB-10.2.13+maria

stretch-log mariadb.org binary distribution Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Type «help;» or «h» for help. Type «c» to clear the current input statement. MariaDB [(none)]>

Читайте так же:
Вайбер не открывает фото

Отлично, все получилось.

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

2 января, 2017 12:16 пп 13 224 views | Комментариев нет

Требования

  • Сервер CentOS 7.
  • Пользователь с доступом к sudo.

Все необходимые инструкции можно найти в .

1: Установка MariaDB

Чтобы установить MariaDB, используйте репозиторий Yum. Запустите следующую команду и нажмите y, чтобы продолжить.

sudo yum install mariadb-server

После завершения установки запустите демон:

sudo systemctl start mariadb

Команда systemctl не показывает вывод некоторых команд. Чтобы убедиться, что демон запущен, введите:

sudo systemctl status mariadb

Если демон MariaDB был запущен, в выводе команды будут строки:

Active: active (running)
[…]
Dec 01 19:06:20 centos-512mb-sfo2-01 systemd: Started MariaDB database server.

Теперь нужно настроить автозапуск MariaDB. Для этого введите:

sudo systemctl enable mariadb
Created symlink from /etc/systemd/system/multi-user.target.wants/mariadb.service to /usr/lib/systemd/system/mariadb.service.

После этого нужно обеспечить безопасность данных.

2: Безопасность MariaDB

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

Сценарий предоставляет подробное описание каждого шага. Сначала он запросит root-пароль. Поскольку в новой установке такого пароля пока нет, просто нажмите Enter. После этого сценарий предложит вам создать такой пароль. Введите сложный пароль и подтвердите его.

После этого сценарий задаст вам ряд вопросов. Чтобы принять данные по умолчанию, можете просто нажать Y и Enter. Сценарий заблокирует анонимных пользователей и удалённый root логин, удалит тестовые таблицы и перезагрузит привилегии.

3: Тестирование MariaDB

Теперь нужно убедиться, что установка MariaDB прошла успешно.

Попробуйте подключиться к БД с помощью инструмента mysqladmin (это клиент для запуска команд администрирования). Чтобы подключиться к MariaDB как root (-u root), ввести пароль (-p) и запросить версию программы, введите команду:

alt=»Блог Михаила Григорьева» />

9 Июл 2021 18:07:09 | 0 comments

Установка MariaDB 10.6 на CentOS 7

06 июля 2021 года, ровно через 1 год после релиза MariaDB 10.5 вышла первая стабильная версия здесь.

Давайте попробуем установить новую версию на чистую систему CentOS 7.

Полный список изменений в MariaDB 10.6.3 Вы можете найти на этой странице.

2. Добавление репозитория MariaDB

Для информации:
Данный скрипт проанализирует Вашу систему, установит GPG-ключи и добавит репозитарий в файл /etc/yum.repos.d/mariadb.repo
Скрипт является официальным и поддерживает дистрибутивы: RHEL/CentOS 7/8, Ubuntu 16.04 LTS (xenial), 18.04 LTS (bionic), & 20.04 LTS (focal), Debian 9 (stretch) & 10 (buster) и SLES 12 & 15
Скрипт так же поддерживает установку репозитариев для разных версий MariaDB, MaxScale и MariaDB Tools, Вы можете скачать его и посмотреть все опции запуска:

P.S. Для любителей все делать руками есть удобный портал, где можно более гибко выбрать нужный репозитарий в зависимости от географического положения вашего сервера.

3. Установка последней версии MariaDB 10.6.x

4. Запуск MariaDB

Добавим запуск MariaDB при старте ОС:

После запуска проверим статус работы MariaDB:

Проверим порт и работу демона. Обратите внимание, что начиная с версии 10.5 все исполняемые файлы, начинающиеся со слова «mysql» переименованы с использованием слова «mariadb». Старые имена пока сохранены в форме символических ссылок, но нужно уже привыкать использовать вместо mysql слово mariadb.

ВАЖНО! Обратите внимание на то, что MariaDB принимает соединения на всех сетевых интерфейсах. Если Ваш сервер имеет внешний белый IP адрес, то есть доступен через Интернет, то и MariaDB так же может быть доступна через Интернет, что может быть довольно опасным.

Чтобы в дальнейшем избежать проблем с неконтролируемым доступом я рекомендую настроить firewall на Вашем сервере и ограничит доступ на порт 3306 или перенастроить MariaDB так, чтобы она открывала порт только на localhost (127.0.0.1).

Чуть ниже (в п.5) мы настроим безопасность MariaDB.

Пока давайте попробуем подключиться к БД с помощью команды mariadb:

Мы успешно подключились к серверу MariaDB.

5. Настройка безопасности MariaDB

Очень важно выполнить этот пункт, а особенно задать очень сложный пароль пользователя root, т.к. по умолчанию MariaDB принимает сетевые соединения на всех сетевых интерфейсах и если Ваш сервер смотрит в интернет портом 3306, то неправильная настройка безопасности может стать причиной взлома базы данных.

Обратите внимание, что раньше скрипт настройки назывался mysql_secure_installation, начиная с 10.6 он называется mariadb-secure-installation
Запускаем мастер настройки:

На вопрос:
Enter current password for root (enter for none):
нажимаем Enter, текущий пароль root у нас пустой.

Далее вопрос:
Switch to unix_socket authentication [Y/n]
вводим Y, если мы хотим оставить возможность аутентификации через unix-сокет — это нововведение появилось в 10.4, плагин позволяет использовать присутствующие в системе учётные записи для подключения к СУБД при помощи локального unix-сокета.

Далее вопрос:
Change the root password? [Y/n]
вводим Y, да мы хотим поменять пароль root
и далее придумываем СЛОЖНЫЙ пароль root

Далее вопрос:
Remove anonymous users? [Y/n]
вводим Y, мы хотим удалить анонимного пользователя.

Далее вопрос:
Disallow root login remotely? [Y/n]
вводим Y, да мы хотим запретить подключаться под пользователем root с удаленных машин.

Далее вопрос:
Remove test database and access to it? [Y/n]
вводим Y, да мы хотим удалить тестовую базу test

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

И последний вопрос:
Reload privilege tables now? [Y/n]
вводим Y, да мы хотим перезагрузить таблицу привилегий для вступления их в силу.

После этого мы выполнили минимальные меры по защите нашего экземпляра MariaDB.

Теперь настроим MariaDB чтобы она принимала соединения только на интерфейсе localhost (127.0.0.1), для этого откроем файл /etc/my.cnf.d/server.cnf и в секции [mysqld] пропишем bind-address=127.0.0.1

Часть файла конфигурации /etc/my.cnf.d/server.cnf:

После этого перезапустим MariaDB:

Проверим на каких интерфейсах MariaDB принимает соединения:

Отлично, то что нужно!

Теперь проверим, что под root с пустым паролем нас не пустят нам нужно залогиниться под непривилегированным пользователем и попробовать выполнить (когда у нас спросят пароль root, мы нажмем Enter, тем самым пароль будет пустым):

Как мы видим с пустым паролем root нас больше не пускают.

А теперь так же находясь под непривилегированным пользователем на запрос пароля введем его:

Отлично, все получилось.

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

Вход в систему MariaDB в Centos

Я использую Centos 6.5 и только что установил MariaDB-sever и MariaDB-client некоторое время назад.

Первая проблема заключается в том, что я запускаю MariaDB командой /etc/init.d/mysqld start вместо /etc/init.d/mysql start (потому что в init.d ). нет файла mysql , поэтому в настоящее время я сбит с толку, потому что не знаю, что я начал-MySql или MariaDB.

Это приводит ко второй проблеме. Согласно их базе знаний, я попытался войти в систему mysql -u root -p . Но он показывал MySql вместо MariaDB , о чем я чувствую себя неправильно:

Итак, я бегу MariaDB или MySQL?

2 ответа

  • Как загрузить кластер MariaDB на CentOS 7?

Я проконсультировался с тремя руководствами по настройке кластера MariaDB с репликацией Galera, но не смог его загрузить. Я нахожусь на CentOS 7 и выбрал установку MariaDB 10.1 из его официального репозитория. Проводники, которым я следовал, все немного отличаются, и ни один из их шагов не.

Я искал документацию о том, как настроить Многомастерную репликацию в MariaDB, но не нашел ни одной. Я пробовал некоторые конфигурации для MySQL, но они не работали. Wsrep были оба ON в моих двух узлах, но когда я подключаю второй узел к донору, возникает ошибка при перезапуске mysql. Я использую.

Да, то, что вы начали, неправильно — он работает MySQL 5.1.73. Вы должны удалить свой «distribution» при условии MySQL (который поставляется с CentOS 6.5) и просто установить MariaDB.

Вы можете сделать это, посмотрев на: rpm-qa |grep -i mysql и удалив эти пакеты. Просто сделайте чистую установку MariaDB, и все будет в порядке.

Некоторые дистрибутивы отправляют /etc/init.d/mysqld, некоторые — /etc/init.d/mysql . Это не имеет никакого значения, просто разные имена сценариев.

MariaDB происходит от MySQL, так что если вы видите MariaDB в приглашении, то это MariaDB. Вы никогда не увидите MariaDB в Oracle в MySQL.

Похожие вопросы:

Я только что сделал чистую установку CentOS linux . Первое, что я сделал после установки CentOS , — это скачал MySQL и попытался установить файл -server rpm . Но установка завершается неудачей с.

Я попробовал командовать yum remove mariadb mariadb-server Он удалил клиент, но не смог удалить сервер. error reading information on service mysql: No such file or directory error.

Я использую Mariadb (mysql Ver 15.1 Distrib 5.5.40-MariaDB) в CentOS (CentOS Linux release 7.0.1406). Я попытался перезапустить Mariadb. systemctl start mariadb Job for mariadb.service failed. See.

Я проконсультировался с тремя руководствами по настройке кластера MariaDB с репликацией Galera, но не смог его загрузить. Я нахожусь на CentOS 7 и выбрал установку MariaDB 10.1 из его официального.

Я искал документацию о том, как настроить Многомастерную репликацию в MariaDB, но не нашел ни одной. Я пробовал некоторые конфигурации для MySQL, но они не работали. Wsrep были оба ON в моих двух.

На нашем CentOS 6.5 не был установлен mysql, но в качестве зависимости был автоматически установлен mysql-libs version: 5.1.73 Release: 3.el6_5. Мы не можем безопасно удалить mysql-libs, как мы.

Я установил MariaDB на CentOS 7, но у меня были некоторые проблемы с некоторой конфигурацией, теперь она полностью неправильно настроена. Таким образом, я хотел удалить MariaDB с помощью “yum remove.

Ниже приведена ошибка, когда я пытаюсь установить MariaDB на CentOS 7 (an Amazon AMI) [root@hostname

]# yum install MariaDB-server Loaded plugins: update-motd, upgrade-helper Resolving Dependencies.

Я пытаюсь создать файл docker (базовая ОС должна быть Centos), который установит mariadb, запустит mariadb и продолжит работать mariadb. Так что я могу использовать контейнер в gitlab для запуска.

Я довольно новичок в этой системе. К счастью, Google cloud plateform имеет настройку в один клик для master slave mariadb replication, которую я выбрал или(.

голоса
Рейтинг статьи
Ссылка на основную публикацию
ВсеИнструменты
Adblock
detector