如何使用PHP脚本测试PHP 7和WordPress MySQL/MariaDB数据库连接
时间:2020-01-09 10:43:33 来源:igfitidea点击:
如何测试我的PHP 7和适用于WordPress的MySQL/MariaDB是否正常工作。
如果不是,如何在屏幕上或者我的监控系统上看到一些错误。
如何在站点关闭时为WordPress或者任何其他数据库编写用于快速PHP MySQL DB连接测试的脚本并发送电子邮件或者文本?
适用于WordPress的PHP 7 + MySQL/MariaDB脚本
以下脚本将使用WordPress配置文件本身中的数据库/密码信息。
创建一个名为db-mysql-test.php的脚本,并将其放在wordpress目录中,您将其中找到名为wp-config.php的文件:
<?php
define('WEB_ID','l-cbz01');
require('wp-config.php');
$link = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
// failed
// die with an error
if (!$link) {
// send HTTP/500 status code first
header($_SERVER['SERVER_PROTOCOL'] . ' 500 Internal Server Error', true, 500);
echo "<html><head><title>Failed at " .WEB_ID. "</title></head><body><pre>";
echo "Web server: ". WEB_ID . PHP_EOL;
echo "Error: Unable to connect to MySQL." . PHP_EOL;
echo "Debugging errno: " . mysqli_connect_errno() . PHP_EOL;
echo "Debugging error: " . mysqli_connect_error() . PHP_EOL;
exit;
}
// succeeded and show message
echo "<html><head><title>Success at " .WEB_ID. "</title></head><body><pre>";
echo "Success: A proper connection to MySQL was made! The my_db database is great." . PHP_EOL;
echo "Host information: " . mysqli_get_host_info($link) . PHP_EOL;
mysqli_close($link);
?>
使用sftp/ftp客户端将脚本上传到Web服务器,运行:
$ scp db-mysql-test.php [email protected]:/var/www/html/cms/
触发浏览器并对其进行测试:
https://www.theitroad.local/cms/db-mysql-test.php
没有错误时的输出示例:
成功测试输出
出现类似PHP 7进程未运行或者MySQL服务器关闭之类的错误时的示例输出:
错误:无法连接到MySQL状态页面
用于自定义数据库的PHP 7 + MySQL/MariaDB脚本(任意cms)
如果您未使用WordPress或者其他工具,请尝试以下脚本。
您必须设置DB_HOST,DB_USER,DB_PASSWORD和DB_NAME:
<?php
// set me
define('WEB_ID','l-cbz01');
define('DB_HOST', 'localhost');
define('DB_USER', 'Hyman');
define('DB_PASSWORD', 'myPasswordHere');
define('DB_NAME', 'myDBNameHere');
$link = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
// failed
// die with an error
if (!$link) {
// send HTTP/500 status code first
header($_SERVER['SERVER_PROTOCOL'] . ' 500 Internal Server Error', true, 500);
echo "<html><head><title>Failed at " .WEB_ID. "</title></head><body><pre>";
echo "Web server: ". WEB_ID . PHP_EOL;
echo "Error: Unable to connect to MySQL." . PHP_EOL;
echo "Debugging errno: " . mysqli_connect_errno() . PHP_EOL;
echo "Debugging error: " . mysqli_connect_error() . PHP_EOL;
exit;
}
// succeeded and show message
echo "<html><head><title>Success at " .WEB_ID. "</title></head><body><pre>";
echo "Success: A proper connection to MySQL was made! The my_db database is great." . PHP_EOL;
echo "Host information: " . mysqli_get_host_info($link) . PHP_EOL;
mysqli_close($link);
?>
使用ftp命令或者sftp命令保存并上传脚本:
$ scp db-mysql-test.php [email protected]:/var/www/html/
使用您喜欢的Web浏览器进行测试:
https://www.theitroad.local/cms/db-mysql-test.php
关于脚本失败时发送文本/短信/电子邮件的说明(可选)
您需要使用第三方监控服务,例如Pingdom或者其他。
例如,您可以按如下方式编辑Pingdom测试

