MySql主从同步和延迟同步

时间:2023-03-09 18:38:07
MySql主从同步和延迟同步

MySql同步与延迟同步

Mysql同步

一 Mysql主服务器上操作

1 开启服务器上的log_bin功能

# vim/etc/my.cnf

增加一下两行

log_bin=mysql-bin

server_id=1

2 重启mysql

# service mysqldrestart

3 登录mysql建立账户并授权slave功能

#mysql –uroot –p

mysql> grant replication slave on *.* to 'repl'@'%' identified by'repl';

mysql> flush privileges;

4  使用mysqldump命令对mysql服务器数据库备份

# ln -s/data/mysql/bin/mysqldump /usr/bin/

#mysqldump -uroot -p --single-transaction --all-databases --master-data    =1 > /data/mysql/data/mysqlbackup20170727.sql

5  将主库服务器备份的sql文件传送到从库指定目录

#scp /data/mysql/data/mysqlbackup20170727.sql root@19.171.34.158:/    data/mysql/data

二 mysql从库服务器上的操作

1 登录mysql服务器停止slave同步操作

#mysql –uroot –p

mysql> stop slave;

2 修改从库的配置文件

#vim /etc/my.cnf

增加以下两行

log_bin=mysql-bin

server_id=2

3 重启mysql服务器

# service mysqld restart

4 将主库的备份文件导入从库中

#mysql –uroot –p < /data/mysql/data/mysqlbackup20170727.sql

5 配置从服务器与主服务器的同步

#head –n 30 /data/mysql/data/mysqlbackup20170727.sql

mysql主库binlog文件的名字及位置记录在备份的sql文件中

如下图红色框中所示:

MySql主从同步和延迟同步MySql主从同步和延迟同步

#mysql –uroot –p

mysql>change master tomaster_host='10.44.30.153',master_user='replll',master_password='mAME33888888e333CrqEqSnt8W',master_log_file='mysql-bin.000065',master_log_pos=760539299;

命令中参数解释:

master_host   mysql主服务器所在的IP地址

master_user   mysql主服务授权从库slave功能的用户

master_password  mysql主服务器授权从库salve功能用户的密码

master_log_file  mysql主服务binlog名称

master_log_pos  mysql主服务binlog中执行到的位置。

备注:master_log_file与 master_log_pos 为上图中红色框中对应的值。

6 启动从服务器的slave

mysql> start slave;

7 检查slave服务器的状态

mysql>show slave status\G;   如下图所示:红色框中两项都为yes表示主从同步成功。

MySql主从同步和延迟同步   MySql主从同步和延迟同步

二、mysql延迟同步

目的是 防止主库的误操作造成从库也被误操作。

#mysql –uroot –p

mysql>stop slave;

mysql>CHANGE MASTER TO MASTER_DELAY = 1800;单位为秒

mysql>start slave;

mysql>show slave status \G;

如下图所示: 红色框中参数的意义:

MySql主从同步和延迟同步

Master_Log_File  主库mysql的binlog文件名

Read_Master_Log_Pos 读取主库mysql的binlog文件的位置

Exec_Master_Log_Pos 从库执行主库mysql的binlog文件的位置

Seconds_Behind_Master 从库延迟主库同步的时间单位秒

SQL_Delay  设置从库服务器相较于主库服务器的延迟同步时间