Установка mariadb 5.5 на rhel / centos / fedora linux

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

Эта статья «Установка MariaDB 10 на CentOS 7» покажет вам, как установить и настроить MariaDB 10 на CentOS 7. Как вы вероятно уже знаете, сервер базы данных MariaDB теперь по умолчанию на CentOS т.к из-за Oracle (MySQL материнская компания) и вопросов GPL лицензирования. MariaDB с открытым исходным кодом и сообщество постепенно отходит от MySQL и переходит на MariaDB.

Если вы не знаете историю, вот краткое резюме. До Oracle владеющий MySQL, она была основана на GPL (GNU General Public License), которая говорит, что вы можете использовать программное обеспечение бесплатно, но вы не можете изменять и продавать его, если вы не отдаете исходный код. Это означает, что вы можете использовать его в вашем проекте с закрытым исходным кодоме.

Когда Oracle изменила лицензионное соглашение от модели GPL, в основном в с открытым исходным кодом сообщества восстали и некоторые начали группу из MySQL и создали MariaDB.

Поэтому в основном, сервер базы данных MariaDB такой же как и MySQL, но с моделью лицензирования GPL.

Теперь, когда вы знаете немного больше о том, почему и как MariaDB была основана, давайте будем учиться, как установить ее на CentOS 7.

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

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

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

$ sudo vim /etc/yum.repos.d/MariaDB.repo

Затем скопируйте и вставьте строки что ниже в файл и сохранить его.

name = MariaDB
baseurl = http://yum.mariadb.org/10.0/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

Наконец, выполните команды ниже, чтобы установить MariaDB 10 на ваш сервер:

$ sudo yum install MariaDB-server MariaDB-client

Если у вас возникли проблемы с ошибками и MariaDB не может быть установлена из-за конфликта с mariadb-libs-xxxx, выполните команду что ниже, чтобы удалить конфликтующие библиотеки,  и после чего повторно запустите установку команды что выше:

$ sudo yum remove mariadb-libs*

Следует также удалить пакет Postfix. Повторно запустите команду что выше, чтобы установить MariaDB.

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

$ sudo /etc/init.d/mysql start

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

$ sudo mysql_secure_installation

Затем выберите «Y» (Да) для остальных подсказок, пока вы не закончите.

Enter current password for root (enter for none): press Enter
Set root password? Y
New password: Type new root password
Re-enter new password: Confirm the password
Remove anonymous users? Y
Disallow root login remotely? Y
Remove test database and access to it? Y
Reload privilege tables now? Y

Последнее, необходимо заменить cnf.ini файл по умолчанию в /etc/ для MariaDB. Но для начала нужно перейти в:

$ cd /usr/share/mysql

И использовать один из предопределенных cnf.ini конфигураций которые доступны (Huge, Medium и Small) в данной папке.

Сделаем резервное копирование cnf.ini файла:

$ sudo mv /etc/cnf.ini /etc/cnf.ini.bak

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

$ sudo cp /usr/share/mysql/my-huge.cnf /etc/cnf.ini

Перезапуск MaraiDB:

$ systemctl restart mysql

Можно проверить статус:

$ systemctl status mariadb

Можно добавить MariaBD в автозагрузку ОС:

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

$ mysql -uroot -u
>GRANT ALL PRIVILEGES ON *.* TO 'captain'@'%' IDENTIFIED BY 'my_password' WITH GRANT OPTION;
> exit

Проверим какой порт прослушивает MariaDB с помощью команды SS:

# ss -tnlp | grep 3306
LISTEN 0 0 127.0.0.1:3306 *:* users:(("mysqld",1159,14))

Мой выглядит вот так (я разрешил удаленное подключение к серверу БД):

LISTEN     0      50                        *:3306                     *:*      users:(("mysqld",10884,13))

Установка MariaDB 10 на CentOS 7 завершена.

New Features in MariaDB Server 10.5:

