Cài đặt MariaDB 10.8 CentOS 7 - Install MariaDB 10.8 CentOS 7

Trong hướng dẫn này, chúng ta sẽ tìm hiểu về cách install MariaDB 10.8 CentOS 7, bên cạnh đó là cách định cấu hình và sử dụng kèm theo. MariaDB là một tùy chọn thay thế cho MySQL. Vào thời điểm ra mắt, MariaDB tương thích đến 99.9% và về cơ bản là một nhánh của MySQL. Tuy nhiên, theo thời gian, hai hệ thống quản lý cơ sở dữ liệu này đã tách biệt nhau và hiện nay có hàng trăm sự không tương thích giữa các cơ sở dữ liệu MySQL và MariaDB.

MariaDB là giải pháp cơ sở dữ liệu mặc định trong các hệ thống CentOS 7/RHEL 7 Linux. Hướng dẫn này chỉ nên được sử dụng cho các cài đặt mới và không dành cho việc nâng cấp từ phiên bản cũ của máy chủ MariaDB. Hãy lưu ý rằng hướng dẫn này áp dụng cho các thiết lập máy chủ cơ sở dữ liệu đơn lẻ sử dụng MariaDB. Nếu bạn quan tâm đến việc triển khai một cụm MariaDB Galera có khả năng cao và đa nút, hãy xem xét sử dụng cài đặt MariaDB Galera Cluster.

Một số tính năng nổi trội của MariaDB 10.8

Một số tính năng và cải tiến trong MariaDB 10.8 bao gồm:

  • Cải tiến redo log của InnoDB - tự động thay đổi kích thước innodb_buffer_pool_chunk_size và cải tiến redo log để tăng khả năng chịu tải đồng thời.
  • ALTER TABLE không gây trễ trong sao chép - ALTER TABLE giờ đây sẽ được sao chép và bắt đầu thực thi trên các bản sao khi nó bắt đầu thực thi trên máy chủ chính, không phải khi nó hoàn thành.
  • Tự động tạo phân vùng - Bạn có thể sử dụng từ khóa AUTO để thông báo cho máy chủ tự động tạo thêm các phân vùng lịch sử.
  • Độ chính xác cao hơn trong biểu đồ JSON - Biểu đồ trong bảng thống kê giờ đây chính xác hơn và được lưu trữ dưới dạng JSON, không phải dạng nhị phân.
  • Chỉ số giảm dần - Các cột riêng lẻ trong chỉ số giờ có thể được sắp xếp một cách rõ ràng theo thứ tự tăng dần hoặc giảm dần.
  • Cải tiến Spider Storage Engine - Bây giờ bạn có thể khai báo kết nối Spider bằng cách sử dụng các thuộc tính REMOTE_SERVER, REMOTE_DATABASE và REMOTE_TABLE mà không cần sử dụng trường COMMENT.
  • Hỗ trợ GTID trong mysqlbinlog - mariadb-binlog (trước đây là mysqlbinlog) hiện giờ hỗ trợ cả việc lọc sự kiện theo dải GTID thông qua các tùy chọn –start-position và –stop-position và xác minh thứ tự của GTID trong nhật ký nhị phân thông qua –gtid-strict-mode.
  • Hỗ trợ i18n cải thiện trên Windows - Trên các hệ thống Windows 10+ đã được khắc phục một số vấn đề liên quan đến đầu vào và đầu ra Unicode trong máy khách.
  • Tham số INOUT trong Stored Procedures - Thêm hỗ trợ cho các tham số có các chất liệu IN, OUT và INOUT.
  • Và còn nhiều tính năng khác nữa đã được thêm vào.

Install MariaDB 10.8 CentOS 7

Các bước được cung cấp trong phần này sẽ giúp bạn cài đặt, cấu hình và sử dụng MariaDB 10.8 trên CentOS 7/RHEL 7 Linux. Việc cài đặt sẽ thất bại nếu bạn có bất kỳ hệ thống quản lý cơ sở dữ liệu nào khác dựa trên MySQL trên hệ điều hành. Đảm bảo hệ thống của bạn sạch sẽ trước khi bạn tiến hành theo hướng dẫn này.

Cập nhật và khởi động lại hệ thống:

sudo yum -y update
sudo reboot -f

