it-swarm-ko.tech

로컬 SQL Server 2008에 연결할 수 없습니까?

방금 SQL Server 2008을 설치했는데 SQL Server Management Studio로 연결할 수 없습니다. 내 의도는 로컬 윈도우 사용자를 인증하지만 그 방법을 완전히 확신하지 못함 입니다.

연결 대화 상자에서 쓰고 있습니다.

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

내 첫 번째 질문은 그것이 내가 연결 해야하는 것입니까? 연결하려고하면이 오류 메시지가 나타납니다.

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
------------------------------

표시된 URL 에 갔는데 기본적으로 "SQL 서버가 실행 중인지 확인하십시오"라고 표시되어 있습니다. 나는 그것이 생각하지만 완전히 확신하지 못한다.

Windows 방화벽을 비활성화했습니다 (Windows 7 7100 x86). 또한 SQL Server 구성 관리자에서 로그온 시스템을 변경했지만 로그인 문제는 아니지만 소켓을 열 수없는 것 같습니다. 같은 툴에서 "SQL Server 네트워크 구성"-> "SQLEXPRESS 프로토콜"에서 모든 프로토콜을 운이없이 활성화했습니다. 아이디어가 부족합니다. 다른 무엇을 시도 할 수 있습니까?

18
pupeno

서비스 콘솔을 열고 SQL Server 용 S로 스크롤 할 수 있습니까? 이제 서비스를 볼 수 있습니다. SQL Server (SQLEXPRESS)가 실행 중인지 확인한 다음 (로컬) 대신.\SQLEXPRESS를 시도하십시오.

따라서 귀하의 예에 따라 :

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

도움이 되었기를 바랍니다

업데이트 :이 지침은 SQL Server의 Dev/Std/Ent 버전이 아닌 Express Edition을 실행한다고 가정하기 때문입니다.


적절한 프로토콜이 활성화되어 있는지 확인하십시오.

  1. SQL 구성 관리자를 시작하십시오 (예 : 시작-> 프로그램-> SQL 서버-> 구성 도구)
  2. SQL 기본 클라이언트 구성을 펼치십시오.
  3. 클라이언트 프로토콜을 클릭하십시오 (32 비트 및 64 비트가있을 수 있음).
  4. 공유 메모리, TCP/IP, 명명 된 파이프가 순서대로 활성화되어 있는지 확인
  5. SQL Server 네트워크 구성 확장
  6. SQLEXPRESS 및/또는 MSSQLSERVER에 대한 공유 메모리가 사용 가능한지 확인하십시오.
  7. SQL Server Services를 클릭하십시오.
  8. 실행중인 서비스를 다시 시작하십시오.

이제 인스턴스에 로그인 할 수 있어야합니다


전혀 로그인 할 수없는 경우 SQL Server를 단일 사용자 모드로 설정하려면이 지침을 따라야합니다. Microsoft의 전체 지침은 here 를 참조하십시오.

기본적으로 sqlservr.exe는 C :\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Binn에 있습니다. 두 번째 SQL Server 인스턴스가 설치되어 있으면 sqlservr.exe의 두 번째 복사본은 다음과 같은 디렉터리에 있습니다.

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

다른 인스턴스에서 sqlservr.exe를 사용하여 하나의 SQL Server 인스턴스를 시작할 수 있지만 SQL Server는 서비스 팩을 포함하여 잘못된 인스턴스 버전도 시작하므로 예기치 않은 결과가 발생할 수 있습니다.

이를 피하려면 다음 예제와 같이 sqlservr.exe를 시작하기 전에 MS-DOS 디렉토리 변경 (cd) 명령을 사용하여 올바른 디렉토리로 이동하십시오.

cd\프로그램 파일\Microsoft SQL Server\MSSQL10_50.1\MSSQL\Binn

명령 프롬프트에서 단일 사용자 모드로 SQL Server의 기본 인스턴스를 시작하려면

명령 프롬프트에서 다음 명령을 입력하십시오.

sqlservr.exe -m

단일 사용자 모드는 다른 사용자가 SQL Server에 연결하지 않도록하려는 경우 긴급 유지 관리를 수행하는 데 유용 할 수 있지만 SQL Server 에이전트 서비스를 포함하여 모든 사용자가 단일 사용자가 될 수 있습니다.

이제 인스턴스에 로그인하고 보안 탭에 자신을 추가하고 모든 권한을 부여 할 수 있어야합니다.

다른 방법 :

다음은 현재 사용자를 SQL Server sysadmin 역할에 추가한다고 주장하는 스크립트 here 입니다. 단일 사용자 모드에서 작동 할 수 있지만 확인하지 않았습니다.

23
Wayne

(local)은 127.0.0.1로 해결되며 기본값으로 만 작동합니다. SQL Server Express의 기본값과 같은 인스턴스에는 실제 이름이 필요합니다. SQL Server에 대한 오류 로그 (SQL 설치 폴더, 로그)를 확인할 수 있으며 처음 몇 개 항목 중 하나에 인스턴스의 IP, 포트 및 이름이 표시됩니다.

따라서 대신 사용할 수 있습니다. 인스턴스 이름은 상당히 일관성이 있으므로 사용하기 좋습니다. 동적 포트도 사용하므로 다시 시작할 때마다 다른 포트가 될 수 있습니다. SQL Server 구성 관리자는 특정 포트를 설정할 수 있습니다. Express 도구에 대해 잘 모릅니다.

0
Steve Jones