嗨,我在php连接到本地数据库时遇到了一个大问题。
我正在跑步:Windows Server 2008 sp 1。SQL server 2012。我的SQL服务器名称:LRE-XP-VS2003''SQLEXPRESS。(状态正在运行)
这就是我尝试连接的方式
$server = 'localhost'; //or 127.0.0.1
$login = 'sa';
$passwd = 'my_passwd';
$database = 'ms4033';
$port = '49717';
$con = mysqli_connect ( $server , $login, $passwd, $database, $port );
if (!$con) {
die("Connection error: " . mysqli_connect_errno());
}
我得到的结果是在浏览器中旋转加载按钮,并在很长一段时间后"内部服务器错误-FastCGI进程超过了配置的活动超时"
对于我在HKEY_LOCAL_MACHINE
中检查的端口号,也直接在数据库中检查
USE master
GO
XP_READERRORLOG 0, 1, N'Server is listening'
GO
以及SQL服务器配置管理器中。如果没有端口号,我会得到"由于目标机器主动拒绝,无法进行连接"或"连接错误:2002"
我试着打开防火墙,但无济于事。
我也在运行asp.net,但矛盾的是,连接工作正常这个:
<add key="connectionString" value="server=LRE-XP-VS2003'SQLEXPRESS;database=ms4033;packet size=4096;user id=sa;password=my_passw" />
我是不是错过了什么?
$server = 'localhost';
和$server = 'LRE-XP-VS2003'SQLEXPRESS';
有什么区别?
非常感谢。
查看本文。您需要使用MS SQL连接,而不是MYSQL
<?php
// Server in the this format: <computer>'<instance name> or
// <server>,<port> when using a non default port number
$server = 'KALLESPC'SQLEXPRESS';
// Connect to MSSQL
$link = mssql_connect($server, 'sa', 'phpfi');
if (!$link) {
die('Something went wrong while connecting to MSSQL');
}
?>*