MySQL5.6.48主从同步

    技术2022-07-10  134

    安装MySQL:

    两台centos7安装同样版本的mysql:

    主:192.168.124.12

    从:192.168.124.14

    注意:两台服务器的主机名不能相同(有可能从库导入主库的数据时报错)

     

    安装文档:

    https://blog.csdn.net/Doudou_Mylove/article/details/107048099

    master端操作:

    授权从库复制账号:

    mysql>grant replication slave  on *.* to 'root'@'192.168.124.14' identified by '123456';

    mysql>flush privileges;

    mysql>select user,host from mysql.user;              //MySQL查看用户

     

    所有库备份数据传到从服务器,主库解锁:

    flush tables with read lock;            #先锁表

    mysqldump -uroot -p -A >master.sql

    Enter password:

    scp master.sql 192.168.124.14:/root/

    mysql>unlock tables;

     

    修改/etc/my.cnf,插入下面两条:

    server-id=1              #唯一标识号

    log-bin=mysql-bin           #开启二进制日志

     

    重启服务:

    service mysqld  restart

    如果报错就杀掉进程重启:pkill mysqld

     

    执行下面两个操作,记录File 和 Position的值从库执行同步的时候会用:

     mysql> show variables like 'server_id';   

    mysql> show master status;

     

    slave操作

    导入从库全部数据:

    mysql -uroot -p <master.sql

     

    修改/etc/my.cnf,插入下面两条:

    server-id=2              #唯一标识号,这个数据要比主库的大

    log-bin=mysql-bin           #开启二进制日志

     

    重启服务:

    service mysqld  restart

    如果报错就杀掉进程重启:pkill mysqld

     

    停止同步并执行同步命令最后启动同步;

    mysql> stop slave;

    Query OK, 0 rows affected, 1 warning (0.00 sec)

     

    mysql> change master to master_host='192.168.124.12',master_user='root',master_password='123456',master_port=3306,master_log_file='mysql-bin.000002' ,master_log_pos=120;

    Query OK, 0 rows affected, 2 warnings (0.01 sec)

     

    mysql> start slave;

    Query OK, 0 rows affected (0.00 sec)

     

    查看slave同步信息,标注两处为YES表示同步成功:

    mysql> show slave status\G

     

    测试

    主库随便创建一个库发现从库立马同步,搞定。

     

     

     

     

     

     

     

     

     

     

     

     

    Processed: 0.012, SQL: 9