Đợi cho đến khi hệ thống của bạn được khởi động lại, sau đó bắt đầu quá trình install MariaDB 10.8 CentOS 7 bằng bước tiếp theo.

Bước 1: Thêm kho lưu trữ YUM MariaDB 

Chúng ta sẽ sử dụng kho lưu trữ YUM chính thức của MariaDB cho các hệ thống dựa trên RHEL được thêm vào bằng cách chạy các lệnh sau.

curl -LsS -O https://downloads.mariadb.com/MariaDB/mariadb_repo_setup
sudo bash mariadb_repo_setup --mariadb-server-version=10.8

Kịch bản tự động hóa quá trình thiết lập kho lưu trữ và nhập các khóa GPG của MariaDB.

[info] Checking for script prerequisites.
[info] Repository file successfully written to /etc/yum.repos.d/mariadb.repo
[info] Adding trusted package signing keys...
/etc/pki/rpm-gpg ~
~
[info] Successfully added trusted package signing keys
[info] Cleaning package cache...
Loaded plugins: fastestmirror
Cleaning repos: base droplet-agent extras mariadb-main mariadb-maxscale mariadb-tools updates
Cleaning up list of fastest mirrors

Liệt kê tất cả các kho lưu trữ có sẵn trên hệ thống.

$ sudo yum clean all
$ sudo yum repolist
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: packages.oit.ncsu.edu
* extras: mirror.facebook.net
* updates: mirrors.tripadvisor.com
repo id repo name status
base/7/x86_64 CentOS-7 - Base 10072
droplet-agent/x86_64 DigitalOcean Droplet Agent 11
extras/7/x86_64 CentOS-7 - Extras 512
mariadb-main MariaDB Server 84
mariadb-maxscale MariaDB MaxScale 4
mariadb-tools MariaDB Tools 16
updates/7/x86_64 CentOS-7 - Updates 4050
repolist: 14749

Bước 2: Install MariaDB 10.8 CentOS 7/RHEL 7

Các gói MariaDB 10.8 có sẵn trên kho lưu trữ mà chúng ta vừa thêm vào. Hãy cài đặt các gói máy chủ và máy khách.

sudo yum install MariaDB-server MariaDB-client MariaDB-backup

Xác nhận phiên bản của các gói máy chủ và máy khách MariaDB đang được cài đặt và tiếp tục nếu mọi thứ đều ổn.

Dependencies Resolved

======================================================================================================================================================================================================
Package Arch Version Repository Size
======================================================================================================================================================================================================
Installing:
MariaDB-backup x86_64 10.8.3-1.el7.centos mariadb-main 7.0 M
MariaDB-client x86_64 10.8.3-1.el7.centos mariadb-main 15 M
MariaDB-compat x86_64 10.8.3-1.el7.centos mariadb-main 2.2 M
replacing mariadb-libs.x86_64 1:5.5.68-1.el7
MariaDB-server x86_64 10.8.3-1.el7.centos mariadb-main 26 M
Installing for dependencies:
MariaDB-common x86_64 10.8.3-1.el7.centos mariadb-main 81 k
boost-program-options x86_64 1.53.0-28.el7 base 156 k
galera-4 x86_64 26.4.11-1.el7.centos mariadb-main 9.9 M
libaio x86_64 0.3.109-13.el7 base 24 k
libpmem x86_64 1.5.1-2.1.el7 base 59 k
lsof x86_64 4.87-6.el7 base 331 k
pcre2 x86_64 10.23-2.el7 base 201 k
perl x86_64 4:5.16.3-299.el7_9 updates 8.0 M
perl-Carp noarch 1.26-244.el7 base 19 k
perl-Compress-Raw-Bzip2 x86_64 2.061-3.el7 base 32 k
perl-Compress-Raw-Zlib x86_64 1:2.061-4.el7 base 57 k
perl-DBI x86_64 1.627-4.el7 base 802 k
perl-Data-Dumper x86_64 2.145-3.el7 base 47 k
perl-Encode x86_64 2.51-7.el7 base 1.5 M
perl-Exporter noarch 5.68-3.el7 base 28 k
perl-File-Path noarch 2.09-2.el7 base 26 k
perl-File-Temp noarch 0.23.01-3.el7 base 56 k
perl-Filter x86_64 1.49-3.el7 base 76 k
perl-Getopt-Long noarch 2.40-3.el7 base 56 k
perl-HTTP-Tiny noarch 0.033-3.el7 base 38 k
perl-IO-Compress noarch 2.061-2.el7 base 260 k
perl-Net-Daemon noarch 0.48-5.el7 base 51 k
perl-PathTools x86_64 3.40-5.el7 base 82 k
perl-PlRPC noarch 0.2020-14.el7 base 36 k
perl-Pod-Escapes noarch 1:1.04-299.el7_9 updates 52 k
perl-Pod-Perldoc noarch 3.20-4.el7 base 87 k
perl-Pod-Simple noarch 1:3.28-4.el7 base 216 k
perl-Pod-Usage noarch 1.63-3.el7 base 27 k
perl-Scalar-List-Utils x86_64 1.27-248.el7 base 36 k
perl-Socket x86_64 2.010-5.el7 base 49 k
perl-Storable x86_64 2.45-3.el7 base 77 k
perl-Text-ParseWords noarch 3.29-4.el7 base 14 k
perl-Time-HiRes x86_64 4:1.9725-3.el7 base 45 k
perl-Time-Local noarch 1.2300-2.el7 base 24 k
perl-constant noarch 1.27-2.el7 base 19 k
perl-libs x86_64 4:5.16.3-299.el7_9 updates 690 k
perl-macros x86_64 4:5.16.3-299.el7_9 updates 44 k
perl-parent noarch 1:0.225-244.el7 base 12 k
perl-podlators noarch 2.5.1-3.el7 base 112 k
perl-threads x86_64 1.87-4.el7 base 49 k
perl-threads-shared x86_64 1.43-6.el7 base 39 k
socat x86_64 1.7.3.2-2.el7 base 290 k

