SQLSTATE 未知主机名称(严重性2)
我有一个问题,我无法找到解决方案,我希望你能帮助我。 我回滚了我的服务器,现在没有任何php脚本可以连接到其他服务器。 这些脚本是最新的,因为回滚是从上周开始的。
我收到SQL错误:
SQLSTATE [HY000]未知主机名称(严重性2)
在cmd我得到:
SQLState = S1T00,NativeError = 0错误= [unixODBC] [Microsoft] [SQL Server Native Client 11.0]登录超时到期
d SQLState = 08001,NativeError = 10022错误= [unixODBC] [Microsoft] [SQL Server Native Client 11.0]建立与SQL Ser的连接时发生了与网络相关或特定于实例的错误
版本。 找不到服务器或无法访问服务器。 如果SQL Server配置为允许远程连接,请检查实例名称是否正确。 欲获得更多信息
请参阅SQL Server联机丛书。 SQLState = 08001,NativeError = 10022错误= [unixODBC] [Microsoft] [SQL Server Native Client 11.0] TCP提供程序:错误代码0x2726
在telnet上我可以连接到远程服务器。 sqlcmd还允许我连接到远程服务器
如果有人能帮助我,请 我不知道接下来该做什么。 非常感谢所有帮助。
这是尝试连接的测试脚本
$link = mssql_connect('xx.xxx.xxxx.xx,1433','myuname','mypwd'); if (!$link) { die('Something went wrong while connecting to MSSQL:'. mssql_get_last_message()); }
对我的修复有三个步骤:
首先,我编辑了/etc/freetds/freetds.conf
并更改了tds版本,如下所示:
tds version = 8.0
第二步没有输入端口号。 该端口已经是1433,并没有指定它修复了我的情况完全相同的问题。
最后,要正确连接,我必须重新启动网络,因为@ user1054844 提到了这个:
/etc/init.d/networking restart
完成所有这些步骤后,我就能够连接并使用SQL Server数据库。
我只需要修改etc / network并修改interfaces文件即可
sudo /etc/init.d/networking restart
由于某种原因,dns-namesevers错了。