Ei_20061128卡在“正在尝试连接数据库”,基本可以确定是数据库服务、ODBC数据源、数据库名称、账号密码或防火墙这几处没有对上。传奇3老版本多数依赖SQL Server 2000,数据库名通常为MudDB,数据源名也要配成MudDB,账号默认sa,密码要和安装SQL时设置的一致。
先确认SQL Server服务是否启动。打开SQL Server服务管理器,查看服务状态是否为“正在运行”。如果服务没有启动,DBSvr、LoginSvr等程序就无法连接数据库,会一直停在尝试连接界面。单机测试时,SQL Server实例名一般用local或127.0.0.1,不要填错。
再检查ODBC数据源。打开控制面板的管理工具,进入数据源ODBC,选择系统DSN,查看是否已经添加了名为MudDB的数据源。添加时驱动选择SQL Server,服务器选local或127.0.0.1,验证方式选择“使用用户输入登录ID和密码的SQL Server验证”,登录ID填sa,密码填安装SQL 2000时设置的密码,默认数据库选择MudDB。配置完成后点测试数据源,必须显示测试成功。
检查数据库MudDB是否存在。打开SQL Server企业管理器,展开数据库节点,确认MudDB已经建立。如果没有,需要先新建数据库,再用服务端自带的MudDB.DAT或SQL脚本还原数据。还原时如果提示路径错误,要把文件路径改成当前SQL安装盘符对应的实际路径。
核对DBSvr或DBConnect.ini里的数据库配置。打开服务端目录下的DBSvr配置,确认数据库服务器地址、数据库名称、账号、密码和ODBC数据源名称都正确。老版本传奇3常见配置是服务器local、数据库MudDB、账号sa,密码必须和SQL混合模式验证时设置的一致。如果这里填错,程序就会反复尝试连接但连不上。
检查SQL Server是否启用混合模式验证。安装SQL Server 2000时必须选择混合模式,否则sa账号无法登录。如果当时装成了仅Windows验证,DBSvr用sa登录就会失败。这种情况需要重新安装SQL Server,或在SQL企业管理器里修改身份验证模式为混合模式,并设置sa密码。
检查防火墙是否拦截。SQL Server默认使用1433端口,如果Windows防火墙或第三方安全软件拦截了该端口,DBSvr也无法连接数据库。可以先临时关闭防火墙测试,能连上后再把SQL Server相关程序加入允许列表。同时确认1433端口未被其他程序占用。
检查服务端路径。传奇3服务端目录不要放在中文路径、桌面或带空格的文件夹里,建议放在D:Mud3或D:MirServer这类纯英文路径。路径异常可能导致DBSvr读取配置文件失败,进而无法正确连接数据库。
检查启动顺序。传奇3服务端通常需要先启动SQL Server服务,再启动DBSvr、LoginSvr、GameServer等组件。如果先启动DBSvr而SQL服务还没就绪,也会卡在连接数据库界面。正确做法是先确认SQL服务已运行,再依次启动服务端各组件。
如果以上都确认无误仍然连不上,可以尝试删除ODBC中的MudDB数据源后重新添加,确认测试数据源通过后再启动服务端。也可以重新还原一次MudDB数据库,确保数据库文件完整。多数Ei_20061128卡数据库连接的问题,最终都落在SQL服务未启动、ODBC未配置、sa密码不一致或防火墙拦截这四个方面。
传奇3架设Ei_20061128卡数据库连接的完整排查与修复方法
来源:
作者:
点击:

