【mysql】如何搭建集群主从复制

来源:互联网 发布:ubuntu启动程序命令 编辑:程序博客网 时间:2024/05/16 14:24

【前言】

       在ITOO项目组里我和大帅是mysql这块的主要负责人,领导让写个mysql主从复制的指导文档,在世超师父演示了一遍以后,我就开始了这个文档的编写。

【正文】

一、    安装mysql

      这一步不进行介绍了, 和普通安装软件一样。 不明白的百度一下有一堆教程。我参考的安装教程:传送门


 二、配置my.ini


、      2.1my.ini 所在路径:安装路径主目录下(例图:安装路径为D:mysql)

 

 

 

2.2  打开my.ini文件。更改server_id 使主服务器和从服务器server_id不同:例图中为主服务器id=1  从服务器可为 2、3、等等

 

如若文件中没有server_id,直接增加图中语句即可。

 

2.3  开启二进制日志功能

    在my.ini中添加如下语句:

bog-bin = "‘mysql安装路径’ \log\binlog.log"

 

注意:‘mysql安装路径’要更换为你实际安装mysql时选择的路径

          同时按照路径在对应目录下建立文件夹和文件

 

2.4重启mysql 服务:

    windows+R打开运行框 输入cmd确定

在dos窗口先后输入如下指令:

netstop mysql

netstart mysql


三、实现主从复制


3.1主机

   登陆主机mysql在master服务器上建立账户,并授权slave功能(以下命令均在cmd中实现)

  1. mysql –uroot –p//登录mysql  
  2. grant replication slave on *.* to 'repl'@'%' identified by 'repl';//创建从机账户,授权slave  
  3. flush privileges;//刷新权限 

 3.2从机(注意逗号和分号的区别)

登陆从机(slave)mysql在master服务器

  1. mysql –uroot –p//登录mysql  
  2. change master to   
  3. master_host="主机ip",  
  4. master_user="repl",  
  5. master_password="repl";//申请成为主机的slave  

  1. start slave;//启动从机服务器  
  2. show slave status\G;//检查slave服务器状态  

注:同样,配置完成后需重启mysql服务。Slave_IO_Running为connection,Slave_SQL_Running为yes即为成功。


四、可能出现的其他问题


、     可能出现的问题

1.如果已知主服务器不为新库而从服务器为新库,则需要执行以下操作:

  1. flush tables with read lock;//锁定表  
  2. mysqldump -uroot -p -A --master-data=1 > /tmp/master_16-09-12.sql//将主机全部数据复制到从机master_16-09-12.sql文件中  
  3. unlock tables;//备份完毕后,对数据库解锁。在主服务器建立账户并授权slave之后操作  
  1. mysql -uroot -p < master_16-09-12.sql//将之前备份的数据库导入从机库中。从服务器同步前进行 

2.  系统错误 1067 mysql服务无法启动


  

注意:

1.将my.ini 文件中default-storage-engine=INNODB改成MYISAM

2.检查my.ini文件中手书的路径有没有错误。


 【总结】

       mysql 的水很深,还有很多需要学习的地方。

1 0
原创粉丝点击