在Windows Server 2003 上安装 MS SQL Server 2000 标准版时,出现“[Microsoft][ODBC 驱动程序管理器] 未发现数据源”,具体提示为:
###############################################################################
正在启动?
Chinese_PRC_CI_AS
-m -Q -T4022 -T3659
正在与服务?
driver={sql server};server=CCC-0DE3AN8Q6DV;UID=sa;PWD=;database=master
[Microsoft][ODBC 驱动程序管理器] 未发现数据源
driver={sql server};server=CCC-0DE3AN8Q6DV;UID=sa;PWD=;database=master
[Microsoft][ODBC 驱动程序管理器] 未发现数据源
driver={sql server};server=CCC-0DE3AN8Q6DV;UID=sa;PWD=;database=master
[Microsoft][ODBC 驱动程序管理器] 未发现数据源
SQL Server 配置?
###############################################################################
00:17:29 Process Exit Code: (-1)
00:17:37 安装程序配置服务器失败。参考服务器错误日志和 C:\WINDOWS\sqlstp.log 了解更多信息。
00:17:37 Action CleanUpInstall:
00:17:37 C:\WINDOWS\TEMP\SqlSetup\Bin\scm.exe -Silent 1 -Action 4 -Service SQLSERVERAGENT
00:17:37 Process Exit Code: (1060) 指定的服务未安装。
00:17:37 C:\WINDOWS\TEMP\SqlSetup\Bin\scm.exe -Silent 1 -Action 4 -Service MSSQLSERVER
00:17:37 Process Exit Code: (0)
00:17:37 StatsGenerate returned: 2
00:17:37 StatsGenerate (0x80000000,0x1,0xf00000,0x0,2052,303,0x0,0x1,0,0,0
00:17:37 StatsGenerate -1,Administrator)
00:17:37 Installation Failed.
第一种方法:
我们只需要用odbcconf.exe来重新注册一下ODBC Driver就可以了。
在Windows/System32目录下有几个脚本文件,可以来完成驱动程序的注册:
odbcconf.exe /S /Lv odbcconf.log /F %systemroot%\system32\mdaccore.rsp
odbcconf.exe /S /Lv odbcconf.log /F %systemroot%\system32\sqlclnt.rsp
odbcconf.exe /S /Lv odbcconf.log /F %systemroot%\system32\odbcconf.rsp
odbcconf.exe /S /Lv odbcconf.log /F %systemroot%\system32\redist.rsp
产生这个问题的原因是某些使用ODBC数据源的程序,在卸载的时候,会将ODBC Driver的信息都删除掉。
方法二:
这是由于ODBC for SQL Server driver出现了故障,可以打开ODBC DataSource Administrator,新建立一个SQL Server的DataSource。此时发现不能建立,验证了SQL Server ODBC是损坏的。
解决步骤:
1. 得到正确的sqlsrv32.dll和sqlsrv32.rll文件
这2个文件在C:\WINDOWS\system32下
·可以从其他相同版本的机器拷贝这2个文件;
·或者使用sfc /scannow从安装盘中复制;
2. 配置注册表
定位到[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\ODBC Drivers]添加key:Name - SQL Server; Data - Installed;
定位到[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\SQL Server]添加:
"UsageCount"=dword:00000002
"Driver"="C:\\WINDOWS\\system32\\SQLSRV32.dll"
"Setup"="C:\\WINDOWS\\system32\\sqlsrv32.dll"
"SQLLevel"="1"
"FileUsage"="0"
"DriverODBCVer"="03.50"
"ConnectFunctions"="YYY"
"APILevel"="2"
"CPTimeout"="60"
3. 测试
用建立一个SQL Server的DataSource的方法,测试是否修复了SQL Server ODBC;
如果已经修复,则可以正常安装SQL Server 2000了。