Como adicionar usuário ao Sql Server Express 2008 sem o Management Studio

1

Eu tinha instalado o SQL Server 2008 R2 "Mecanismo de banco de dados do SQL Server" na máquina virtual e eu quero me conectar a ele através do odbc de outro computador (Linux).

Eu não tinha instalado o estúdio de gerenciamento, pois queria uma instalação mínima possível (é principalmente para fins de testes muito básicos, não para trabalhos reais).

Eu não tinha instalado o Management Studio e não quero instalá-lo.

Durante o procedimento de instalação, forneci um usuário e uma senha para conexão, no entanto, parece que algo deu errado e não consigo fazer login usando este usuário.

Situação:

  1. Eu instalei o "Mecanismo de Banco de Dados" e configurei a conexão TCP
  2. Posso me conectar a ele usando o isql, mas ele informa que o usuário não existe.
  3. Eu vejo no Event Log (do Windows) reclamando que o usuário não existe.
  4. Eu tentei executar a ferramenta de importação e consegui fazer o login usando o usuário do XP no mesmo PC e poderia executar consultas simples, no entanto, esta ferramenta não me permite executar um declaração, então não posso executar CREATE LOGIN user-name WITH PASSWORD='secret' .

Como posso me conectar a esse banco de dados e adicionar novos usuários?

Basicamente, neste ponto, tenho duas opções:

  1. Reinstale o banco de dados, mas:

    Eu não quero e nada promete que desta vez funcionaria e criaria um usuário.

  2. Instale o estúdio de gerenciamento Não quero é uma instalação enorme para a máquina virtual.

Pergunta:

Existe alguma ferramenta de linha de comando simples para acessar o DB no local apenas para executar várias instruções usando a autenticação do XP sem uma ferramenta enorme do Management Studio?

Resumo da solução:

  1. Use sqlcmd -Q "create login ..." para executar instruções sql de que preciso. sqlcmd.exe é instalado com o "Mecanismo de Banco de Dados do SQL Server"
  2. Meu usuário não foi definido corretamente durante a instalação porque o MS SQL não gostou da minha senha que eu forneci e não me alertou sobre o problema ...
por Artyom 18.11.2010 / 14:33

2 respostas

3

O sqlcmd permitirá que você execute comandos no servidor usando o Windows ou a Autenticação SQL. Se algo deu errado e você acabou sem as contas do Windows com direitos concedidos ao servidor, você pode iniciar o SQL Serve no modo de usuário único para obter acesso e criar novas contas.

    
por 18.11.2010 / 14:47
1

No meu sistema, que é o SQL 2008 (não o R2), o sqlcmd.exe está localizado em "C: \ Arquivos de Programas \ Microsoft SQL Server \ 100 \ Tools \ Binn". Se você estiver usando o R2, pode ser um caminho ligeiramente diferente. Você poderia tentar procurar "osql.exe". O osql.exe funciona basicamente como o sqlcmd, mas é anterior ao sqlcmd.exe e não é tão completo. No meu sistema, o osql.exe está no mesmo diretório Binn que o sqlcmd.exe.

Mesmo quando pretendo administrar o servidor remotamente, acho que instalar as ferramentas no servidor, junto com os serviços SQL, causa muito menos dor do que não instalá-las. E eu tenho usado o SQL Server por 12 anos. Certas coisas (como replicação) são muito difíceis de serem feitas manualmente ao se escrever Transact-sql porque as chamadas de stored procedures podem ser muito complexas, e muitas vezes falta algum utilitário aparentemente trivial que você precise precisar.

    
por 18.11.2010 / 16:20