Some of the changes and features in MariaDB Server 10.5 are:

  • All binaries previously beginning with mysql now begin with mariadb, with symlinks for the corresponding mysql command
  • S3 Storage Engine — to archive MariaDB tables in Amazon S3, or any third-party public or private cloud that implements S3 API
  • Both S3 tables and partitioned S3 tables are discoverable. This means that if you create a partitioned S3 table, both the partitioned table and its partitions can be directly used by another server that has access to the S3 storage
  • New privileges were added by splitting the SUPER privilege, so that more fine grained tuning of what each user can do can be applied
  • Speed up binary row logging code
  • Improve connect speed (up to 25%)

Step 4 – Working with MariaDB

After installing and completing the configuration, connect to a MariaDB server using the following command.

sudo mysql -u root -p

Also try to create a new database, user and assign privileges to a database.

MySQL

## CREATE DATABASE
MariaDB > CREATE DATABASE mydb;

## CREATE USER ACCOUNT
MariaDB > CREATE USER ‘dbuser’@’localhost’ IDENTIFIED BY ‘secret’;

## GRANT PERMISSIONS ON DATABASE
MariaDB > GRANT ALL ON mydb.* TO ‘dbuser’@’localhost’;

## RELOAD PRIVILEGES
MariaDB > FLUSH PRIVILEGES;

1
2
3
4
5
6
7
8
9
10
11

## CREATE DATABASE
MariaDB>CREATEDATABASEmydb;

## CREATE USER ACCOUNT
MariaDB>CREATE USER’dbuser’@’localhost’IDENTIFIED BY’secret’;

## GRANT PERMISSIONS ON DATABASE
MariaDB>GRANTALLONmydb.*TO’dbuser’@’localhost’;

##  RELOAD PRIVILEGES
MariaDB>FLUSHPRIVILEGES;

You may also required install phpMyAdmin to manage MariaDB using web interface, which provides easy way to work.

Установка Aria2 (менеджер загрузок) на RHEL / CentOS и Fedora Linux

Aria2 представляет собой легкую многопротокольную утилиту загрузки с командной строкой . Он поддерживает HTTP / HTTPS, FTP, BitTorrent и Metalink. Aria2 можно использовать с помощью встроенных JSON-RPC и XML-RPC интерфейсов. Для загрузки файлов, aria2 можно использоваться разные
источники/протоколы и попытаться максимально использовать пропускную способность канала.  Используя контрольные суммы блока данных для Metalink, aria2 автоматически проверяет части данных, которые загружаются по BitTorrent. Aria2 1.18.5- последняя версия. Этот релиз исправляет ошибку, которая могла вызвать отказ после загрузки нескольких файлов (например, нескольких файлов MetaLink или торент).

 Особенности

1. Есть интерфейс командной строки;
2. Можно качать файлы через HTTP (S) / FTP / BitTorrent;
3. Сегментированные загрузки;
4. Metalink версии 4 (RFC 5854) с поддержкой (HTTP / FTP / BitTorrent);
5. Metalink версии 3.0 с поддержкой (HTTP / FTP / BitTorrent);
6. Поддержка Metalink / HTTP (RFC 6249);
7. Имеется реализация HTTP/1.1;
8. Поддержка HTTP прокси;
9. Поддержка базовой аутентификации HTTP;
10. Известные переменные окружения для прокси : http_proxy , https_proxy , ftp_proxy , all_proxy andno_proxy;
11. Проверка подлинности сертификата клиента в HTTPS;
12. Загрузка Cookies из файла с использованием формата Firefox3 , хром / Google Chrome и Mozilla / Firefox ( 1.x/2.x ) / формат Netscape;
13. Сохранить Cookies в Mozilla / Firefox ( 1.x/2.x ) / формате Netscape;
14. Поддержка дополнительных заголовков HTTP;
15. Поддержка постоянного соединения;
16. FTP через HTTP-прокси;
17. Есть много BitTorrent расширений : Быстрое расширение, DHT , PEX , MSE / PSE , Multi- трекер , UDP трекер;
18. Можно запустить в виде процесса демона;
19. Выборочное скачивание в нескольких торрент-файл / Metalink;
20. Можно отключить сегментированную загрузку в Metalink;
21. Есть поддержка Netrc;
22. Имеется поддержка конфигурационного файла;
23. Параметризованная поддержка URI;
24. Поддержка IPv6 с Happy Eyeballs;
25. И много другое.

