MySql主主(主从)同步配置详解

由于终端系统中需要查询大量的报表,为了分担大部分的查询压力,因此系统设计Master-Salve复制架构也能够最好的将读、写操作分离。

       Master库地址:10.10.10.41

       Slave库地址:10.10.10.20

3.6.1 MasterSlave架构配置

1)创建同步用户

进入mysql创建一个同步账户,此账户用来同步数据库的数据

脚本:mysql>create user ‘sync’@10.10.10.20’ identified by ‘syncupdate’;

释义:创建sync账户,定义密码为syncupdate,并且设置只允许在10.10.10.20这台服务器上登录

 

2)设置账户权限

为同步账户设置相应的权限

脚本:GRANT SELECT, FILE, REPLICATION SLAVE ,REPLICATION CLIENT ON *.* TO 'sync'@'10.10.10.20' IDENTIFIED BY 'syncupdate' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0;

释义:为sync用户设定了SELECTFILEREPLICATION SLAVEREPLICATION CLIENT在所有数据库的所有表上,并且只允许同步用户在10.10.10.20服务器上使用syncupdate密码进行登录

3)生效权限

创建完用户和分配完权限之后,刷新权限,让授权操作生效

脚本:flush privileges

4)复制数据文件

要复制数据文件,首先停止MasterSlave上的mysqlapache服务

脚本:shell>service mysqld stop    -----停止数据库服务

脚本:shell>/data/zdxt/web/bin/apachectl stop          -----停止apache服务

开始复制数据库文件,将master中的hek数据库文件复制到slave中相同目录下

Master中的hek数据库目录:/data/zdxt/db/data/hek

将此目录复制到Slave的相同目录下

复制结束后,修改Slave /data/zdxt/db/data/hek目录的权限

脚本:shell>chmod –R 777 /data/zdxt/db/data/hek

脚本:shell>chown –R mysql:mysql /data/zdxt/db/data/hek

5)修改Slave配置文件

修改Salve中的my.cnf的配置,将[mysqld]中的server-id设置成不是1的值即可

脚本:shell>vi /etc/my.cnf

设置:server-id       = 20

6Master启动mysqlApache

脚本:shell>/data/zdxt/web/bin/apachectl start       --------启动apache

脚本:shell>service mysqld start        -------------启动mysql

7)记入二进制日志文件名和日志偏移量

进入mysql,查看master status

脚本:mysql>show master status

8)启动Slave

启动Slave,依据在Master上设置的同步账户,在Slave中进行同步授权:

脚本:mysql> change master to master_host='10.10.10.41',master_user='sync',master_password='syncupdate',master_log_file='mysql-bin.000007',master_log_pos=295;

其中的master_log_filemaster_log_pos就通过7)步骤得出的值

9)启动Slave进程

脚本:mysql>show slave status;

看到如下提示证,证明Master-Slave架构设置成功:

10)验证Master-Slave是否作用

Master上设置更新一条数据记录,看看Slave上的是否会更新

 

3.6.2 Master-Slave配置错误解决

示例图1

       设置完Master-Slave之后提示如图结果,可能是由于在Master上的同步账号权限设置出现问题,建议重新进行设置

 

示例图2

       设置完Master-Slave之后提示如图结果,是由于在授权认证时出现问题

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值