mysql(mariadb)主从配置

环境:
内核版本:uname -r
系统版本:cat /etc/redhat-release
数据库版本:yum info mariadb
 
配置过程:
 
数据库
ip
二进制日志开启
server-id
配置同步库
创建用于同步账号
主库
177
开启
1
wang
创建
从库
181
2
主库:
1.开启二进制日志
*打开/etc/my.cnf
*在[mysqld]后新增:log-bin=mysql-bin
2.设置id
*打开/etc/my.cnf
*在[mysqld]后新增:server-id=1
3.重启mysql,打开mysql会话,查看二进制文件名称及位置
show master status;
4.创建用于同步的账号并赋予权限
创建:create user 'wang'@'192.168.100.181' identified by 'wang';
赋予权限:grant replication slave on *.* to 'wang'@'192.168.100.181';
刷新权限:flush privileges;
查看权限:show grants for wang@192.168.100.181;
备库:
1.设置id
*打开/etc/my.cnf
*在[mysqld]后新增:server-id=2
2. 重启mysql,打开mysql会话,执行同步SQL语句(需要主服务器主机名,登陆凭据,二进制文件的名称和位置):
change master to 
master_host='192.168.100.177', 
master_user='wang', 
master_password='wang',
 master_log_file='mysql-bin.000003', 
master_log_pos=245;
3.启动同步
start slave;
4.查看slave状态,查看一下两项是否正常。
show slave statusG;
 
 
错误整理;
出现错误:Ignoring query to other database
数据库重启后正常。
其它:
在主库中/etc/my.cnf设置:
# 不同步哪些数据库
binlog-ignore-db = mysql
binlog-ignore-db = test
binlog-ignore-db = information_schema
# 只同步哪些数据库,除此之外,其他不同步
binlog-do-db = game
 
原文地址:https://www.cnblogs.com/szy2018/p/10725007.html