MySQL道普請便り

第36回 performance_schemaのレプリケーションテーブルについて

この記事を読むのに必要な時間:およそ 5.5 分

SHOW SLAVE STATUSとの対応表

これらのレプリケーションテーブルはSHOW SLAVE STATUSで表示しきれない情報の補填である面が強く,まだまだ情報は乏しいです。SHOW SLAVE STATUSと対応していないものも多いですが,MySQL5.7.17時点での対応表となります。

SHOW SLAVE STATUSカラムperformance_schemaテーブルperformance_schemaカラム
Slave_IO_State未対応未対応
Master_Hostreplication_connection_configurationHOST
Master_User replication_connection_configurationUSER
Master_Portreplication_connection_configurationPORT
Connect_Retryreplication_connection_configurationCONNECTION_RETRY_INTERVAL
Master_Log_File未対応未対応
Read_Master_Log_Pos未対応未対応
Relay_Log_File未対応未対応
Relay_Log_Pos未対応未対応
Relay_Master_Log_File未対応未対応
Slave_IO_Runningreplication_connection_statusSERVICE_STATE
Slave_SQL_Runningreplication_applier_status_by_worker
replication_applier_status_by_coordinator
SERVICE_STATE
Replicate_Do_DB未対応未対応
Replicate_Ignore_DB未対応未対応
Replicate_Do_Table未対応未対応
Replicate_Ignore_Table未対応未対応
Replicate_Wild_Do_Table未対応未対応
Replicate_Wild_Ignore_Table未対応未対応
Last_Errno未対応未対応
Last_Error未対応未対応
Skip_Counter未対応未対応
Exec_Master_Log_Pos未対応未対応
Relay_Log_Space未対応未対応
Until_Condition未対応未対応
Until_Log_File未対応未対応
Until_Log_Pos未対応未対応
Master_SSL_Allowedreplication_connection_configurationSSL_ALLOWED
Master_SSL_CA_Filereplication_connection_configuration SSL_CA_FILE
Master_SSL_CA_Pathreplication_connection_configurationSSL_CA_PATH
Master_SSL_Certreplication_connection_configurationSSL_CERTIFICATE
Master_SSL_Cipherreplication_connection_configurationSSL_CIPHER
Master_SSL_Keyreplication_connection_configurationSSL_KEY
Seconds_Behind_Master未対応未対応
Master_SSL_Verify_Server_Certreplication_connection_configurationSSL_VERIFY_SERVER_CERTIFICATE
Last_IO_Errnoreplication_connection_statusLAST_ERROR_NUMBER
Last_IO_Errorreplication_connection_statusLAST_ERROR_MESSAGE
Last_SQL_Errnoreplication_applier_status_by_worker
replication_applier_status_by_coordinator
LAST_ERROR_NUMBER
Last_SQL_Errorreplication_applier_status_by_worker
replication_applier_status_by_coordinator
LAST_ERROR_MESSAGE
Replicate_Ignore_Server_Ids未対応未対応
Master_Server_Id未対応未対応
Master_UUIDreplication_connection_statusSOURCE_UUID
Master_Info_File未対応未対応
SQL_Delayreplication_applier_configurationDESIRED_DELAY
SQL_Remaining_Delayreplication_applier_statusREMAINING_DELAY
Slave_SQL_Running_State未対応未対応
Master_Retry_Countreplication_connection_configurationCONNECTION_RETRY_COUNT
Master_Bindreplication_connection_configurationNETWORK_INTERFACE
Last_IO_Error_Timestampreplication_connection_statusLAST_ERROR_TIMESTAMP
Last_SQL_Error_Timestampreplication_applier_status_by_worker
replication_applier_status_by_coordinator
LAST_ERROR_TIMESTAMP
Master_SSL_Crlreplication_connection_configurationSSL_CRL_FILE
Master_SSL_Crlpathreplication_connection_configurationSSL_CRL_PATH
Retrieved_Gtid_Setreplication_connection_statusRECEIVED_TRANSACTION_SET
Executed_Gtid_Setreplication_applier_status_by_workerLAST_SEEN_TRANSACTION(直近のトランザクション情報のみ)
Auto_Positionreplication_connection_configurationAUTO_POSITION
Replicate_Rewrite_DB未対応未対応
Channel_NameすべてのテーブルCHANNEL_NAME
Master_TLS_Version未対応未対応

まとめ

今回,performance_schemaのレプリケーションテーブルについて紹介しました。その理由として,MySQL5.7.17からGAとなったGroup Replicationではレプリケーションの情報をSHOW SLAVE STATUSで確認することができず,performance_schemaのレプリケーションテーブルを用いてモニタリングしていくことになるためです。今後,変更される可能性もありますが,MySQL5.7.17時点ではそうです。しかし,MySQLを運用している人が最初に確認するであろうカラムSeconds_Behind_Masterがまだ未対応であったり,SHOW SLAVE STATUSと比べて情報がまだまだ少ないためこれから発展していく機能であると考えられます。

著者プロフィール

北川健太郎(きたがわけんたろう)

LINE株式会社所属のデータベースエンジニア。担当はMySQLとOracle Database。好きなMySQLの機能はレプリケーションで,好きなOracleDatabaseの機能はログオントリガー。

Twitter:@keny_lala

コメント

コメントの記入