Linux 安装 MariaDB

CentOS 7 自带的 MariaDB 是 5.5 版本的,使用 yum install mariadb-server 命令安装的默认版本是 5.5 的,这是因为系统默认源只有 5.5 的版本。

安装准备

检查是否安装过 MariaDB 或 MySQL

rpm -qa | grep mariadb
或
yum list installed | grep mariadb

rpm -qa | grep -i mysql
或
yum list installed | grep mysql

若存在,则卸载

rpm -e mariadb-libs-5.5.60-1.el7_5.x86_64
或
yum remove mariadb-libs-5.5.60-1.el7_5.x86_64

全部删除
rpm -e --nodeps mariadb-*

若卸载错误,则使用以下命令

rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64

yum 安装

添加源:

Choose a distribution:CentOS 7 (x86_64)
Choose a MariaDB Server version:0.8
Mirror:Alibaba Cloud

Download MariaDB Server - MariaDB.org

复制以下 MariaDB 源 

# MariaDB 10.8 CentOS repository list - created 2022-09-28 02:55 UTC
# https://mariadb.org/download/
[mariadb]
name = MariaDB
baseurl = https://mirrors.aliyun.com/mariadb/yum/10.8/centos7-amd64
gpgkey=https://mirrors.aliyun.com/mariadb/yum/RPM-GPG-KEY-MariaDB
gpgcheck=1

添加 MariDB 源

执行命令,将 MariaDB 官网复制的源代码粘贴进去:

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

保存并退出:

Esc ==> :wq ==> Enter

安装

yum install MariaDB-server MariaDB-client

其他命令:
yum install mariadb mariadb-server
或
yum install -y MariaDB-server MariaDB-client

建议使用最后一个命令安装,不用询问

配置 MariaDB

mariadb-secure-installation

错误: 

原因:未启动数据库 

Enter current password for root (enter for none): 输入当前的root密码(默认空),直接回车

Set root password? [Y/n] 设置新密码,y (Change the root password? [Y/n] y)

Remove anonymous users? [Y/n] 移除匿名用户,y

Disallow root login remotely? [Y/n] 禁止root用户远程登录,y

Remove test database and access to it? [Y/n] 移除测试数据库,y

Reload privilege tables now? [Y/n] y

启动 MariaDB

启动:

systemctl start mariadb

设置开机启动:

systemctl enable mariadb

配置文件位置:

/etc/my.cnf 

Navicat 连接远程 MariaDB 出现错误

错误信息:

错误原因

1.可能是当前的连接账号是否支持远程链接
2.防护墙处于开启状态

解决办法

检查当前的连接账号是否支持远程链接

步骤1:登录

mysql -uroot -p

步骤2:选择数据库

选择mysql数据,因为用户表(user)在这个数据库里

use mysql

步骤3:查询User表

select `user`,authentication_string,`Host` from `user`;

 

步骤4:增加root允许其他主机进行连接

执行下面这段语句

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456';

123456为连接密码,%为任意主机,就是任意主机可以通过用户名root + 密码12345 进行连接,你也可以指定只允许某IP的主机进行连接。

步骤5:重新加载用户权限

flush privileges;

检查防护墙状态:

步骤6:查看当前防护墙状态

firewall-cmd --state

在这里插入图片描述
running 表示开启状态

步骤7:关闭防火墙

提示:如果防火墙已经关闭了,这一步可以省略

systemctl stop firewalld

步骤8:再次查看防火墙状态

在这里插入图片描述
not running表示防火墙处于关闭状态

注意:当前是虚拟机环境下才需要关闭防火墙,如果是云服务器的话在安全组把3306端口放行即可

步骤9:再次连接

参考文章:https://bloghut.blog.csdn.net/article/details/114218119 

猜你喜欢

转载自blog.csdn.net/weixin_57542177/article/details/127085141