check_rep.php
if(empty($_REQUEST["key "]) ) die(':) キーがありません'); if($_REQUEST["key"] != 'xupeng') die(':) エラーキー');
include("mysql_instance.php") ; include ("check_status_api.php");
define("USERNAME", "ユーザー名"); define("PASSWORD", "パスワード"); define("DEBUGMODE", false);
$instances = get_instances ();
if($instances){ echo << END; echo " n"; if(! DEBUGMODE){ echo " n"; }else{ echo " n"; } foreach($instances as $host){ $res = check_mysql_replication_status($host, USERNAME, PASSWORD); if(! DEBUGMODE){ switch($res["result"]){ case -4: $memo = "不明な例外"; Break; case -3: $memo = "クエリが失敗しました"; Break; case -2: $memo = "ポートに接続できません"; case -1: case 1: $memo = "同期に失敗しました"; if($res["Slave_IO_Running"] <> "はい"){ $memo .= $res["Last_IO_Error"] . "(" . $res
["Last_IO_Errno"] . ")"; } if($res["Slave_SQL_Running"] < &gt; "yes"){$ memo。= "last_sql_error" "(" last_sql_errno "] n"; } } echo "
インスタンス |
結果 | Slave_IO_Running |
Slave_SQL_Running |
Master_Host |
Master_Port |
Replicate_Do_DB | メモ |
インスタンス |
結果 |
Slave_IO_実行中 td>
| Slave_SQL_Running |
Master_Host |
Master_Port |
Replicate_Do_DB |
スレーブ_IO_状態 td>
| Last_IO_Errno |
Last_IO_Error |
Last_SQL_Errno |
Last_SQL_Error |
< ;tr>
{$host} |
{$res['result']} |
{$res['Slave_IO_Running']} |
{$res['Slave_SQL_Running']} |
{$res['Master_Host']} |
{$ res['Master_Port']} |
{$res['Replicate_Do_DB']} |
{$memo} |
{$host} |
{$res['result']} |
{$res['Slave_IO_Running ']} |
{$res['Slave_SQL_Running']} |
{$res['Master_Host']} |
| {$res['Replicate_Do_DB']} |
{$res['Slave_IO_State']}< /td>
| {$res['Last_IO_Errno']} |
{$res['Last_IO_Error']} |
{$res[ 'Last_SQL_Errno']} |
{$res['Last_SQL_Error']} |
n" ; echo <<
END; }else{ die("mysql インスタンスが定義されていません。"); } check_status_api.php
/ * * 检查mysql サービス务器の同状態态 */ function check_mysql_replication_status($host, $username, $password) { //默认状態态不明 $r = array( "result" => -1 ); try{ $dbh = @mysql_connect($host, $username, $password); if(!$dbh){ //無法连接 $r["result"] = -2; return($r); } $query = "スレーブステータスの表示"; $res = @mysql_query($query, $dbh); $err = @mysql_error(); if($err){ //無法连接 $r["result"] = -3; return($r); } $row = mysql_fetch_array($res); $r = $row; if(($r[" Slave_IO_Running"] == "はい") && ($r["Slave_SQL_Running"] == "はい")) { $r["result"] = 0; }else{ if(!empty($row )){ $r["result"] = 1; }else{ $r["result"] = 2; } } }catch(Exception $e){ $r["result"] = -4; } return($r); } mysql_instance.php
|