show slave status \G; 详解

Mysql同步原理:从库生成两个线程,一个I/O线程,一个SQL线程;

i/o线程去请求主库 的binlog,并将得到的binlog日志写到relay log(中继日志) 文件中;
主库会生成一个 log dump 线程,用来给从库 i/o线程传binlog;

SQL 线程,会读取relay log文件中的日志,并解析成具体操作,来实现主从的操作一致,而最终数据一致;
show slave status \G; 用于提供有关从属服务器线程的关键参数的信息;


mysql> SHOW SLAVE STATUS\G
*************************** 1. row ***************************
               Slave_IO_State: Waiting for master to send event
                  Master_Host: x.x.x.x
                  Master_User: xxx
                  Master_Port: 3306
                Connect_Retry: 60
              Master_Log_File: mysql-bin.000399
          Read_Master_Log_Pos: 48329175
               Relay_Log_File: mysql-relay-bin.000929
                Relay_Log_Pos: 283
        Relay_Master_Log_File: mysql-bin.000399
             Slave_IO_Running: Yes
            Slave_SQL_Running: Yes
              Replicate_Do_DB: xxxx_db
          Replicate_Ignore_DB: 
           Replicate_Do_Table: 
       Replicate_Ignore_Table: 
      Replicate_Wild_Do_Table: 
  Replicate_Wild_Ignore_Table: 
                   Last_Errno: 0
                   Last_Error: 
                 Skip_Counter: 1
          Exec_Master_Log_Pos: 48329175
              Relay_Log_Space: 503
              Until_Condition: None
               Until_Log_File: 
                Until_Log_Pos: 0
           Master_SSL_Allowed: No
           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
                Last_IO_Error: 
               Last_SQL_Errno: 0
               Last_SQL_Error: 
  Replicate_Ignore_Server_Ids: 
             Master_Server_Id: 6

……………
参数具体含义解释:

Slave_IO_State

这个是指Slave连接到Master的状态,就是当前IO线程的状态,MySQL主从复制线程状态转变。

Master_User

这个是Master上面的一个用户,用来负责主从复制的用户 ,创建主从复制的时候建立的(具有reolication slave权限)。

Master_Port

Master服务器的端口,一般是3306。

Connect_Retry

在主服务器宕机或连接丢失的情况下,从服务器线程重新尝试连接主服务器之前睡眠的秒数。如果主服务器.info文件中的值可以读取则优先使用。如果未设置, 默认值为60。

Master_Log_File

显示当前I/O线程当前正在读取的主服务器二进制日志文件的名称

Read_Master_Log_Pos

显示当前同步到主服务器上二进制日志的偏移量,I/O线程已经读取的位置,单位是字节。

Relay_Log_File

显示Slave的SQL线程当前正在读取和执行的中继日志文件的名称。

Relay_Log_Pos

显示在当前的中继日志中,Slave的SQL线程已读取和执行的中继日志的偏移量。

Relay_Master_Log_File

显示Slave中继日志同步到Master的二进制日志文件。

Slave_IO_Running

显示I/O线程是否被启动并成功地连接到主服务器上,成功为Yes,否则为No。

Slave_SQL_Running

显示SQL线程是否被启动,启动为Yes,否则为No。

Replicate_Do_DB

Replicate_Ignore_DB

Replicate_Do_Table

Replicate_Ignore_Table

Replicate_Wild_Do_Table

Replicate_Wild_Ignore_Table

这些参数都是为了用来指明哪些库或者表在复制的时候不要同步到备库,但是这些参数用的时候要小心,因为当跨库使用的时候可能会出现问题。另外当仅忽略或仅允许多个库或表时,要多次使用忽略语句才可以。

Last_Errno,Last_Error

显示Slave的SQL线程读取日志参数的的错误数量和错误消息,错误数量为0并且消息为空字符串表示没有错误;如果Last_Error值不是空值,它也会在从属服务器的错误日志中作为消息显示。

Skip_Counter

显示最近被使用的用于SQL_SLAVE_SKIP_COUNTER的值,就是用于跳过Slave错误的。

Exec_Master_Log_Pos

表示SQL线程执行的Relay log相对于主库二进制日志偏移量的位置,Read_Master_Log_Pos减去Exec_Master_Log_Pos可以表示当前SQL线程运行的延时,单位是字节。上述例子显示完全同步。注意还要看Relay_Master_Log_File的值是否跟Master_Log_File相同,如果小于Master_Log_File二进制,则说明延迟更大。

Relay_Log_Space

表示所有原有的中继日志结合起来的总大小,在START SLAVE语句的UNTIL子句中指定的值,Until_Condition具有以下值:Until_Condition、Until_Log_File、Until_Log_Pos。

Until_Condition

如果没有指定UNTIL子句,则没有值。如果从属服务器正在读取,直到达到主服务器的二进制日志的给定位置为止,则值为Master,如果从属服务器正在读取,直到达到其中继日志的给定位置为止,则值为Relay。

Until_Log_File

Until_Log_Pos

Until_Log_File和Until_Log_Pos用于指示日志文件名和位置值,日志文件名和位置值定义了SQL线程在哪个点中止执行。

Master_SSL_Allowed

显示了从服务器是否使用SSL连接到主服务器。如果允许对主服务器进行SSL连接,则值为Yes;如果不允许对主服务器进行SSL连接,则值为No;如果允许SSL连接,但是从服务器没有让SSL支持被启用,则值为Ignored。

Master_SSL_CA_File

Master_SSL_CA_Path

Master_SSL_Cert

Master_SSL_Cipher

Master_SSL_Key

如果Slave使用SSL连接Master服务器,这里就会显示对应的证书和私钥信息。使用CHANGE MASTER与SSL相关的选项有:–master-ca,–master-capath,–master-cert,–master-cipher和–master-key等。

Seconds_Behind_Master

表示主从之间延迟的时间,单位是秒。如果为null表示未知数,一般主从复制出问题了会出现null的情况。

Master_SSL_Verify_Server_Cert

显示是否认证Master证书。

Master_Server_Id

显示主服务器的Server_id。

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值