在 Windows Server 2012 R2 上安装 ODBC 驱动程序 11 时遇到问题
Posted
技术标签:
【中文标题】在 Windows Server 2012 R2 上安装 ODBC 驱动程序 11 时遇到问题【英文标题】:Trouble installing ODBC Driver 11 on Windows Server 2012 R2 【发布时间】:2016-02-12 15:41:44 【问题描述】:我正在尝试在 Windows Server 2012 R2 VM 上安装 php 应用程序 (TestRail),但在使用 SQL 驱动程序时遇到了一些问题。我首先从光盘安装 SQL Server 2012 并尝试从 Web 平台安装程序安装 PHP,尽管在 IIS 中下载 Microsoft Drivers 3.2 for PHP v5.6 for SQL Server 一直失败,原因是缺少依赖项。翻阅日志,我看到了:
DownloadManager Information: 0 : Moving downloaded file 'C:\Users\Administrator\AppData\Local\Temp\2\tmpC703.tmp' to: C:\Users\Administrator\AppData\Local\Microsoft\Web Platform Installer\installers\MSODBC11\08A089BA4D1F22BB46A4553E20095A271C230D2E\msodbcsql.msi
DownloadManager Error: 0 : Signature verification failed on downloaded file. URL: http://go.microsoft.com/fwlink/?LinkID=533081. File location: C:\Users\Administrator\AppData\Local\Microsoft\Web Platform Installer\installers\MSODBC11\08A089BA4D1F22BB46A4553E20095A271C230D2E\msodbcsql.msi. File size: 3768 kb
DownloadManager Information: 0 : Product Microsoft® ODBC Driver 11 for SQL Server® done install completed
DownloadManager Information: 0 : Increasing current install to 2
DownloadManager Warning: 0 : Dependency failed for product 'Microsoft Drivers 3.2 for PHP v5.6 for SQL Server in IIS'. Skipping download.
DownloadManager Information: 0 : Product Microsoft Drivers 3.2 for PHP v5.6 for SQL Server in IIS had a dependency fail. Increasing install product to 3
DownloadManager Information: 0 : Product: MSODBC11, Install Status: InstallCompleted-Failure, Install Time: 00:00:00
DownloadManager Information: 0 : Product: SQLDriverPHP56IIS, Install Status: DependencyFailed-None, Install Time: 00:00:00
看起来依赖项是 ODBC 驱动程序 11,由于签名验证而无法安装,所以我决定手动获取所有内容。我得到了 3.2 php 驱动程序并将它们放在 ext 目录中并在 php.ini 中注册它们,但是当我尝试运行 msodbcsql.msi 包时,它给我的 Web 平台安装程序带来了问题,我一直收到一个错误该安装失败,因为我的操作系统不支持它。但是,Microsoft 网站上的下载页面将 Server 2012 列为兼容,当我运行 sqlsrv_errors() 时,我得到:
[message] => This extension requires the Microsoft ODBC Driver 11 for SQL Server. Access the following URL to download the ODBC Driver 11 for SQL Server for x86: http://go.microsoft.com/fwlink/?LinkId=163712 )
和
[Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified [message] => [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified ) )
所以它看起来仍在寻找那个 ODBC 驱动程序,但是当我尝试从错误消息中指定的链接下载它时,它告诉我它与我的操作系统不兼容,并且当我尝试使用 WPI 时,它无法通过签名验证.我在这里看到的唯一其他帖子建议使用 x64 版本而不是 x86 版本,但这不是页面上的选项,而且 Web 平台安装程序甚至会尝试安装不兼容的驱动程序似乎很奇怪。如何安装此驱动程序?
【问题讨论】:
你是否从这里安装了1033\amd64\msodbcsql.msi
:microsoft.com/en-us/download/details.aspx?id=36434
好吧。我认为这仅适用于 AMD 架构,因为大多数其他下载都指定 x64 ......对于我正在发疯的事情来说,这是一个多么简单的修复!谢谢:)
是的......为什么它被称为 AMD64 背后有一段完整的历史,即使在 Intel 64 位处理器上也是如此:en.wikipedia.org/wiki/X86-64
有完全相同的问题。我手动安装了 msodbcsql.msi,但是当我尝试通过 WPI 安装 php 驱动程序时,它只是再次下载 odbc,但签名验证仍然失败。
我从来没有让 WPI 为我工作,但是手动安装所有东西都可以。由于 msodbcsql 已设置完毕,您似乎只需要从 https://www.microsoft.com/en-us/download/details.aspx?id=20098 手动安装 PHP 驱动程序。根据系统要求下载与您安装的 php 版本相匹配的那个,将您的版本(可能是 nts 的)的 dll 复制到 php/ext,然后将它们加载到 php.ini 中。
【参考方案1】:
您好,从https://www.microsoft.com/en-us/download/details.aspx?id=36434获取更新的 ODBC 驱动程序
【讨论】:
以上是关于在 Windows Server 2012 R2 上安装 ODBC 驱动程序 11 时遇到问题的主要内容,如果未能解决你的问题,请参考以下文章
如何去除 windows server 2012 r2 自动锁定
windows server 2012 r2(GUI)密码遗失处理
windows server 2012 r2安装哪个版本的step7