gpt4 book ai didi

php - Ubuntu Linux VPS 上的 SQLSTATE[01002] Adaptive Server 连接失败(严重性 9)错误

转载 作者:行者123 更新时间:2023-12-02 07:12:07 25 4
gpt4 key购买 nike

我正在尝试在我的 php 脚本上连接到 Azure Microsoft SQL Server 数据库。我不明白为什么它不起作用。当我运行 db_connection.php 脚本时,出现以下错误:

SQLSTATE[01002] Adaptive Server connection failed (severity 9)

当我运行 tsql 命令时,使用我的 azure ms sql 数据库的连接详细信息,连接似乎正常工作(我读到“1>”表示连接正常):

locale is "C"
locale charset is "ANSI_X3.4-1968"
using default charset "UTF-8"
Default database being set to iBalekaDB
1>

在我的 freetds.conf 文件中,我设置了以下配置:

# server specific section
[global]
# TDS protocol version
tds version = 8.0
text size = 20971520
client charset = UTF-8

dump file = /tmp/freetds.log
debug flags = 0xffff

# Command and connection timeouts
; timeout = 10


[iBalekaServer]
host = xxxxxxxx.xxxxxxx.windows.net
port = 1433
tds version = 8.0
client charset = UTF-8

我的 db_connection.php 文件如下所示:

try {

$dataSource = "dblib:host=iBalekaServer;dbname=iBalekaDB;";
$username = "xxxxxxxxxxxx";
$password = "xxxxxxxxxxxx";

$connectionObject = new PDO($dataSource, $username, $password);
$connectionObject->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

if ($connectionObject) {
echo "<h2>Connection Successful</h2>";
} else {
echo "Connection Error";
}
} catch (PDOException $e) {
echo $e->getMessage();
}

我在 VPS 上运行 tsql -C 并得到了这个:

Compile-time settings (established with the "configure" script)
Version: freetds v0.91
freetds.conf directory: /etc/freetds
MS db-lib source compatibility: no
Sybase binary compatibility: yes
Thread safety: yes
iconv library: yes
TDS version: 4.2
iODBC: no
unixodbc: yes
SSPI "trusted" logins: no
Kerberos: yes

我检查了是否安装了 pdo_dblib,当我在 Linux VPS 服务器上运行 phpinfo() 时它就存在。

这里可能出现什么问题?

编辑:使用 mssql_connect 有效。我真的很想使用 PDO

最佳答案

在我的测试中,我更改了 $username格式为UID (例如 <username>@<db_server_name> ),它解决了您的 SQLSTATE[01002] Adaptive Server connection failed (severity 9) 问题.

顺便说一句,您可以获取UID来自 Azure 门户的连接字符串。

此外,如果您遇到 General SQL Server error: Check messages from the SQL Server (severity 16) 的问题,可以引用PDO DBLib not working的回答.

如有任何更新,请随时告诉我。

关于php - Ubuntu Linux VPS 上的 SQLSTATE[01002] Adaptive Server 连接失败(严重性 9)错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39269893/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com