显示mysql复制从属状态

时间:2012-09-13 17:27:32

标签: php mysqli database-replication

如何返回复制服务器状态?

当试图获得奴隶状态时,没有返回任何内容?!

mysql:5.1.63-0

$result = Mysql::result("SHOW SLAVE STATUS");
$status = $result->fetch_assoc();
echo '<pre>';
echo 'result: ';
print_r($result);
echo 'status: ';
print_r($status);
echo '</pre>';

返回

result: mysqli_result Object
(
    [current_field] => 0
    [field_count] => 38
    [lengths] => 
    [num_rows] => 0
    [type] => 0
)
status: 

2 个答案:

答案 0 :(得分:4)

您需要获取包含数据的行:

$行= $ result-&GT; FETCH_ASSOC()

然后$ row ['Slave_IO_Running']和$ row ['Slave_SQL_Running']会给你你需要的东西。两者都应该是。

答案 1 :(得分:0)

我遇到了同样的问题,结果发现我连接的是主数据库句柄而不是奴隶。您的$ result显示num_rows = 0,因此问题不在于您如何获取该行;它没有显示的状态。