Security

Improve initial security

The command will interactively guide you through a number of recommended security measures, such as removing anonymous accounts and removing the test database:

# mysql_secure_installation

Warning: After running this, please note that TCP port 3306 will still be open, but refusing connections with an error message. To prevent MySQL from listening on an external interface, see the and sections.

Listen only on the loopback address

By default, MySQL will listen on the 0.0.0.0 address, which includes all network interfaces. In order to restrict MySQL to listen only to the loopback address, add the following line in :

bind-address = 127.0.0.1

Enable access locally only via Unix sockets

By default, MySQL is accessible via both Unix sockets and the network. If MySQL is only needed for the localhost, you can improve security by not listening on TCP port 3306, and only listening on Unix sockets instead. To do this, add the following line in :

skip-networking

You will still be able to log in locally as before, but only using Unix sockets.

Grant remote access

Warning: This is not considered as best practice and may cause security issues. Consider using Secure Shell, VNC or VPN, if you want to maintain the MySQL server from another host inside/outside your network.

To allow remote access to the MySQL server, ensure that MySQL has and is .

Grant any MySQL user remote access (example for root):

# mysql -u root -p

Check current users with remote access privileged:

SELECT User, Host FROM mysql.user WHERE Host <> 'localhost';

Now grant remote access for your user (here root):

GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.%' IDENTIFIED BY 'my_optional_remote_password' WITH GRANT OPTION;

You can change the ‘%’ wildcard to a specific host if you like. The password can be different from user’s main password.

Configure access to home directories

For security reasons, the systemd service file contains , which prevents MariaDB from accessing files under the , and hierarchies. The has to be in an accessible location and owned by the user and group.

Remove RPM Package

The RPM installer can be used to remove (or uninstall) a software package.

Enter the following into a terminal window:

The option instructs RPM to erase the software.     Check RPM Dependencies  

So far, this guide assumes the software either doesn’t have dependencies or already has them installed.

To check the .rpm file for dependencies using the following command:

The system should list all the dependencies:

  • – This option tells RPM to query the file
  • – This option lets you specify the target package to query
  • – This lists the requirements for the package

If there are any missing dependencies, you can install them from the standard repositories using yum or dnf. If your software requires other non-standard software, it will often be noted in the installation instructions.

Installation

Tip:

  • If the database (in ) resides on a Btrfs file system, you should consider disabling for the directory before creating any database.
  • If the database resides on a ZFS file system, you should consult before creating any database.

Install , and run the following command before starting the :

# mariadb-install-db --user=mysql --basedir=/usr --datadir=/var/lib/mysql

Tip: If you use something different from for your data dir, you need to set under section of your .

Now can be started and/or enabled.

Note: Before continuing, it is recommended to of the MySQL installation.

To simplify administration, you might want to install a .

Информация о действующих параметрах

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

mysqld --verbose --help
= часть вывода команды с пояснениями =
!!! в консоли у меня не показывается первая часть вывода и как её увидеть я сказу ниже!!!
= в верхней части вы увидите где находится файл настойки =
mysqld Ver 10.3.12-MariaDB-log for Linux on x86_64 (MariaDB Server)
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Starts the MariaDB database server.

Usage: mysqld 

Default options are read from the following files in the given order:
/etc/my.cnf ~/.my.cnf

= в этой части увидите вывод всех возможных параметров = 
--thread-handling=name 
                      Define threads usage for handling queries. One of: 
                      one-thread-per-connection, no-threads, pool-of-threads
  --thread-pool-idle-timeout=# 
                      Timeout in seconds for an idle thread in the thread
                      pool.Worker thread will be shut down after timeout
  --thread-pool-max-threads=# 
                      Maximum allowed number of worker threads in the thread
                      pool

