2012-03-07 68 views
2

有沒有辦法獲得「rs.status();」的輸出?從PHP驅動程序?從PHP的MongoDB副本設置狀態

跑過以下設置到MongoDB的驅動器的命令功能

array('replSetGetStatus'=>1) 

結果的錯誤消息:

Array 
(
[0] => access denied; use admin db 
[1] => 0 
) 

回答

7

可以重複使用相同的連接;你只需要得到該對象的管理DB:

$connection->admin->command(array("replSetGetStatus"=>1) 

如果你還沒有,你需要創建一個數據庫連接對象,以「管理」數據庫,這樣你就可以調用輸出的rs.status()通過你指定的驅動程序。

mongodb://[username:[email protected]]host1[:port1][,host2[:port2:],...]/db 

請參閱該文檔here

+0

完美,謝謝! – clops 2012-03-08 13:08:26