Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
O Driver ODBC para SQL Server suporta Driver-Aware Pool de Conexões. Este artigo descreve as melhorias feitas no pooling de conexões sensível ao driver no Microsoft ODBC Driver for SQL Server no Windows.
Quaisquer que sejam as propriedades da ligação, as ligações que usam
SQLDriverConnectvão para um pool separado das ligações que usamSQLConnect.Ao usar autenticação SQL Server e pooling de conexões consciente do driver, o driver não utiliza o contexto de segurança do utilizador do Windows para o thread atual para separar as ligações no pool. Ou seja, se as ligações forem equivalentes nos seus parâmetros para cenários de personificação do Windows com autenticação SQL Server, e estiverem a usar as mesmas credenciais de autenticação SQL Server para se ligar ao backend, diferentes utilizadores do Windows podem potencialmente usar o mesmo conjunto de ligações. Ao usar autenticação do Windows e pooling de conexões com reconhecimento do driver, o driver utiliza o contexto de segurança do utilizador atual do Windows para separar as ligações na pool. Ou seja, em cenários de imitação do Windows, diferentes utilizadores do Windows não partilham ligações mesmo que as ligações usem os mesmos parâmetros.
Ao usar o Microsoft Entra ID (anteriormente Azure Active Directory) e o pooling de ligações com reconhecimento de driver, o driver também utiliza o valor de Autenticação para determinar a afiliação ao pool de ligações.
O pooling de ligações consciente do driver impede que uma ligação defeituosa seja devolvida do pool.
A agrupamento de conexões orientado para o driver reconhece atributos de conexão específicos do driver. Assim, se uma ligação usar
SQL_COPT_SS_APPLICATION_INTENTconfigurado para apenas leitura, essa ligação obtém o seu próprio pool de ligações.Definir o
SQL_COPT_SS_ACCESS_TOKENatributo faz com que uma ligação seja agrupada separadamente
Se um dos seguintes IDs de atributos de conexão ou palavras-chave de cadeia de ligação for diferente entre a sua cadeia de ligação e a cadeia de ligação em pool, o driver utiliza uma ligação em pool. No entanto, o desempenho é melhor se todos os IDs de atributos de conexão ou palavras-chave da cadeia de conexão forem correspondentes. (Para corresponder a uma ligação no pool, o driver reinicia o atributo.) O desempenho degrada-se porque reiniciar os seguintes parâmetros requer uma chamada extra de rede.
Se dois ou mais dos atributos ou palavras-chave de ligação seguintes diferirem, uma ligação agrupada não é utilizada.
LanguageQuoteIdSQL_ATTR_TXN_ISOLATIONSQL_COPT_SS_QUOTED_IDENT
Se houver uma diferença em qualquer uma das seguintes palavras-chave de conexão entre a sua string de conexão e uma string de conexão em pool, uma conexão em pool não é utilizada.
Keyword Driver ODBC 13+ Driver ODBC 11 AddressYes Yes AnsiNPWYes Yes AppYes Yes ApplicationIntentYes Yes AuthenticationYes Não ColumnEncryptionYes Não DatabaseYes Yes EncryptYes Yes Failover_PartnerYes Yes FailoverPartnerSPNYes Yes MARS_ConnectionYes Yes NetworkYes Yes PWDYes Yes ServerYes Yes ServerSPNYes Yes TransparentNetworkIPResolutionYes Yes Trusted_ConnectionYes Yes TrustServerCertificateYes Yes UIDYes Yes WSIDYes Yes Se houver uma diferença em qualquer um dos seguintes atributos de ligação entre a sua cadeia de ligação e uma cadeia de ligação agrupada, não é utilizada uma ligação agrupada.
Attribute Driver ODBC 13+ Driver ODBC 11 SQL_ATTR_CURRENT_CATALOGYes Yes SQL_ATTR_PACKET_SIZEYes Yes SQL_COPT_SS_ANSI_NPWYes Yes SQL_COPT_SS_ACCESS_TOKENYes Não SQL_COPT_SS_AUTHENTICATIONYes Não SQL_COPT_SS_ATTACHDBFILENAMEYes Yes SQL_COPT_SS_BCPYes Yes SQL_COPT_SS_COLUMN_ENCRYPTIONYes Não SQL_COPT_SS_CONCAT_NULLYes Yes SQL_COPT_SS_ENCRYPTYes Yes SQL_COPT_SS_FAILOVER_PARTNERYes Yes SQL_COPT_SS_FAILOVER_PARTNER_SPNYes Yes SQL_COPT_SS_INTEGRATED_SECURITYYes Yes SQL_COPT_SS_MARS_ENABLEDYes Yes SQL_COPT_SS_OLDPWDYes Yes SQL_COPT_SS_SERVER_SPNYes Yes SQL_COPT_SS_TRUST_SERVER_CERTIFICATEYes Yes SSPROP_AUTH_REPL_SERVER_NAMEYes Yes SQL_COPT_SS_TNIRYes Não O driver pode reiniciar e reajustar as seguintes palavras-chave e atributos da ligação sem efetuar uma chamada extra de rede. O driver reinicia estes parâmetros para garantir que a ligação não contém informações incorretas.
Estas palavras-chave de ligação não são consideradas quando o Driver Manager tenta associar a sua ligação com uma ligação no pool. (Mesmo que altere um destes parâmetros, uma ligação existente pode ser reutilizada. O driver irá reiniciar as opções, conforme necessário.) Estes atributos podem ser reiniciados no lado do cliente sem necessidade de uma chamada extra de rede.
Keyword Driver ODBC 13+ Driver ODBC 11 AutoTranslateYes Yes DescriptionYes Yes MultisubnetFailoverYes Yes QueryLog_OnYes Yes QueryLogFileYes Yes QueryLogTimeYes Yes RegionalYes Yes StatsLog_OnYes Yes StatsLogFileYes Yes Se alterar um dos seguintes atributos de ligação, uma ligação existente pode ser reutilizada. O driver irá redefinir o valor, conforme necessário. O driver pode redefinir estes atributos no cliente sem fazer uma chamada extra de rede.
Attribute Driver ODBC 13+ Driver ODBC 11 Todos os atributos da declaração Yes Yes SQL_ATTR_AUTOCOMMITYes Yes SQL_ATTR_CONNECTION_TIMEOUTYes Yes SQL_ATTR_DISCONNECT_BEHAVIOR SQL_ATTR_CONNECTION_TIMEOUTYes Yes SQL_ATTR_LOGIN_TIMEOUTYes Yes SQL_ATTR_ODBC_CURSORSYes Yes SQL_COPT_SS_PERF_DATAYes Yes SQL_COPT_SS_PERF_DATA_LOGYes Yes SQL_COPT_SS_PERF_DATA_LOG_NOWYes Yes SQL_COPT_SS_PERF_QUERYYes Yes SQL_COPT_SS_PERF_QUERY_INTERVALYes Yes SQL_COPT_SS_PERF_QUERY_LOGYes Yes SQL_COPT_SS_PRESERVE_CURSORSYes Yes SQL_COPT_SS_TRANSLATEYes Yes SQL_COPT_SS_USER_DATAYes Yes SQL_COPT_SS_WARN_ON_CP_ERRORYes Yes