Transaction Summary
======================================================================================================================================================================================================
Install 4 Packages (+42 Dependent packages)

Total download size: 73 M
Is this ok [y/d/N]: y

Bằng lệnh rpm, bạn có thể truy vấn chi tiết về gói.

$ rpm -qi MariaDB-server
Name : MariaDB-server
Version : 10.8.3
Release : 1.el7.centos
Architecture: x86_64
Install Date: Wed Jul 13 22:21:21 2022
Group : Applications/Databases
Size : 129149443
License : GPLv2
Signature : DSA/SHA1, Thu May 19 12:55:05 2022, Key ID cbcb082a1bb943db
Source RPM : MariaDB-server-10.8.3-1.el7.centos.src.rpm
Build Date : Wed May 18 13:26:15 2022
Build Host : centos74-amd64
....

Bước 3: Định cấu hình cho MariaDB trên CentOS 7/RHEL 7

Khởi động và kích hoạt dịch vụ cơ sở dữ liệu MariaDB.

$ sudo systemctl enable --now mariadb
Created symlink /etc/systemd/system/multi-user.target.wants/mariadb.service → /usr/lib/systemd/system/mariadb.service.

Kiểm tra trạng thái dịch vụ để đảm bảo rằng nó đang thực sự hoạt động.

$ systemctl status mariadb
● mariadb.service - MariaDB 10.8.3 database server
Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled)
Drop-In: /etc/systemd/system/mariadb.service.d
└─migrated-from-my.cnf-settings.conf
Active: active (running) since Wed 2022-07-13 22:23:07 UTC; 24s ago
Docs: man:mariadbd(8)
https://mariadb.com/kb/en/library/systemd/
Process: 8189 ExecStartPost=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
Process: 8163 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= || VAR=`cd /usr/bin/..; /usr/bin/galera_recovery`; [ $? -eq 0 ] && systemctl set-environment _WSREP_START_POSITION=$VAR || exit 1 (code=exited, status=0/SUCCESS)
Process: 8161 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
Main PID: 8174 (mariadbd)
Status: "Taking your SQL requests now..."
CGroup: /system.slice/mariadb.service
└─8174 /usr/sbin/mariadbd

