我将MySQL服务器配置为只读只读副本。
如何找出它与被复制的数据库之间的延迟秒数?
我试过了:
SHOW STATUS LIKE 'seconds_behind_master';
但不支持该语法。我想要一个单行SQL来检索这个值。可以吗?
答案 0 :(得分:0)
如何获取配置为只读副本的mysql服务器的只读副本延迟。
http://dev.mysql.com/doc/refman/5.6/en/show-slave-status.html
show slave status
此字段Seconds_Behind_Master
表示奴隶的“迟到”。
我能够写一个PHP脚本,它只抓取一个值:
$db = new pdo(
"mysql:host=your_database_hostname;dbname=your_database_name",
'your_username', 'your_password');
$sql = 'show slave status';
$query = $db->query($sql);
$res = $query->fetchall();
foreach($res as $item){
print ">" . $item["Seconds_Behind_Master"];
}
打印0秒,因为所有内容都是最新的:
>0
这是一个小bash命令,它打印show slave status的内容供你解析:
mysql --host=your_host -u your_username --password=your_password your_database_name -e "show slave status"