Estou usando o SQL Server 2008 Management Studio. A conta de logon atual pertence ao grupo de administradores locais da máquina. Estou usando o modo Segurança Integrada do Windows no SQL Server 2008.
Meu problema é que, depois de efetuar o login no SQL Server Management Studio, seleciono meu nome de login em Segurança / Logins, em seguida, selecione a guia Funções do servidor e o último item - sysadmin para me pertencer a esse grupo / função, mas diz: não tem permissão suficiente. Alguma ideia do que está errado? Eu acho que o administrador local deve ser capaz de fazer qualquer coisa. :-)
sql-server
security
sql-server-2008
George2
fonte
fonte
Respostas:
O logon da sessão em que você tenta definir permissões deve ter permissões.
Então, o login que você está usando é um administrador local? Isso significa que o grupo de administradores locais não tem direitos suficientes.
A GUI também executará isso sp_addsrvrolemember . Embora isso diga
Portanto, o grupo de administradores locais não é membro do sysadmin.
Editar:
Para resolver: use um login que tenha direitos. você pode encontrar um usando sp_helpsrvrolemember
fonte
Em um artigo de outra forma bom, Solucionando problemas: conectando-se ao SQL Server quando os administradores de sistema estão bloqueados , o autor nos diz que tudo o que precisamos fazer para recuperar o controle do SQL Server é:
Infelizmente, o que significa iniciar no modo de usuário único não é uma questão intuitiva. Além disso, pelo menos em minha experiência, a associação ao grupo de Administradores local do meu computador não concedeu o status sysadmin à minha conta de "usuário".
Esta história começou quando, para resolver um problema de associação em meu domínio por um servidor não-DC (uma consequência da alteração do ISP), reconstruí o DC no Windows Server 2008 R2 a partir de 2008. Isso resolveu alguns problemas menores, mas não resolveu a questão da associação pelo servidor errante. Foi necessária uma correção sugerida no ServerFault para fazer isso (no meu caso, era uma questão de redefinir o winsock e o tcpip).
O SQL Server 2008 reside nesse segundo servidor, agora um membro do domínio. Aqui está o problema. Como alguém aponta no ServerFault, é comum pressionar o botão "deixar o usuário atual se tornar administrador de sistemas" ao instalar o Server 2008. Comum também para não considerar mais ninguém. Como essa identidade de usuário único era um membro de um domínio que não existia mais, ninguém tinha permissão para administrar o Sql Server.
Entrei como administrador do servidor local que existia quando o Sql Server foi instalado, mas, embora isso me permitisse acessar o Management Studio, rapidamente descobri que BUILTIN \ Administrators tinha apenas a função de servidor "público".
Após muita pesquisa e experimentação, deparei-me com um artigo fornecendo as especificidades do logon de usuário único http://technet.microsoft.com/en-us/library/ms180965.aspx :
Para se preparar para executar esta etapa, você deve desligar o Sql Server (que é executado por padrão na maioria dos casos). Use o SQL Configuration Manager para parar o "Sql Server".
Em um prompt de comando, navegue até o local do arquivo do programa (ou equivalente na sua máquina) e emita o comando "sqlservr.exe -m". Se você vir um fluxo de atividades registrado no prompt de comando, estará obtendo sucesso. Se ele falhar ao iniciar, provavelmente você já possui o SQL Server em execução. Desligue isso.
Permita que a instância de usuário único conecte seus bancos de dados. Quando a atividade de log terminar, abra o Management Studio. Você estará automaticamente no modo de usuário único e, portanto, qualquer conta que você represente será um administrador de sistema. Use esse poder para ajustar logins de segurança e funções de servidor.
No meu caso, tive que recriar as contas de domínio no novo domínio, excluir seus nomes no SQL Server e reconstruí-los (devido à situação do SID / GUID), reatribuindo permissões para bancos de dados específicos conforme necessário.
fonte
Isso é verdade, mas, nesse caso, você pode se recuperar dessa situação iniciando o Serviço do SQL Server no modo de usuário único (modo de emergência) e qualquer administrador local poderá fazer logon.
Veja MSDN .
fonte
Por padrão, o SQL adiciona o grupo BUILTIN \ Administrators à função sysadmin, o que significa que qualquer administrador local do NT é automaticamente um administrador de sistemas SQL. No Vista, por causa do UAC, você deve executar no modo 'como administrador' para se beneficiar desse privilégio.
fonte
Por padrão, o SQL Server 2008 não adiciona mais BUILTIN \ Administrators como membros da função de servidor fixa sysadmin. Quando você passa pelo instalador, ele pergunta qual conta ou contas devem ter direitos sysadmin. Há um botão que basicamente diz "faça de mim um administrador de sistemas" que adicionará a conta do usuário que está instalando como um administrador de sistemas.
Se eles não adicionaram outros usuários como administrador de sistemas, apenas esse usuário é atualmente um sysamdin. Você precisará que essa pessoa faça logon no SQL Server e conceda os direitos de administrador de sistema dos DBAs.
fonte
Refleti sobre o mesmo problema após uma nova instalação até registrar o servidor, no SQL Server 2008, e tudo correu como deveria
fonte