Jul 13 22:23:07 centos7.example.io mariadbd[8174]: 2022-07-13 22:23:07 0 [Note] InnoDB: File './ibtmp1' size is now 12.000MiB.
Jul 13 22:23:07 centos7.example.io mariadbd[8174]: 2022-07-13 22:23:07 0 [Note] InnoDB: log sequence number 45505; transaction id 14
Jul 13 22:23:07 centos7.example.io mariadbd[8174]: 2022-07-13 22:23:07 0 [Note] Plugin 'FEEDBACK' is disabled.
Jul 13 22:23:07 centos7.example.io mariadbd[8174]: 2022-07-13 22:23:07 0 [Note] InnoDB: Loading buffer pool(s) from /var/lib/mysql/ib_buffer_pool
Jul 13 22:23:07 centos7.example.io mariadbd[8174]: 2022-07-13 22:23:07 0 [Note] Server socket created on IP: '0.0.0.0'.
Jul 13 22:23:07 centos7.example.io mariadbd[8174]: 2022-07-13 22:23:07 0 [Note] Server socket created on IP: '::'.
Jul 13 22:23:07 centos7.example.io mariadbd[8174]: 2022-07-13 22:23:07 0 [Note] InnoDB: Buffer pool(s) load completed at 220713 22:23:07
Jul 13 22:23:07 centos7.example.io mariadbd[8174]: 2022-07-13 22:23:07 0 [Note] /usr/sbin/mariadbd: ready for connections.
Jul 13 22:23:07 centos7.example.io mariadbd[8174]: Version: '10.8.3-MariaDB' socket: '/var/lib/mysql/mysql.sock' port: 3306 MariaDB Server
Jul 13 22:23:07 centos7.example.io systemd[1]: Started MariaDB 10.8.3 database server.
...

Kiểm tra phiên bản máy khách bằng lệnh mariadb:

$ mariadb -V
mariadb Ver 15.1 Distrib 10.8.3-MariaDB, for Linux (x86_64) using readline 5.1

Sử dụng tập lệnh mariadb-secure-installation để bảo mật máy chủ cơ sở dữ liệu MariaDB của bạn.

$ sudo mariadb-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
haven't set the root password yet, you should just press enter here.

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

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

You already have your root account protected, so you can safely answer 'n'.

Switch to unix_socket authentication [Y/n] y
Enabled successfully!
Reloading privilege tables..
... Success!


You already have your root account protected, so you can safely answer 'n'.

Change the root password? [Y/n] y
New password: <INPUT-PASSWORD>
Re-enter new password: <CONFIRM-PASSWORD>
Password updated successfully!
Reloading privilege tables..
... Success!


By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
production environment.

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.

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

By default, MariaDB comes with a database named 'test' that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.

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

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

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!

Việc truy cập vào giao diện dòng lệnh của MariaDB chỉ nên được thực hiện bằng mật khẩu.

$ mysql -u root
ERROR 1698 (28000): Access denied for user 'root'@'localhost'

$ mysql -u root -p
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 14
Server version: 10.8.3-MariaDB MariaDB Server

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)]> SELECT VERSION ();
+----------------+
| VERSION () |
+----------------+
| 10.8.3-MariaDB |
+----------------+
1 row in set (0.000 sec)

Bước 4: Tạo cơ sở dữ liệu/người dùng thử nghiệm trong MariaDB

Chúng ta có thể tạo một cơ sở dữ liệu kiểm tra bằng lệnh sau đây:

MariaDB [(none)]> CREATE DATABASE mydb;
Query OK, 1 row affected (0.001 sec)

Kiểm tra xem cơ sở dữ liệu đã được tạo hay chưa bằng cách hiển thị tất cả các cơ sở dữ liệu có sẵn.

MariaDB [(none)]> SHOW DATABASES;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
| mydb |
+--------------------+
5 rows in set (0.000 sec)

Nếu quá trình thiết lập diễn ra như dự kiến, lúc này bạn đã install MariaDB 10.8 CentOS 7/RHEL 7 thành công.

Mọi người cũng tìm kiếm: mariadb 10.8, install mariadb ubuntu, install mariadb centos 7

Các gói dịch vụ Cloud VPS của KDATA mang đến cho bạn nhiều lựa chọn về hiệu suất cũng như khả năng lưu trữ, mọi nhu cầu về doanh nghiệp đều được đáp ứng. KDATA đảm bảo khả năng uptime lên đến 99,99%, toàn quyền quản trị và free backup hằng ngày. Tham khảo ngay các gói dịch vụ Cloud VPS:

https://kdata.vn/cloud-vps

👉 Liên hệ ngay KDATA hỗ trợ tận tình, support tối đa, giúp bạn trải nghiệm dịch vụ giá hời chất lượng tốt nhất