Quando um cliente se conecta a uma instância do SQL Server sem especificar um contexto de banco de dados, é usado o banco de dados padrão definido para seu logon. Se esse banco de dados não estiver disponível por qualquer motivo, será exibida a mensagem acima.
Quando um cliente se conecta a uma instância do SQL Server sem especificar um contexto de banco de dados, é usado o banco de dados padrão definido para seu logon. Se esse banco de dados não estiver disponível por qualquer motivo, será exibida a mensagem acima.
Observação: se o logon for membro de um ou mais grupos do Linux também definidos como logons no SQL Server, o banco de dados padrão de um desses grupos poderá ser usado. Não há um modo confiável para prever qual dos bancos de dados padrão será escolhido durante uma tentativa de logon. Portanto, é importante verificar a associação de grupo da conta do logon e verificar o banco de dados padrão definido para todos os grupos, para saber se estão disponíveis.
É necessário tornar o banco de dados padrão acessível ou evitar o uso desse banco de dados. As opções são:
Para obter mais informações sobre bancos de dados padrão, consulte os tópicos nos Manuais Online sobre "sp_defaultdb" e o artigo 307864 da Base de Dados de Conhecimento Microsoft.
Altere sua cadeia de conexão para sempre especificar determinado banco de dados.
Verifique se o banco de dados padrão definido para cada logon ainda existe e está acessível. Examine o log de erros do SQL Server para tentar descobrir por que um banco de dados específico não está acessível.
Use uma ferramenta como o OSQL para especificar um banco de dados durante a conexão inicial. Quando você estiver conectado, execute sp_defaultdb para alterar o banco de dados padrão do logon para um banco de dados que possa ser acessado no momento.
Faça logon com uma conta que seja membro das funções fixas de servidor sysadmin ou securityadmin, e execute sp_defaultdb para alterar o banco de dados padrão do logon que falhou para um banco de dados acessível. Para obter mais informações sobre bancos de dados padrão, consulte "sp_defaultdb" nos Manuais Online e o artigo 307864 da Base de Dados de Conhecimento Microsoft.
Nome | Descrição | Valor Padrão |
Habilitado | Habilita ou desabilita o fluxo de trabalho. | Sim |
Intervalo (segundos) | O intervalo de tempo recorrente em segundos no qual executar o fluxo de trabalho. | 300 |
Prioridade | Define a Prioridade do Alerta. | 1 |
Gravidade | Define a Severidade do Alerta. | 2 |
Tempo de Sincronização | Tempo de Sincronização |
|
Tempo Limite (em segundos) | Especifica o tempo que o fluxo de trabalho pode para ser executado antes de ser fechado e marcado como falha. | 200 |
Tempo limite da conexão de banco de dados (segundos) | O fluxo de trabalho falhará e registrará um evento, se ele não conseguir acessar o banco de dados durante o período especificado. | 15 |
Target | Microsoft.SQLServer.Linux.DBEngine | ||
Category | EventCollection | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | Error | ||
Alert Priority | Normal | ||
Remotable | True | ||
Alert Message |
| ||
Comment | Mom2017ID='{4FFA6A6A-3E49-468E-8C4A-DF5029908802}';MOM2017GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74} |
ID | Module Type | TypeId | RunAs |
---|---|---|---|
_F6DA1507_12AF_11D3_AB21_00A0C98620CE_ | DataSource | Microsoft.SQLServer.Linux.DataSource.EventCollectionFiltered | Default |
GenerateAlert | WriteAction | System.Health.GenerateAlert | Default |
<Rule ID="Microsoft.SQLServer.Linux.EventRule.DBEngine.Cannot_open_user_default_database._Login_failed_1_5_Rule" Target="SqlDiscL!Microsoft.SQLServer.Linux.DBEngine" Enabled="true" ConfirmDelivery="true" Remotable="true" Comment="Mom2017ID='{4FFA6A6A-3E49-468E-8C4A-DF5029908802}';MOM2017GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74}">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="_F6DA1507_12AF_11D3_AB21_00A0C98620CE_" Comment="{F6DA1507-12AF-11D3-AB21-00A0C98620CE}" TypeID="Microsoft.SQLServer.Linux.DataSource.EventCollectionFiltered">
<MachineName>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/MachineName$</MachineName>
<NetbiosComputerName>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/NetbiosComputerName$</NetbiosComputerName>
<InstanceName>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/InstanceName$</InstanceName>
<ConnectionString>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/ConnectionString$</ConnectionString>
<InstanceVersion>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/Version$</InstanceVersion>
<InstanceEdition>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/Edition$</InstanceEdition>
<SqlExecTimeoutSeconds>60</SqlExecTimeoutSeconds>
<SqlTimeoutSeconds>15</SqlTimeoutSeconds>
<TimeoutSeconds>200</TimeoutSeconds>
<IntervalSeconds>300</IntervalSeconds>
<SyncTime/>
<EventDisplayNumber>4064</EventDisplayNumber>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="Health!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>2</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.SQLServer.Linux.EventRule.DBEngine.Cannot_open_user_default_database._Login_failed_1_5_Rule.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/MachineName$</AlertParameter1>
<AlertParameter2>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/InstanceName$</AlertParameter2>
<AlertParameter3>Event ID: $Data/Property[@Name='EventID']$. $Data/Property[@Name='Message']$</AlertParameter3>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>