mysql主从复制

怎么安装mysql数据库,这里不说了,仅仅说它的主从复制。过程例如以下:

主从最好都是同一种系统比方都是linux,或者都是windows,当然混合着也是能够成功,不解释了

1、主从server分别作下面操作

  1.1、版本号一致

  1.2、初始化表,并在后台启动mysql

  1.3、改动root的password



2、改动主servermaster:

   #vi /etc/my.cnf

       [mysqld]

       log-bin=mysql-bin   //[必须]启用二进制日志

       server-id=222       //[必须]服务器唯一ID,默认是1,一般取IP最后一段

  注意 windows下的是在安装文件夹下的my.ini,假设是my-default.ini就重命名为my.ini。其它配置一样,命令不一样,你们自己百度吧

  注意一下mysql的5.6版本号里面的server_id是下横杠"_"不是中横杠"-"。不然会报错,版本号差异还是有的



3、改动从serverslave:

   #vi /etc/my.cnf

       [mysqld]

       log-bin=mysql-bin   //[必须]启用二进制日志

       server-id=226       //[必须]服务器唯一ID,默认是1,一般取IP最后一段



4、重新启动两台server的mysql

   /etc/init.d/mysql restart

   Windows是这种

  1.点击“開始”->“执行”(快捷键Win+R)。

  2.启动:输入 net stop mysql

  3.停止:输入 net start mysql

 或者windows下能够在安装bin文件夹下运行 : "mysqladmin -uroot -p --port 3306 shutdown "进行关闭mysql后再启动  注意:--port是两个"-";

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaDM0ODU5MjUzMg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

   启动能够双击安装文件夹/bin下的mysqld.exe启动



5、在主server上建立帐户并授权slave:

   #/usr/local/mysql/bin/mysql -uroot -pmttang   

   mysql>GRANT REPLICATION SLAVE ON *.* to '授权的username'@'%' identified by 'password'; //一般不用root帐号,“%”表示全部client都可能连,仅仅要帐号。password正确,此处可用详细clientIP取代,如192.168.145.226,加强安全。



6、登录主server的mysql,查询master的状态

   mysql>show master status;

   +------------------+----------+--------------+------------------+

   | File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |

   +------------------+----------+--------------+------------------+

   | mysql-bin.000007 |      308 |              |                  |

   +------------------+----------+--------------+------------------+

   1 row in set (0.00 sec)

   注:运行完此步骤后不要再操作主serverMYSQL。防止主server状态值变化



7、配置从serverSlave:

   mysql>change master to master_host='192.168.1.222',master_user='主库的username',master_password='密码',

         master_log_file='mysql-bin.000004',master_log_pos=308;            //注意不要断开,“308”无单引號。



   Mysql>start slave;    //启动从server复制功能



8、检查从server复制功能状态:



   mysql> show slave status\G       



   *************************** 1. row ***************************



                Slave_IO_State: Waiting for master to send event



                   Master_Host: 192.168.1.222  //主server地址



                   Master_User: test         //授权帐户名。尽量避免使用root



                   Master_Port: 3306           //数据库port,部分版本号没有此行



                 Connect_Retry: 60



               Master_Log_File: mysql-bin.000007



           Read_Master_Log_Pos: 600        //#同步读取二进制日志的位置,大于等于>=Exec_Master_Log_Pos



                Relay_Log_File: ddte-relay-bin.000003



                 Relay_Log_Pos: 251



         Relay_Master_Log_File: mysql-bin.000004



              Slave_IO_Running: Yes       //此状态必须YES



             Slave_SQL_Running: Yes       //此状态必须YES

                    ......



注:Slave_IO及Slave_SQL进程必须正常执行,即YES状态,否则都是错误的状态(如:当中一个NO均属错误)。



以上操作过程,主从server配置完毕。

  

9、主从server測试:



主serverMysql,建立数据库,并在这个库中建表插入一条数据:



  mysql> create database hi_db;

  Query OK, 1 row affected (0.00 sec)



  mysql> use hi_db;

  Database changed



  mysql>  create table hi_tb(id int(3),name char(10));

  Query OK, 0 rows affected (0.00 sec)

 

  mysql> insert into hi_tb values(001,'bobu');

  Query OK, 1 row affected (0.00 sec)



  mysql> show databases;

   +--------------------+

   | Database           |

   +--------------------+

   | information_schema |

   | hi_db              |

   | mysql              |

   | test               |

   +--------------------+

   4 rows in set (0.00 sec)



从serverMysql查询:



   mysql> show databases;



   +--------------------+

   | Database           |

   +--------------------+

   | information_schema |

   | hi_db              |          //I'M here。大家看到了吧

   | mysql              |

   | test               |

   +--------------------+

   4 rows in set (0.00 sec)



   mysql> use hi_db

   Database changed

   mysql> select * from hi_tb;    //能够看到在主server上新增的详细数据

   +------+------+

   | id   | name |

   +------+------+

   |    1 | bobu |

   +------+------+

   1 row in set (0.00 sec)

最新文章

  1. centos mysql 安装及配置
  2. zabbix 分布式监控(proxy)源码安装
  3. lightning mdb 源代码分析(5)-事务控制
  4. php中封装的curl函数(抓取数据)
  5. C#开发-ftp操作方法整理
  6. Message,MessageQueue,Looper,Handler ——由view.post(runnable想到的)
  7. 01-资料管理器(Directory/DirectoryInfo操作文件夹类)
  8. 《小猪CMS(PigCms)多用户微信营销服务平台系统V6.1完美破解至尊版带微用户管理CRM+微信支付》
  9. Android高斯模糊技术,实现毛玻璃效果(转)
  10. AGC010 - C: Cleaning
  11. [LeetCode] Minimum ASCII Delete Sum for Two Strings 两个字符串的最小ASCII删除和
  12. bzoj3212 Pku3468 A Simple Problem with Integers 线段树
  13. php代理
  14. Vue系列之 => webpack-babel的配置
  15. 要求产生10个随机的字符串,每一个字符串互相不重复,每一个字符串中组成的字符(a-zA-Z0-9)也不相同,每个字符串长度为10;
  16. tomcat运行超时问题解决
  17. 第三个sprint冲刺第二阶段
  18. 关于Unity中NGUI的背包实现之Scrollview(基于Camera)
  19. Python爬虫使用MD5加密的坑
  20. 枚举+最短路 poj1062

热门文章

  1. 【LeetCode】Maximize Sum Of Array After K Negations(K 次取反后最大化的数组和)
  2. TOJ 1203: Number Sequence
  3. ActionProxy相关实现类
  4. 【java基础 6】java的发展史简介
  5. 多重部分和 poj1742
  6. get 发送ajax请求
  7. 刷题总结——路径(ssoi)
  8. P1582 倒水 (二进制)
  9. 【图论】bnuoj 52810 Splitting the Empire
  10. Codeforces 514C Watto and Mechanism(字典树)