程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> 關於MYSQL數據庫 >> WordPress的MySQL 連接出錯監測方法

WordPress的MySQL 連接出錯監測方法

編輯:關於MYSQL數據庫

     網頁制作文章簡介:我這裡提供的插件修改可以監控你的WordPress的MySQL狀況,一旦發現MySQL數據庫無法連接,就會發送一封郵件到指定的信箱,同時在一個文本文件中進行記錄,你可以通過查看日志來分析MySQL數據庫的監視和運行情況是否良好,並且在異常情況出現的時候能立即就知道,以便聯系


對於某些國外主機,其HTTP服務可能比較穩定,但是MySQL服務卻經常宕機,比如我的英文博客使用的DreamHost提供的MySQL就深受其害,經常無法連接MySQL服務器,並且通常都是美國時間午夜的時候宕機,有時候能停好幾個小時,也難怪那麼多人抱怨DreamHost的服務器不穩定。

我這裡提供的插件修改可以監控你的WordPress的MySQL狀況,一旦發現MySQL數據庫無法連接,就會發送一封郵件到指定的信箱,同時在一個文本文件中進行記錄,你可以通過查看日志來分析MySQL數據庫的監視和運行情況是否良好,並且在異常情況出現的時候能立即就知道,以便聯系主機服務人員維護。

運行之後,我這裡記錄DreamHost的MySQL數據庫幾個小時就能出現四百多次異常報道,看來DreamHost的服務器真的是很垃圾啊。

廢話就不多說了,下面是安裝和設置的詳細方法:

首先建立一個名為log.txt的文件,上傳到WordPress的根目錄,將其權限設置為666(FlashFXP又修改文件權限的功能)。

然後修改下面代碼,將發信人$from和收信人$to的郵件地址設置為個人信箱。

以下為引用的內容:

// Change the e-mail address below .
$from = "[email protected]";
$to = "[email protected]";

$subject = "MySQL Crashed!";
$body = date("Y-m-d H:i:s");
$headers = 'From: '.$from . "\r\n"
  .'Reply-To: '.$from . "\r\n"
  .'X-Mailer: PHP/' . PHPversion();
mail($to, $subject, $body, $headers);
// Log to file
$filename = 'log.txt';
$somecontent = date("Y-m-d H:i:s");
$somecontent = $somecontent . "\r\n";
if (is_writable($filename)) {
   if (!$handle = fopen($filename, 'a')) {
         exit;
   }
   if (!fwrite($handle, $somecontent)) {
       exit;
   }
   fclose($handle);
}
 


之後,打開wp-includes/wp-db.PHP文件,找到“if (!$this->dbh) {”這一行(對於WordPress 2.3.1是66行),讓上面的代碼插入在這行的後面。

上傳並覆蓋這個文件。

之後每當數據庫連接出現問題後,WordPress就都會自動發送郵件到你的信箱,同時將時間記錄在log.txt文件之中。當我們選擇支持MySQL的虛擬主機的時候,也可以使用這個程序來測試服務器的穩定性。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved