我需要配置基于Windows 2016的RDS场高可用性和MS SQL Server 2016。其中一个步骤是连接到数据库。所有可用的指南都告诉我如何使用Server本机客户机(SQLNCLI)。但它仍然不受欢迎,不建议在生产中使用。
他们告诉我们要开始使用Microsoft驱动程序用于Server (MSOLEDBSQL)。
但是,没有关于如何使用Microsoft驱动程序为Server编写连接字符串的指南。甚至连微软也停止编写关于办公场所环境的指南。现在他们只碰Azure了。
这是SQL本机客户端的连接字符串:
DRIVER=SQL Server Native Client 10.0;SERVER=<SQL Server Name>;Trusted_Connection=Yes;APP=Remote Desktop Services Connection Broker;DATABASE=<DB Name>如何为2016年Server的Microsoft驱动程序正确编写连接字符串?
关于使用和配置带有RDS高可用性场的SQL Server的Microsoft驱动程序,我应该知道其他一些事情吗?
发布于 2021-01-20 09:09:48
我也损失了一天的时间去寻找它。我的问题是我在连接字符串中使用了一个命名实例。经纪人没有接受。对于本地客户来说,这不是问题。
我们填写了sql端口,而不是服务器\实例,并且它工作了。
驱动程序版本可以通过: odbcad32 ->文件DSN ->添加->选择驱动程序->高级
使用的连接字符串:
DRIVER={ODBC Driver 17 for SQL Server};Server=tcp:<sql server>,<server port>;Database=<Database>;APP=<APP Name>;Trusted_Connection=yes;发布于 2021-02-08 12:43:12
最后,我得到了一条对我有用的字符串:
DRIVER={ODBC Driver 13 for SQL Server};SERVER=tcp:RDSServer.best-company.local,1433;DATABASE=RDDB;APP=Remote Desktop Services Connection Broker;Trusted_Connection=Yes;在创建数据库之后,必须在中将dbowner权限分配给RDS服务器。这不是自动完成的。
RuLe驱动程序版本,您可以从C:\Windows\System32 32\ ODBC 32中获取Server 2016的13版本。
需要注意到
Trusted_Connection=Yes;只能用这种方式写。如果您编写YES,而不是Yes -数据库配置失败,在TerminalServices事件日志中没有非常描述性错误。
The object is already in the list. 另外,我注意到的是,在一些(我想大约5次)配置数据库的尝试失败之后,您完全被TerminalServices-SessionBroker事件日志中的错误锁定了。
Account locked due to RDDB bad passwords我找不到这个帐户被锁在哪里,以及如何解锁它。大约一天后,它会自动解锁,您可以再试一次。
数据库文件夹的路径确实是可选的,您可以将其保留为空。
https://serverfault.com/questions/1050251
复制相似问题