Todo login criado em um servidor SQL Server possui um banco de dados padrão (opção default database) configurado.
Este será o banco de dados ao qual o usuário irá se conectar sempre que não passar o banco de dados desejado no momento da conexão (como ocorre ao conectar-se utilizando o SQL Server Management Studio ou o Enterprise Manager)
Esta configuração pode impedir que o usuário se conecte ao servidor através das interfaces de gerenciamento (SSMS / Enterprise Manager / Query Analyzer) caso o banco de dados associado seja excluído. Neste caso, a mensagem "Cannot open user default database. Login failed" é exibida durante a tentativa de logon, como no exemplo abaixo:
Este será o banco de dados ao qual o usuário irá se conectar sempre que não passar o banco de dados desejado no momento da conexão (como ocorre ao conectar-se utilizando o SQL Server Management Studio ou o Enterprise Manager)
Esta configuração pode impedir que o usuário se conecte ao servidor através das interfaces de gerenciamento (SSMS / Enterprise Manager / Query Analyzer) caso o banco de dados associado seja excluído. Neste caso, a mensagem "Cannot open user default database. Login failed" é exibida durante a tentativa de logon, como no exemplo abaixo:
"Cannot open user default database. Login failed" |
Para contornar este problema, será necessário conectar-ser com outro usuário (cujo banco de dados padrão não tenha sido excluído) e executar a procedure sp_defaultdb, que configura o banco de dados padrão para um determinado usuário.
Deve-se utilizar a seguinte sintaxe para esta procedure:
sp_defaultdb 'username', 'database'
Após a reconfiguração o usuário em questão passará a ter o banco de dados padrão informado.
Para evitar que este problema aconteça, é recomendado associar usuários a um banco de dados cuja exclusão seja pouco provável. O banco master pode ser uma alternativa para evitar este problema (lembrando que os usuários normais não devem ter permissões de alteração neste banco).
Nenhum comentário:
Postar um comentário