mysql 块复制_mysql复制

在主库和备库创建复制账号

grant replication slave, replication client on *.* to repl@'%' identified by '123456';

配置Master的log_bin

# 二进制日志名称

log_bin = /usr/local/mysql/data/binlog/mysql-bin

# 服务器id

server_id = 100

# 二进制日志保留多少天

expire_logs_days = 7

查看Master 状态

mysql> show master status\G

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

File: mysql-bin.000005

Position: 120

Binlog_Do_DB:

Binlog_Ignore_DB:

Executed_Gtid_Set:

1 row in set (0.00 sec)

配置Slave log_bin

# 二进制日志名称

log_bin = /usr/local/mysql/data/binlog/mysql-bin

# 服务器id

server_id = 200

# 中继日志位置

relay_log = /usr/local/mysql/data/mysql-relay-bin

# 将重放事件也记录到本地二进制日志中

log_slave_updates = 1

# 从库只读

#read_only = 1

# 跳过从库自动启动复制

skip_slave_start = 1

# 从库同步超时重连时间

slave_net_timeout = 60

Slave设置Master地址参数

提示:MASTER_LOG_FILE,MASTER_LOG_POS根据master状态设置

CHANGE MASTER TO MASTER_HOST = '193.168.1.110',

MASTER_USER = 'repl',

MASTER_PASSWORD = '123456',

Replicate_Do_DB = 'blog',

MASTER_LOG_FILE = 'mysql-bin.000005',

MASTER_LOG_POS = 120;

Slave开始复制

start slave;

查看Slave状态

mysql> show slave status\G

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

Slave_IO_State: Waiting for master to send event # Slave IO线程状态

Master_Host: 193.168.1.110 # Master 地址

Master_User: repl # Master 复制账号

Master_Port: 3306 # Master 端口

Connect_Retry: 60 # 重连间隔时间

Master_Log_File: mysql-bin.000005 # IO线程正在读取的Master二进制日志的名称

Read_Master_Log_Pos: 867 # 本机IO线程读取主服务器二进制日志位置

Relay_Log_File: mysql-relay-bin.000002 # SQL线程当前读取执行的中继日志文件的名称

Relay_Log_Pos: 1030 # SQL线程读取执行中继日志的位置

Relay_Master_Log_File: mysql-bin.000005 # SQL线程执行大部分近期事件的主服务器二进制日志文件的名称

Slave_IO_Running: Yes # I/O线程是否启动并成功连接到主服务器上

Slave_SQL_Running: Yes # SQL线程是否启动

Replicate_Do_DB: # 复制的数据库列表,逗号隔开

Replicate_Ignore_DB: # 不复制的数据库列表

Replicate_Do_Table: # 复制的表的列表

Replicate_Ignore_Table: # 不复制的表的列表

Replicate_Wild_Do_Table: # 复制的表的列波,支持like条件通配符

Replicate_Wild_Ignore_Table: # 不复制的表的列波,支持like条件通配符

Last_Errno: 0 # 最后错误编号

Last_Error: # 最后错误提示

Skip_Counter: 0 # 最近被使用的用于SQL_SLAVE_SKIP_COUNTER的值

Exec_Master_Log_Pos: 867 # SQL线程执行来自master的二进制日志最后一个事件位置

Relay_Log_Space: 1203 # 所有原有的中继日志结合起来的总大小

Until_Condition: None # 复制until条件,在stop slave,start slave(不带until)或server重启的时候会自动重置

Until_Log_File: # 复制停止的文件名

Until_Log_Pos: 0 # 复制停止的文件位置

Master_SSL_Allowed: No # SSL

Master_SSL_CA_File:

Master_SSL_CA_Path:

Master_SSL_Cert:

Master_SSL_Cipher:

Master_SSL_Key:

Seconds_Behind_Master: 0 # 主备延迟时间,单位秒

Master_SSL_Verify_Server_Cert: No

Last_IO_Errno: 0 # 最后IO线程错误编号

Last_IO_Error: # 最后IO线程错误提示

Last_SQL_Errno: 0 # 最后SQL线程错误编号

Last_SQL_Error: # 最后SQL线程错误提示

Replicate_Ignore_Server_Ids: # 忽略复制服务器ID

Master_Server_Id: 100 # Master服务器ID

