概要

简单记录在Centos7.3下安装Mariadb 10.3,及简单配置

安装

Repo设置

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

写入内容

1
2
3
4
5
6
7
# MariaDB 10.3 CentOS repository list - created 2018-11-05 02:44 UTC
# http://downloads.mariadb.org/mariadb/repositories/
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.3/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

如果这里的镜像不满足你的系统需求,可以通过http://downloads.mariadb.org/mariadb/repositories/去选择生成自己系统的
镜像配置

安装命令

执行命令,等待完成即可

yum -y install MariaDB-server MariaDB-client

系统不同,命令请自行调整。

另,官方镜像下载比较慢,如需切换国内镜像请自己手动调整。

安装完成之后,用 service mysql start 命令进行启动

设置密码

执行如下命令并按照步骤设置,初始密码为空,新设置的密码是root的内网访问密码,建议将内网访问密码与
外网访问区分开,以防滥用。

mysql_secure_installation

执行完成之后,可以通过 mysql -uroot -p 并输入刚刚设置的密码进行验证密码是否设置成功

配置

远程访问

通过 mysql -uroot -p 进入数据库,创建用户

create user root@'%' identified by '123456';

授权所有数据远程访问:

grant all privileges on *.* to root@'%' identified by '123456';

授权所有数据访问并具有授权权限:

grant all privileges on *.* to root@'%' identified by '123456' with grant option;

使授权生效:

flush privileges;

做好以上几步,可以通过远程客户端链接数据库了。记得打开服务器对应数据库端口的外网访问权限。

更改数据存储目录

更改目录前先停掉mysql服务,service mysql stop

备份配置文件

cp /etc/my.cnf.d/server.cnf /etc/my.cnf.d/server.cnf.bak

增加数据目录

vim /etc/my.cnf.d/server.cnf

1
2
[mysqld]
datadir=/data/mysql

赋予目录权限

chown -R mysql:mysql /data/mysql

复制数据文件,安装完成后的数据库存储位置是/var/lib/mysql

cp -a /var/lib/mysql/* /data/mysql

重新启动mysql服务,即可访问

记录慢sql

增加server配置

vim /etc/my.cnf.d/server.cnf

1
2
3
4
5
[mysqld]
datadir=/mnt/mysql/data
slow_query_log=on
slow_query_log_file=/data/mysql/logs/slow_query_log.log
long_query_time=2

这里一定要创建logs对应的文件夹,设置完成重启服务即可

service mysql restart

特殊字符问题

微信昵称、富文本编辑等有特殊字符无法存储的问题,需要数据库支持utf8mb4字符集
这里需要注意一下,mysql的utf8字符集并不是我们通常所用的utf8,而是mysql自己定义的
一套字符集名字叫utf8,和我们通常所用的utf8字符集对应的是utf8mb4。

增加server配置

vim /etc/my.cnf.d/server.cnf

1
2
3
4
5
6
[mysqld]
datadir=/mnt/mysql/data
slow_query_log=on
slow_query_log_file=/data/mysql/logs/slow_query_log.log
long_query_time=2
character_set_server=utf8mb4

设置完成重启服务即可

service mysql restart

大小写敏感问题

Linux下大小写敏感,可以统一成小写

增加server配置

vim /etc/my.cnf.d/server.cnf

1
2
3
4
5
6
7
[mysqld]
datadir=/mnt/mysql/data
slow_query_log=on
slow_query_log_file=/data/mysql/logs/slow_query_log.log
long_query_time=2
character_set_server=utf8mb4
lower_case_table_names = 1

设置完成重启服务即可

到此,安装和配置都完成了。