mysql主从配置

来源:互联网 发布:ubuntu 火狐浏览器 编辑:程序博客网 时间:2024/05/21 08:51
一、安装前所做准备 
 主数据库:192.168.219.128
 从数据库:192.168.10.24
 操作系统: 
            主数据库 centos 6.5(虚拟机)
            从数据库 window7
 
centos安装mysql
1.    yum install -y mysql-server(仅仅做远程链接,不需要mysql-client) 
2.    service mysqld start 初始化数据库
3.    设置本地登录密码 mysqladmin -u root -p root
4.    成功登录,放开远程登录权限  
       # : mysql -> 
mysql -u root -p root -e "grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;
       # : mysql -> flush privileges; 
       (远程连接成功,连接失败首先排除一下防火墙的问题)
       # : service iptables stop  停掉防火墙再次进行连接,如果成功,则需要配置一下防火墙规则放开3306端口
5.    设置主数据库
       
log-bin=mysql-bin
       server-id=1
       binlog-do-db=app #需要复制的数据库,如果没有本行,即表示复制所有的数据库 
       binlog-ignore-db=information_schema
       binlog-ignore-db=mysql
      

       主数据库查询配置
       show master status;
        配置成功
6.   配置从数据库
     
      ①
 首先在主数据库配置从数据库访问权限
          
 # : GRANT REPLICATION SLAVE ON *.* TO'slave'@'192.168.10.24' IDENTIFIED BY 'slave';
               GRANT FILE,SELECT,REPLICATION SLAVE ON *.* TO'slave'@'192.168.10.24' IDENTIFIED BY 'slave'; 
      ②  
server-id=2
            replicate-do-db=app
            replicate-ignore-db=mysql
            replicate-ignore-db=information_schema
            master-host=192.168.219.128
            master-user=slave
            master-password=slave
            master-connect-retry=60 
            注:这一步遇到了坑,10.24的库拉服务拉不起来,最后追踪系统日志发现是因为master-host属性无法识别,如下图,
                   最后查到原因是因为mysql 5.17版本之后就不再支持master-host master-user master-password等一系列属性;
                   更新后的配置为:
            
server-id=2
            replicate-do-db=app
            replicate-ignore-db=mysql
            replicate-ignore-db=information_schema
            图片
完成上列my.cnf文件的配置,还需要在从库中执行此sql命令
change master to master_host='masterIP', master_user='slave', master_password='slvaePASS',MASTER_LOG_FILE='mysql-bin.000002', MASTER_LOG_POS=780;
masterIP 是 主数据库ip地址,master_user 是主数据库分配给从数据库访问的权限账号,master_password为密码;

然后执行sql
show slave status 查询是否配置成功(下图是成功进行主从配置之后的图);
 

 然后再执行sql
start slave.
发现 binlog属性提醒 :
binlog truncated in the middle of event。。再一次遇坑。。查的结果基本上都是 主数据库的pos值和从数据库的值不匹配,或者是serviceId有冲突,具体的还要查看binlog日志定位问题所在,改正后成功如上图。。。

测试主数据库添加数据,从库是否进行了同步

 成功进行同步。。。。。

最后总结这次主从配置的问题,配置其实不太难,很多主从属性是没有用上的,这里只配了最简单的属性,还有一点,出了问题,别着急,一定要看日志,一定要看日志,一定要看日志。。。重要的事情说三遍 
0 0
原创粉丝点击