Abra o SQL Server Management Studio (SSMS) e execute o código a seguir para ver qual associação de função de servidor você possui:
SELECT spr.name
, sp.name
FROM master.sys.server_principals sp
LEFT JOIN master.sys.server_role_members srm ON sp.principal_id = srm.member_principal_id
LEFT JOIN master.sys.server_principals spr ON srm.role_principal_id = spr.principal_id
WHERE sp.sid = SUSER_SID();
Os resultados parecem com:
╔══════════╦════════════╗ ║ RoleName ║ MemberName ║ ╠══════════╬════════════╣ ║ sysadmin ║ MyUser ║ ╚══════════╩════════════╝
Se o resultado mostrar sysadmin
na primeira coluna, você terá o nível mais alto de privilégio disponível no SQL Server. A execução do código a seguir, em uma "Nova janela de consulta", mostrará a você definitivamente os bancos de dados presentes na instância do SQL Server, exceto os bancos de dados do sistema, master, tempdb, msdb e model:
SELECT d.name
, d.create_date
, d.is_encrypted
, d.state_desc
, d.user_access_desc
FROM sys.databases d
WHERE d.database_id > 4
ORDER BY d.name;
Se a lista estiver vazia e você executar isso como um membro da função sysadmin, poderá ter certeza de que não há bancos de dados conectados à instância do SQL Server. Tendo dito isso, pode haver arquivos de banco de dados existentes no servidor que foram desconectados. Localizar arquivos de banco de dados desanexados é uma tarefa complicada, já que você não pode confiar nos arquivos com nomes ou extensões de arquivo específicos.
O SQL Server pode ser instalado várias vezes em um único servidor, através do que é conhecido como "instâncias nomeadas". Você deve verificar a lista de serviços do servidor, através do miniaplicativo de serviços no painel de controle, para nomes de serviço como "SQL Server (*)", onde o * seria o nome da instância. Se houver instâncias múltiplas no servidor, você deve verificar cada instância separadamente usando o código fornecido acima.