Não consigo me conectar ao meu SQL Server 2008 local?

18

Acabei de instalar o SQL Server 2008 e não consigo me conectar a ele com o SQL Server Management Studio. Minha intenção é apenas permitir que meu usuário de janelas locais seja autenticado, mas não sei ao certo como fazer isso .

Na caixa de diálogo de conexão, estou escrevendo:

Server type: Database Engine
Server name: (local)
Authentication: Windows Authentication

Minha primeira pergunta seria se é com isso que eu deveria me conectar? Quando tento conectar, recebo esta mensagem de erro:

TITLE: Connect to Server
------------------------------

Cannot connect to (local).

------------------------------
ADDITIONAL INFORMATION:

A network-related or instance-specific error occurred while establishing a connection
to SQL Server. The server was not found or was not accessible. Verify that the instance 
name is correct and that SQL Server is configured to allow remote connections.
(provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)
(Microsoft SQL Server, Error: 2)

For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&EvtSrc=MSSQLServer&EvtID=2&LinkId=20476

------------------------------
BUTTONS:

OK
------------------------------

Eu fui para o o URL lá exibido e basicamente diz "certifique-se de que o servidor SQL está sendo executado". Eu acho que é, mas eu não tenho certeza.

Desativei o Firewall do Windows (esse é o Windows 7 7100 x86). Eu também mudei o sistema de log no SQL Server Configuration Manager, mas parece que não é um problema de log in, mas nem mesmo ser capaz de abrir o socket para ele. Na mesma ferramenta eu ativei todos os protocolos em "SQL Server Network Configuration" - > "Protocolos para SQLEXPRESS" sem sorte. Eu fico sem ideias. O que mais eu posso tentar?

    
por pupeno 24.05.2009 / 11:55

2 respostas

23

Ok, você pode abrir seu console de serviços e rolar para baixo até S for SQL Server. Agora você deve ver os serviços. Certifique-se de que o SQL Server (SQLEXPRESS) esteja em execução e, em seguida, tente. \ SQLEXPRESS em vez de (local).

Assim como no seu exemplo:

Server type: Database Engine
Server name: .\SQLEXPRESS
Authentication: Windows Authentication

Espero que isso ajude

Update: Estas instruções são porque eu suponho que você está executando a edição Express Edition não Dev / Std / Ent do SQL Server

Tente garantir que os protocolos apropriados estejam ativados:

  1. Inicie o SQL Configuration Manager (por exemplo: Iniciar- > Programas- > SQL Server- > Ferramentas de configuração)
  2. Expanda a configuração do cliente nativo do SQL
  3. Clique em Protocolos do cliente (você pode ter um de 32 bits e um de 64 bits, aplicar a ambos)
  4. Garanta que a memória compartilhada, o TCP / IP e os pipes nomeados estejam ativados nessa ordem
  5. Expandir a configuração de rede do SQL Server
  6. Garanta que a memória compartilhada para SQLEXPRESS e / ou MSSQLSERVER esteja ativada
  7. Clique em Serviços do SQL Server
  8. Reinicie todos os serviços em execução

Agora você deve conseguir fazer login na instância

Se você achar que não pode fazer login, talvez seja necessário seguir estas instruções para colocar o SQL Server no modo de usuário único. Consulte aqui para obter instruções completas da Microsoft.

By default, sqlservr.exe is located at C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Binn. If a second instance of SQL Server is installed, a second copy of sqlservr.exe is located in a directory such as

C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\binn.

You can start one instance of SQL Server by using sqlservr.exe from a different instance, but SQL Server will start the version of the incorrect instance as well, including service packs, which may lead to unexpected results.

To avoid this, use the MS-DOS change directory (cd) command to move to the correct directory before starting sqlservr.exe, as shown in the following example.

cd \Program Files\Microsoft SQL Server\MSSQL10_50.1\MSSQL\Binn

To start the default instance of SQL Server in single-user mode from a command prompt

From a command prompt, enter the following command:

sqlservr.exe -m

Single-user mode can be useful for performing emergency maintenance when you do not want other users to connect to SQL Server, but any user can become the single user, including the SQL Server Agent service.

Agora você deve conseguir fazer login na instância e adicionar-se à guia de segurança e conceder acesso total.

Método alternativo:

Existe um script aqui que alega adicionar o usuário atual a a função sysadmin do SQL Server. Isso pode funcionar no modo de usuário único, mas eu não verifiquei

    
por 24.05.2009 / 12:01
0

(local) resolve para 127.0.0.1 e funciona apenas para padrões. Instâncias, como o padrão para o SQL Server Express, precisam de um nome real. Observe que você pode verificar o log de erros do SQL Server (pasta de instalação do SQL e, em seguida, log) e uma das primeiras entradas fornecerá o IP, a porta e o nome da instância.

Então você poderia usá-los. Nomes de instâncias são bons de usar, pois são bastante consistentes. Observe que eles também usam portas dinâmicas, portanto, pode ser uma porta diferente em cada reinicialização. O SQL Server Configuration Manager pode definir uma porta específica. não tenho certeza sobre as ferramentas Express.

    
por 29.05.2009 / 22:12