295很多在维护或二开老版本网狐中心服务器时,最容易遇到的致命报错之一就是这个:
看着是 SQL Server 报错,实际原因往往跑不掉下面这几条。
一、最常见原因
1. 数据库地址没填对
-
很多人直接把服务端指向
127.0.0.1
,结果数据库配置里没把这个地址写进去。 -
用户名、密码还要用异或加密,明文是连不上的。常用工具就是
MakeGUID
。
2. 端口没开
MSSQL 默认监听 TCP 1433
,但如果没启用,外部怎么都连不上。
用最简单的 DOS
命令查看:
要看到 0.0.0.0:1433
或 127.0.0.1:1433
在监听状态才算对。
3. SQL Server 配置没启用 TCP/IP
默认安装时,有些人只用本机 Shared Memory
,结果远程访问就挂了。
需要:
-
打开 SQL Server 配置管理器
-
找到 SQL Server 网络配置 → 协议 → TCP/IP
-
启用
TCP/IP
,在IPAll
下把端口改成1433
4. 服务没开或没重启
改了配置没重启,端口依然没生效;SQL Server Browser
服务没开,客户端找不到实例。
记得:
-
改完端口,一定要重启
SQL Server
服务。 -
SQL Server Browser
服务也要启动,部分版本必须有它转发端口。
5. 防火墙没放行
别忘了防火墙或云服务器安全组要放开 TCP 1433
,不然白搭。
二、快速修复步骤(2024 实操)
第一步
用 MakeGUID
对用户名、密码做异或加密,写进配置。
第二步DOS
下跑 netstat -an
,确认 1433
在线。
第三步
打开 SQL Server 配置管理器
,启用 TCP/IP
,在 IPAll
里填 1433
。
第四步
重启 SQL Server
和 SQL Server Browser
服务。
第五步
检查防火墙 / 云服务器安全组放行 TCP 1433
。
改完这些,中心服务重启基本都能跑起来。
写在最后
这套 0x80004005
看着吓人,其实 90% 都是配置没对或者端口没开。
记住:
-
地址、账号、端口
-
配置、重启、放行
老项目嘛,靠的就是一遍遍排坑。
转载请注明出处,保留作者署名与出处链接,感谢支持开源精神与知识传播!