一、删除之前的MySQL/MariaDB
rpm -qa | grep MariaDB
rpm -e --nodeps MariaDB-*
rpm -qa | grep mysql
yum remove mysql mysql-server mysql-libs compat-mysql51
#如果删不掉,就一个一个删
二、两台机器分别安装MariaDB
机器:192.168.174.129 192.168.174.135
vim /etc/yum.repos.d/MariaDB.repo
内容为(修改MariaDB源,及版本):
版本可选,参考网址:网址
[mariadb]
name = MariaDB
baseurl = https://mirrors.ustc.edu.cn/mariadb/yum/10.1/centos7-amd64/
gpgkey=https://mirrors.ustc.edu.cn/mariadb/yum/RPM-GPG-KEY-MariaDB
gpgcheck=1
安装Mariadb之前,你可以先导入GPG key
rpm --import https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
三、运行命令安装
yum -y install MariaDB-server MariaDB-client
四、启动
systemctl start mariadb #启动服务
systemctl enable mariadb #设置开机启动
systemctl restart mariadb #重新启动
systemctl stop mariadb.service #停止MariaDB
五、登录数据库
mysql -uroot -p
#无密码,直接回车
六、进行MariaDB的相关简单配置
mysql_secure_installation
Enter current password for root (enter for none):【回车】
Set root password? [Y/n]【y】
New password:【填写密码】
Re-enter new password:【再次输入密码】
Remove anonymous users? [Y/n]【是否删除匿名用户,回车】
Disallow root login remotely? [Y/n]【是否禁止root远程登录,回车(后面授权配置)】
Remove test database and access to it? [Y/n]【是否删除test数据库,回车】
Reload privilege tables now? [Y/n]【是否重新加载权限表,回车】
七、始化MariaDB完成,直接登录。
mysql -uroot -p密码
八、配置MariaDB的字符集
vim /etc/my.cnf.d/server.cnf
#在[mysqld]下添加
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
九、重启Mariadb,查看MariaDB字符集
systemctl restart mariadb
mysql -uroot -p密码
show variables like "%character%";show variables like "%collation%";
十、设置权限
rant all privileges on *.* to root@'%' identified by 'password';
授予部分权限只需把all privileges改为select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file其中一部分即可。
主从搭建
注意:提前关闭两台机器的防火墙,或者开启特定的端口。
一、配置主服务器配置文件
vim /etc/my.cnf.d/server.cnf
#内容如下:
log-bin=mysql-bin
binlog-ignore-db=information_schema
binlog-ignore-db=mysql
binlog-ignore-db=performance_schema
server-id=1
二、配置从服务器配置文件
vim /etc/my.cnf.d/server.cnf
#内容如下
relay-log=/usr/local/mysql/relay-bin
read_only=1
server-id=2
三、在主服务器上创建复制用户
GRANT REPLICATION SLAVE,REPLICATION CLIENT ON *.* TO 'nifujia'@'192.168.174.135' IDENTIFIED BY 'mysql';
flush privileges;
四、 查看主服务二进制日志状态,以便在从服务器选择复制开始位置
show master status;
#File mysql-bin.000002
#Position 327
五、从服务器登录,从服务器上访问主服务器
CHANGE MASTER TO MASTER_HOST='192.168.174.129',MASTER_PORT=3306,MASTER_USER='nifujia',MASTER_PASSWORD='mysql',MASTER_LOG_FILE='mysql-bin.000002',MASTER_LOG_POS=327;
六、从服务器启动复制,查看从服务器状态
start slave;
show slave status\G;
#看到Slave_IO_Running: Yes Slave_SQL_Running: Yes 表示成功
七、验证
主服务上创建表,添加数据,从服务器同步,那么表示成功
八、备注
如果在从服务器上访问主服务器出现问题,可以用stop slave、reset slave命令重新配置。