mysql 数据库读写分离状态查看_mysql数据库读写分离,主从同步实现方法

mysql主从操作:

mysql数据库读写分离,主从同步实现方法

https://blog.csdn.net/go_pkqL00/article/details/87974101

mysql数据库的读写分离

https://www.jianshu.com/p/0eaacc73fa70

Mysql读写分离与主从数据库设置方案

https://baijiahao.baidu.com/s?id=1613635845071808614&wfr=spider&for=pc

————————————————————————————————————————————————————

mysql binlog_do_db参数设置的坑(碰到的问题)

原文链接:https://blog.csdn.net/cug_jiang126com/article/details/51437400

现象

在配置文件中想当然地配置成binlog_do_db=test,xx,jj,以为是三个库。结果无论什么操作都没有binlog产生

原因

mysql内部将“test,xx,jj”当成一个数据库了,结果因为我们没有这个db,自然就啥binlog都没写入了。

处理方法

正确的配置方法应该是这样

binlog_do_db=test

binlog_do_db=xx

binlog_do_db=jj

两种设置方法在show master status结果显示是完全一致的,也不报错,其他的过滤参数设置方法应该差不多,这真是太坑了!

————————————————————————————————————————————————————

———————————————成功方案—————————————————————————————————

1. 在主从主机分别建立相同的数据库,或者将主的数据备份导入到从主机还原

2.在主Mysql服务器中修改

vim /etc/my.cnf

主服务器master记录数据库操作日志到Binary log,

从服务器开启i/o线程将二进制日志记录的操作同步到relay log(存在从服务器的缓存中),

另外sql线程将relay log日志记录的操作在从服务器执行

# Replication Master Server (default)

# binary logging is required for replication

###log-bin=mysql-bin

log-bin=master-bin  #bin log日志文件名

log-bin-index=master-bin.index #bin log日志文件索引名

binlog-do-db=cloudcollect  #需要记录日志的数据库,如果有多个可以重复写多行

# binary logging format - mixed recommended

binlog_format=mixed

# required unique id between 1 and 2^32 - 1

# defaults to 1 if master-host is not set

# but will not function as a master if omitted

server-id       = 1  #主服务Id 必须与从不同

3.重启mysql服务

service mysql restart

4.检查配置效果,进入主数据库并执行

mysql> SHOW MASTER STATUS;

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

5.配置从服务器的 my.cnf

在[mysqld]节点下面添加:

# Replication Master Server (default)

# binary logging is required for replication

log-bin=mysql-bin

# binary logging format - mixed recommended

binlog_format=mixed

relay-log=slave-relay-bin   #从log日志文件名

relay-log-index=slave-relay-bin.index #从log日志文件索引名

replicate-do-db=cloudcollect #需要同步的日志的数据库,如果有多个可以重复写多行

# required unique id between 1 and 2^32 - 1

# defaults to 1 if master-host is not set

# but will not function as a master if omitted

server-id       = 2   #从服务Id 必须与从不同

service mysql restart

6.接下来配置两个数据库的关联

首先我们先建立一个操作主从同步的数据库用户,切换到主数据库执行:

mysql> create user repl;

mysql> GRANT REPLICATION SLAVE ON *.* TO 'repl'@'从xxx.xxx.xxx.xx' IDENTIFIED BY 'mysql';

mysql> flush privileges;

建立用户repl 授予同步到从xxx.xxx.xxx.xxx的REPLICATION SLAVE权限,这个权限是针对主库的所有表的,其中xxx就是从服务器的ip地址。

7.切换到从数据库执行: master_log_file='master-bin.000001',master_log_pos=0;可能根据步骤4 SHOW MASTER STATUS;中的内容配置

mysql> change master to master_host='主xxx.xxx.xxx.xx',master_port=3306,master_user='repl',master_password='mysql',master_log_file='master-bin.000001',master_log_pos=0;

mysql> start slave;

停止主从同步的命令为:

mysql> stop slave;

1

查看状态命令,\G表示换行查看

mysql> show slave status \G;

——————————————————————————————————————————————————————————

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值