Master_UUID: 36167c6c-d911-11e2-84fc-0800275fc1cb # Master服务器UUID

Master_Info_File: /usr/local/mysql/data/master.info # Master服务器信息

SQL_Delay: 0

SQL_Remaining_Delay: NULL

Slave_SQL_Running_State: Slave has read all relay log; waiting for the slave I/O thread to update it # Slave SQL 执行状态提示

Master_Retry_Count: 86400

Master_Bind:

Last_IO_Error_Timestamp: # 最后IO线程错误时间

Last_SQL_Error_Timestamp: # 最后SQL执行错误时间

Master_SSL_Crl:

Master_SSL_Crlpath:

Retrieved_Gtid_Set:

Executed_Gtid_Set:

Auto_Position: 0

1 row in set (0.00 sec)

字段太多,整理了一下

Auto_Position : 0

Connect_Retry : 60 # 重连间隔时间

Exec_Master_Log_Pos : 867 # SQL线程执行来自master的二进制日志最后一个事件位置

Executed_Gtid_Set :

Last_Errno : 0 # 最后错误编号

Last_Error : # 最后错误提示

Last_IO_Errno : 0 # 最后IO线程错误编号

Last_IO_Error : # 最后IO线程错误提示

Last_IO_Error_Timestamp : # 最后IO线程错误时间

Last_SQL_Errno : 0 # 最后SQL线程错误编号

Last_SQL_Error : # 最后SQL线程错误提示

Last_SQL_Error_Timestamp : # 最后SQL执行错误时间

Master_Bind :

Master_Host : 193.168.1.110 # Master 地址

Master_Info_File : /usr/local/mysql/data/master.info # Master服务器信息

Master_Log_File : mysql-bin.000005 # IO线程正在读取的Master二进制日志的名称

Master_Port : 3306 # Master 端口

Master_Retry_Count : 86400

Master_SSL_Allowed : No # SSL

Master_SSL_CA_File :

Master_SSL_CA_Path :

Master_SSL_Cert :

Master_SSL_Cipher :

Master_SSL_Crl :

Master_SSL_Crlpath :

Master_SSL_Key :

Master_SSL_Verify_Server_Cert : No

Master_Server_Id : 100 # Master服务器ID

Master_UUID : 36167c6c-d911-11e2-84fc-0800275fc1cb # Master服务器UUID

Master_User : repl # Master 复制账号

Read_Master_Log_Pos : 867 # 本机IO线程读取主服务器二进制日志位置

Relay_Log_File : mysql-relay-bin.000002 # SQL线程当前读取执行的中继日志文件的名称

Relay_Log_Pos : 1030 # SQL线程读取执行中继日志的位置

Relay_Log_Space : 1203 # 所有原有的中继日志结合起来的总大小

Relay_Master_Log_File : mysql-bin.000005 # SQL线程执行大部分近期事件的主服务器二进制日志文件的名称

Replicate_Do_DB : # 复制的数据库列表,逗号隔开

Replicate_Do_Table : # 复制的表的列表

Replicate_Ignore_DB : # 不复制的数据库列表

Replicate_Ignore_Server_Ids : # 忽略复制服务器ID

Replicate_Ignore_Table : # 不复制的表的列表

Replicate_Wild_Do_Table : # 复制的表的列波,支持like条件通配符

Replicate_Wild_Ignore_Table : # 不复制的表的列波,支持like条件通配符

Retrieved_Gtid_Set :

SQL_Delay : 0

SQL_Remaining_Delay : NULL

Seconds_Behind_Master : 0 # 主备延迟时间,单位秒

Skip_Counter : 0 # 最近被使用的用于SQL_SLAVE_SKIP_COUNTER的值

Slave_IO_Running : Yes # I/O线程是否启动并成功连接到主服务器上

Slave_IO_State : Waiting for master to send event # Slave IO线程状态

Slave_SQL_Running : Yes # SQL线程是否启动

Slave_SQL_Running_State : Slave has read all relay log; waiting for the slave I/O thread to update it # Slave SQL 执行状态提示

Until_Condition : None # 复制until条件,在stop slave,start slave(不带until)或server重启的时候会自动重置

Until_Log_File : # 复制停止的文件名

Until_Log_Pos : 0 # 复制停止的文件位置

查看复制线程运行情况

SHOW PROCESSLIST \G

停止Slave复制

stop slave;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值