MariaDB是一个开源关系数据库管理系统,向后兼容MySQL,你可以使用MariaDB直接替代MySQL。它由MySQL原始开发人员和社区共同开发。
在本教程中,将说明如何在CentOS 8上安装和配置MariaDB。在撰写本文时,CentOS 8存储库中可用的MariaDB版本是10.8。
如果要安装MySQL而不是MariaDB,请查看如何在CentOS安装MySQL教程。在继续学习本教程之前,请确保以root或具有sudo权限的用户登录。
在继续下一步之前,您应该访问MariaDB存储库页面,并检查是否有可用的新版本。要在CentOS 8安装MariaDB 10.8。运行执行以下步骤安装MariaDB在CentOS。
首先创建MariaDB的yum仓库配置,在/etc/yum.repos.d
目录下,我们建议将文件命名为MariaDB.repo
或者类似的名称,当然你可以使用你喜欢的名称。
你可以运行我们使用cat,tee,heredoc和管道组合的脚本创建文件/etc/yum.repos.d
/mariadb.repo
。
当创建yum仓库配置文件后,你就可以运行脚本运行命令sudo dnf install MariaDB-server
安装MariaDB数据库。
在安装过程中可能会看到类似于这样的提示Importing GPG key 0x8483C65D:
。请按Y
允许导入即可。
安装完成后,MariaDB将作为systemd服务自动启动,您可以运行命令sudo systemctl status mariadb
查看MariaDB服务的状态。
你也可以运行mysql -V
命令并打印出MariaDB服务器的版本来验证安装,命令将会输出。
mysql Ver 15.1 Distrib 10.8.2-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2
cat <<"EOF" | sudo tee /etc/yum.repos.d/mariadb.repo
# MariaDB 10.8 CentOS repository list - created 2022-09-10 06:57 UTC
# https://mariadb.org/download/
[mariadb]
name = MariaDB
baseurl = https://mirrors.aliyun.com/mariadb/yum/10.8/centos8-amd64
module_hotfixes=1
gpgkey=https://mirrors.aliyun.com/mariadb/yum/RPM-GPG-KEY-MariaDB
gpgcheck=1
EOF
sudo dnf install MariaDB-server
sudo systemctl enable mariadb
sudo systemctl start mariadb
sudo systemctl status mariadb
● mariadb.service - MariaDB 10.3 database server
Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled)
Active: active (running) since Sun 2019-12-08 21:05:26 UTC; 15s ago
...
连接MariaDB
当MariaDB安装完成后,你可能会想运行命令mysql -u root -p
登录到MariaDB服务器。
如果你登录到CentOS的用户不是root用户你将不能访问MariaDB服务器。如果你尝试使用密码登录也将被拒绝连接,因为在安装的过程我们并没有设置密码。
你将会收到类似于这样的消息(28000): Access denied for user 'root'@'localhost' (using password: YES)或者ERROR 1045 (28000): Access denied for user 'root'@'localhost'。
这意味着您无法通过提供密码来以root用户连接到MariaDB服务器。但你可以通过命令sudo mysql
连接到MariaDB服务器。
sudo mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
mysql>
如果您要使用外部程序,例如phpMyAdmin。以root用户连接到MariaDB服务器,则需要创建一个新的专用管理用户,该用户可以访问所有数据库。
GRANT ALL ON *.* TO 'admin'@'localhost' IDENTIFIED BY '你的密码' WITH GRANT OPTION;
FLUSH PRIVILEGES;
当创建新的专用用户后,你可以通过新的管理用户使用密码的方式登录,你可以在本地计算机上运行命令mysql -u admin -p
进行测试。
如果你需要配置MariaDB用户的远程访问,可参考我们的教程如何允许MySQL数据库服务器的远程连接。
结论
现在您的MariaDB服务器已启动并正在运行,并且您知道如何从命令行连接到MariaDB服务器。