有没有办法在连接它之前ping MSSQL数据库

时间:2017-04-20 22:12:58

标签: php sql-server

与数据库的连接非常脆弱,因此我尝试在建立连接之前测试连接。我找到了pg_connectmysql_ping以及how-do-i-ping-the-mysql-db-and-reconnect-using-pdo,但没有一个与我可以使用的MSSQL或函数有任何关系。

我可以在连接之前测试数据库吗?

2 个答案:

答案 0 :(得分:0)

您可以将超时设置为非常小的数字,并调用类似

的内容
SELECT 1;

SELECT GETDATE();

看看,如果有一些结果回来......

如果连接断开,这些微小的请求也应该中断。

如果脆弱并不意味着损坏,您可以测量标准调用并比较执行速度......

答案 1 :(得分:0)

您可以尝试ping服务器+相应的端口以查看服务器是否接受连接。

$host = '127.0.0.1'; // ip address, could be localhost 
$port = 1433; // your mssql port
$timeout = 1; //time to wait in seconds for response

if($fp = fsockopen($host,$port,$errCode,$errStr,$timeout))
{   
   // Server is OK - responding
} else {
   // Server not respoded on given port in given time limit
} 

fclose($fp);