= в этой части параметры которые используются по умолчанию =
Variables (--variable-name=value)
and boolean options {FALSE|TRUE}                           Value (after reading options)
---------------------------------------------------------- ---------------
allow-suspicious-udfs                                      FALSE
alter-algorithm                                            DEFAULT
aria                                                       ON
aria-block-size                                            8192
aria-checkpoint-interval                                   30
aria-checkpoint-log-activity                               1048576
aria-encrypt-tables                                        FALSE
aria-force-start-after-recovery-failures                   0
aria-group-commit                                          none
aria-group-commit-interval                                 0
aria-log-dir-path                                          /var/lib/mysql/
aria-log-file-size                                         1073741824
aria-log-purge-type                                        immediate
= в конце информация о том как посмотреть текущие параметры =

To see what values a running MySQL server is using, type
'mysqladmin variables' instead of 'mysqld --verbose --help'.

перевод
Чтобы увидеть, какие значения использует работающий сервер MySQL, введите 'mysqladmin variables' вместо 'mysqld --verbose --help'.

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

 mysqld --verbose --help > mysqld--verbose--help.txt

Какие значения использует работающий сервер тоже лучше вывести в файл:

mysqladmin variables -u root -p > mysqladmin-variables.txt
Enter password: 

Использование MariaDB

В этом разделе вы узнаете, как подключиться к MariaDB и как пользоваться основными командами SQL.

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

# mysql -u root -p

Вводим пароль, тот который Вы вводили ( создали) при установке.

Давайте попробуем создать простую базу данных, которую мы позже будем заполнения данными. Введите следующие команды, чтобы создать базу данных с именем TEST_DB, владельцем которого будет являться новый пользователь Test_User, так же командой установим пароль secret_password для пользователя:

MariaDB > CREATE DATABASE test_db;
MariaDB > GRANT ALL PRIVILEGES ON test_db.* TO test_user@localhost IDENTIFIED BY 'secret_password';
MariaDB > FLUSH PRIVILEGES;
MariaDB > quit

Последняя строка (команда) выходит из пользователя root на MariaDB. И сейчас войдем как пользователь test_user:

# mysql -u testuser -p

Введем команду для того чтобы использовать только что созданную БД (test_db):

MariaDB > USE test_db;

Создайте новую таблицу и заполните ее некоторым данным:

MariaDB > CREATE TABLE products (id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), price DECIMAL(6,2));
MariaDB > INSERT INTO products (name, price) VALUES ('MacBook_Pro', 3200.0);
MariaDB > INSERT INTO products (name, price) VALUES ('Asus', 340.0);
MariaDB > INSERT INTO products (name, price) VALUES ('HP', 745.0);

Убедитесь, что новые данные нормально вставлены:

MariaDB > SELECT * FROM products;

Выйдите из клиента MariaDB выполнив:

MariaDB > quit

Для получения дополнительной информации о командах SQL выполните:

MariaDB > \h

Обновление репозитория MariaDB YUM до нового мажорного релиза.

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

Обновление основного релиза с помощью скрипта установки репозитория пакета MariaDB

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

Обновление основного релиза с помощью инструмента настройки репозитория MariaDB

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

sudo sed -i 's/10.2/10.3/' /etc/yum.repos.d/MariaDB.repo

После этого репозиторий должен ссылаться на MariaDB 10.3 .

Если репозиторий привязан к определенному второстепенному выпуску, то приведенная выше команда может привести к неверной конфигурации репозитория. В этом случае рекомендуются следующие варианты:

  • Отредактируйте репозитория MariaDB.repo вручную.
  • Или удалите репозитория MariaDB.repo , а затем установите репозиторий новой версии с более надежным скриптом установки репозитория пакетов MariaDB .

Установка Maria DB 10.5 на Ubuntu 20.04 LTS Linux

Для того, чтобы установить MariaDB 10.5 на Ubuntu 20.04 LTS Linux необходима сначала добавить репозитараий MariaDB в систему.

