zoukankan      html  css  js  c++  java
  • mysql 数据库主从同步

    (参考)http://kb.cnblogs.com/page/79634/

     测试环境:2台linux PC机,         Linux version 2.6.32-5-686 (Debian 2.6.32-30)

       192.168.3.100(主)

     192.168.3.104(从)

    1 在master服务器上,给slave服务器添加帐号

      mysql >  grant replication slave on *.* to 'test'@'192.168.3.104' identified by  '123456'

      1.1   在slave上的连接master的mysql数据库,测试是否连接正常:

         mysql -h 192.168.3.100 -u test -p 123456

    2  配置master服务器的my.cnf文件

    server-id               = 1
    log_bin                 = /var/log/mysql/mysql-bin.log

    #要同步的数据库
    binlog_do_db            = test

    #忽略同步的数据库
    binlog_ignore_db        = mysql

    3  配置 slave服务器的my.cnf文件

     server-id               = 2
    log_bin                 = /var/log/mysql/mysql-bin.log
    master-host             = 192.168.3.100
    master-user             =  test
    master-password         = 123456
    master-port             = 3306
    master-connect-retry    = 60

    replicate-do-db         = test
    replicate-ignore-db     = mysql

    重启master上的mysql   (执行命令 : service mysql restart)

    重启slave上的mysql (执行命令 : service mysql restart)

    4  先把master,slave数据库数据同步,手动(用sql文件 等 方法)

    5 查看master数据库的日志位置和名称

     在master数据库中运行

    mysql> show master status;
    +------------------+----------+--------------+------------------+
    | File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
    +------------------+----------+--------------+------------------+
    | mysql-bin.000003 |     1942 | test         | mysql            |
    +------------------+----------+--------------+------------------+
    1 row in set (0.00 sec)

     在slave库中设置同步,

    在从库上设置同步

      设置连接MASTER ,

         MASTER_LOG_FILE为主库的日志文件,MASTER_LOG_POS为主库的日志Position

    1. MySQL> slave stop;      #首先停止slave
    2. MySQL> change master to master_host='192.168.3.100',
          master_user
    ='test', master_password='123456',
    3. master_log_file='binlog.000003', master_log_pos=1942;
    4. MySQL> slave start;      #再次启动slave

    查看slave运行是否正常:

    进行slave的mysql,

    mysql > show slave status\G;

    主要看这三项:

    Slave_IO_State: Waiting for master to send event
        
                 Slave_IO_Running: Yes
                Slave_SQL_Running: Yes

    如果和上面一样就表明正确!

    -----------------

    接下来 ,在master的test数据库添加一条记录,然后,查看slave中的test库是否有相应的修改

    master中test.a表

    slave中test.a表

    2表数据一样,同步成功。。。。

      

     

  • 相关阅读:
    charCodeAt() 和charAt()
    去除全角空格
    string字符串js操作
    取小数的常见操作
    js取最大最小值
    js加减法运算多出很多小数点
    js设置div透明度
    setTimeout设置不起作用
    node.js 找不到 xxx 模块解决办法
    servlet 监听器和过滤器入门
  • 原文地址:https://www.cnblogs.com/flex_fly/p/2243012.html
Copyright © 2011-2022 走看看