MyCat分库分表-主从

一、MySQL数据同步

  1、主节点配置,log-bin,指定文件名称

  2、主节点配置server-id,默认为1

    vim /etc/my.cof

    在[mysqld]下添加如下配置

log-bin=imooc_mysql
server-id=1

    重启MySQL:service mysqld restart

  

  3、从节点配置server-id,与主不能重复 

    vim /etc/my.cof

    在[mysqld]下添加如下配置

server-id=2

    重启MySQL:service mysqld restart

  4、主节点创建备份账号并授权 REPLICATION SLAVE

    mysql -uroot -p

    create user 'repl'@'%' identified by 'xxxxxxx';

    grant replication slave on *.* to 'repl'@'%';

    flush privileges;

  5、主节点锁表,保持主节点数据不会变化,用于存量数据备份和bin-log的位置的确定

    锁表:flush tables with read lock;

    查询bin-log的位置:show master status;

          

 

  6、主节点备份数据

    注意,不要退出MySQL,因为还锁着表呢。所以新开个窗口执行命令

      mysqldump --all-databases --master-data > dbdump.db -uroot -p

  7、从节点将dbdump.db复制过来。

    scp root@192.168.1.131:~/dbdump.db .

  8、从节点加载存量数据

    mysql < dbdump.db -uroot -p

  9、主节点放开锁

    unlock tables;

  10、从节点设置同步 

    change master to
    -> master_host='192.168.1.131',
    -> master_user='repl',
    -> master_password='Imooc@123456',
    -> master_log_file='imooc_mysql.000001',
    -> master_log_pos=855,

    -> get_master_public_key=1;

 

    start slave;

    

    主从完成。

 

 

  常用操作:

    stop slave;
    reset slave all;
    show slave status\G;

 

              整理自慕课网《java架构师体系课》

  

posted @ 2020-02-16 14:54  坏猫先生  阅读(182)  评论(0编辑  收藏  举报