MariaDB 10.6.21(安装后实际版本为10.6.19)

确保Mysql卸载干净!

卸载自带的 MariaDB

bash 复制代码
查看版本:有则需要卸载。
rpm -qa|grep mariadb

卸载:复制文件名,执行以下指令。
rpm -e --nodeps 文件名

确认卸载:
rpm -qa|grep mariadb

添加 MariaDB yum 仓库

首先在CentOS操作系统中/etc/yum.repos.d/目录下添加 MariaDB 的YUM配置文件MariaDB.repo文件。 这里使用的是国内源,下载速度比较快些。

http://mirrors.aliyun.com/mariadb/yum/10.6.21/centos7-amd64/

国外的数据源地址是:http://yum.mariadb.org/10.6.21/centos7-amd64

使用命令行

bash 复制代码
vim /etc/yum.repos.d/mariadb.repo

添加如下内容:

bash 复制代码
[mariadb]
name = MariaDB
baseurl = http://mirrors.aliyun.com/mariadb/yum/10.6.21/centos7-amd64/
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
enabled=1
gpgcheck=1

更新缓存

bash 复制代码
yum clean all
yum makecache
yum repolist

显示可安装的版本

bash 复制代码
#这个可以看版本号
yum search mariadb --showduplicates
或
yum search mariadb

安装 MariaDB

通过yum命令安装 MariaDB。

bash 复制代码
yum  -y install MariaDB-server MariaDB-client

MariaDB 安装完毕后,立即启动数据库服务守护进程。

bash 复制代码
systemctl start mariadb

设置 MariaDB 在操作系统重启后自动启动服务。

bash 复制代码
systemctl enable mariadb

查看 MariaDB 服务当前状态。

bash 复制代码
systemctl status mariadb

对 MariaDB 进行安全配置

通过以下命令进行安全配置,根据实际情况用 Y/n 回复以下问题:设置 MariaDB 的 root 账户密码,删除匿名用户,禁用 root 远程登录,删除测试数据库,重新加载权限表。

bash 复制代码
mysql_secure_installation

本人全都是选择了Y,然后按回车。 在配置完数据库的安全配置后,可以通过以下命令查看版本,确认 MariaDB已安装成功。

bash 复制代码
mysql --version

可以通过 MariaDB 命令行登录,然后对数据库进行sql查询操作。

bash 复制代码
mysql -uroot -p

设置开机启动服务

bash 复制代码
systemctl enable mariadb

启动服务

bash 复制代码
systemctl start mariadb

重启服务

bash 复制代码
systemctl restart mariadb

停止服务

bash 复制代码
systemctl stop mariadb

查看状态

bash 复制代码
systemctl status mariadb

为 MariaDB 配置远程访问权限

在第三步中如果禁用 root 远程登录选择 Y 的话就不能在别的电脑通过navicat等工具连接到数据库,这时就需要给对应的 MariaDB 账户分配权限,允许使用该账户远程连接到MariaDB。可以输入以下命令查看账号信息:

sql 复制代码
select User, host from mysql.user;

root账户中的host项是localhost表示该账号只能进行本地登录,如果需要远程访问,我们需要修改权限,输入命令:

sql 复制代码
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'my-new-password' WITH GRANT OPTION;

修改权限。%表示针对所有IP,password表示将用这个密码登录root用户,如果想只让某个IP段的主机连接,可以修改为:

sql 复制代码
GRANT ALL PRIVILEGES ON *.* TO 'root'@'具体的IP' IDENTIFIED BY 'my-new-password' WITH GRANT OPTION;

最后别忘了:

sql 复制代码
FLUSH PRIVILEGES;

保存更改后,再看看用户账号信息:

sql 复制代码
select User, host from mysql.user;

这个时候发现root的host项是%,这说明配置成功了,我们可以用该账号进行远程访问了。

设置数据库字母大小写不敏感

bash 复制代码
vim /etc/my.cnf.d/server.cnf

在[mysqld]下加上

bash 复制代码
lower_case_table_names=1

MySQL默认字母大小写敏感的。默认值等于0的,即大小写敏感。所以修改成1就行了。

设置MariaDB数据库默认编码

MariaDB的默认编码是latin1,插入中文会乱码,因此需要将编码改为utf8。 1).登录,使用以下命令查看当前使用的字符集,应该有好几个不是utf8格式。

sql 复制代码
show variables like "%character%"; show variables like "%collation%";

2).修改的配置文件

bash 复制代码
vim /etc/my.cnf.d/client.cnf

在[client]字段里加入

bash 复制代码
default-character-set=utf8

编辑

bash 复制代码
vim /etc/my.cnf.d/server.cnf

在[mysqld]字段里加入

bash 复制代码
character-set-server=utf8

3).重启 MariaDB 配置生效。

bash 复制代码
systemctl restart mariadb

忘记了MariaDB root密码,解决办法如下:

1).先停掉MariaDB

bash 复制代码
systemctl stop mariadb.service

2).KILL掉系统里的MariaDB进程;

bash 复制代码
ps -ef | grep mariadb #查询进程PID

kill 进程PID

3).用以下命令启动MariaDB,以不检查权限的方式启动;

bash 复制代码
mysqld_safe -skip-grant-tables &

或是 修改/etc/my.cnf文件,在[mysqld]下添加 skip-grant-tables , 再启动MariaDB

bash 复制代码
systemctl restart mariadb.service

然后用空密码方式使用root用户登录MariaDB;

bash 复制代码
mysql -u root

4).修改root用户的密码;

bash 复制代码
update mysql.user set password=password('password') where User='root';
​
# ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
​
flush privileges;
quit;#或者使用exit;

5). 改完密码需要删除配置文件中的

bash 复制代码
skip-grant-tables

6).重新启动MariaDB,就可以使用新密码登录

相关推荐
想摆烂的不会研究的研究生18 分钟前
每日八股——Redis(1)
数据库·经验分享·redis·后端·缓存
码熔burning29 分钟前
MySQL 8.0 新特性爆笑盘点:从青铜到王者的骚操作都在这儿了!(万字详解,建议收藏)
数据库·mysql
猫头虎36 分钟前
2025最新OpenEuler系统安装MySQL的详细教程
linux·服务器·数据库·sql·mysql·macos·openeuler
哈库纳玛塔塔1 小时前
放弃 MyBatis,拥抱新一代 Java 数据访问库
java·开发语言·数据库·mybatis·orm·dbvisitor
@LetsTGBot搜索引擎机器人2 小时前
2025 Telegram 最新免费社工库机器人(LetsTG可[特殊字符])搭建指南(含 Python 脚本)
数据库·搜索引擎·机器人·开源·全文检索·facebook·twitter
计算机毕设VX:Fegn08953 小时前
计算机毕业设计|基于springboot + vue动物园管理系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·课程设计
冉冰学姐3 小时前
SSM校园排球联赛管理系统y513u(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·ssm 框架应用·开题报告、
Tony Bai4 小时前
【分布式系统】03 复制(上):“权威中心”的秩序 —— 主从架构、一致性与权衡
大数据·数据库·分布式·架构
wb043072015 小时前
SQL工坊不只是一个ORM框架
数据库·sql
至善迎风5 小时前
Redis完全指南:从诞生到实战
数据库·redis·缓存