Шаг 1. Обновить систему

Обновите систему и установите пакет software-properties-common.

sudo apt update && sudo apt upgrade
sudo apt -y install software-properties-common

1
2

sudo apt update&&sudo apt upgrade

sudo apt-yinstall software-properties-common

Шаг 2. Добавьте gpg-ключ в систему

sudo apt-key adv —fetch-keys ‘https://mariadb.org/mariadb_release_signing_key.asc’

1 sudo apt-key adv—fetch-keys’https://mariadb.org/mariadb_release_signing_key.asc’

Шаг 3. Добавьте репозитарий MariaDB APT

sudo add-apt-repository ‘deb http://mariadb.mirror.globo.tech/repo/10.5/ubuntu focal main’

1 sudo add-apt-repository’deb http://mariadb.mirror.globo.tech/repo/10.5/ubuntu focal main’

На выходе должно получится что-то похожее на:

Shell

Hit:1 http://ru.archive.ubuntu.com/ubuntu focal InRelease
Hit:2 http://dl.google.com/linux/chrome/deb stable InRelease
Hit:3 http://ru.archive.ubuntu.com/ubuntu focal-updates InRelease
Get:4 http://security.ubuntu.com/ubuntu focal-security InRelease
Hit:5 http://ru.archive.ubuntu.com/ubuntu focal-backports InRelease
Hit:6 https://download.docker.com/linux/ubuntu focal InRelease
Get:7 http://security.ubuntu.com/ubuntu focal-security/main i386 Packages
Get:8 http://mariadb.mirror.globo.tech/repo/10.5/ubuntu focal InRelease
Get:9 http://security.ubuntu.com/ubuntu focal-security/main amd64 Packages
Get:10 http://security.ubuntu.com/ubuntu focal-security/main Translation-en
Get:11 http://security.ubuntu.com/ubuntu focal-security/main amd64 DEP-11 Metadata
Get:12 http://security.ubuntu.com/ubuntu focal-security/universe amd64 DEP-11 Metadata
Get:13 http://mariadb.mirror.globo.tech/repo/10.5/ubuntu focal/main amd64 Packages
Fetched 783 kB in 1s (666 kB/s)
Reading package lists… Done

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

Hit1httpru.archive.ubuntu.comubuntu focal InRelease

Hit2httpdl.comlinuxchromedeb stable InRelease

Hit3httpru.archive.ubuntu.comubuntu focal-updates InRelease

Get4httpsecurity.ubuntu.comubuntu focal-security InRelease107kB

Hit5httpru.archive.ubuntu.comubuntu focal-backports InRelease

Hit6httpsdownload.docker.comlinuxubuntu focal InRelease

Get7httpsecurity.ubuntu.comubuntu focal-securitymain i386 Packages145kB

Get8httpmariadb.mirror.globo.techrepo10.5ubuntu focal InRelease6 264B

Get9httpsecurity.ubuntu.comubuntu focal-securitymain amd64 Packages348kB

Get10httpsecurity.ubuntu.comubuntu focal-securitymain Translation-en79,6kB

Get11httpsecurity.ubuntu.comubuntu focal-securitymain amd64 DEP-11Metadata24,3kB

Get12httpsecurity.ubuntu.comubuntu focal-securityuniverse amd64 DEP-11Metadata55,7kB

Get13httpmariadb.mirror.globo.techrepo10.5ubuntu focalmain amd64 Packages16,9kB

Fetched783kB in1s(666kBs)

Reading packagelists…Done

Шаг 4. Установите клиент и сервер MariaDB

sudo apt update
sudo apt install mariadb-server mariadb-client

1
2

sudo apt update

sudo apt install mariadb-server mariadb-client

Шаг 5. Установка защиты для сервера MariaDB

sudo mysql_secure_installation

1 sudo mysql_secure_installation

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

systemctl status mysql

1 systemctl status mysql

Чтобы войти в БД под root, введите команду:

mysql -u root -p

1 mysql-uroot-p

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Мой редактор ОС
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: