'sa'계정을 사용하여 SQL Server에 연결할 수 없습니다. 누락 된 것은 무엇입니까?


20

다음 명령을 사용하여 SQL Server 2005 Express 인스턴스에 로그인하려고합니다.

osql -S .\INSTANCE -U sa -P password

나는 오류 : 'sa'사용자가 로그인하지 못했습니다.

-E 스위치를 사용하여 잘 연결할 수 있습니다. 몇 달 동안 작동했다는 것을 추가해야합니다. 누군가가 무언가를 바꾸 었다고 생각하지만 그것이 무엇인지 알 수는 없습니다.

이것이 내가 시도한 것입니다.

  • Windows 인증을 사용하여 로그인하고 sa 비밀번호를 변경하십시오.

    sp_password NULL, 새 암호, 'sa'

  • 'sa'로그인 활성화 :

    로그인 변경 사용; 암호 변경 sa로 로그인 이동 = 'newpassword'; 가다

  • 혼합 인증 이 사용 가능한지 Windows 레지스트리를 확인했습니다 . 올바른 값 : LoginMode = 2

다른 무엇을 확인해야합니까? 미리 감사드립니다.

추가 정보:

이것은 Windows 2003 Server입니다. 그들은 몇 가지 암호 정책을 사용하도록 설정했습니다. SQL Server를 다른 복잡한 서버에 설치할 때 응용 프로그램에서 사용하는 기본 'sa'암호를 변경해야한다는 것을 기억합니다.

VNC를 사용하여 연결하고 있으므로 실제로 SSMS를 사용할 수 없습니다

내 응용 프로그램은 다른 SQL Server 로그인을 사용하여 연결할 수 있지만 'sa'는 없습니다

마지막으로 해결책을 찾지 못하면이 인스턴스를 제거하고 다시 설치하지만 문제가 무엇인지 알고 싶습니다. 다시 발생하는 경우와 평범한 호기심을 위해서입니다.

답변:


23

@SpaceManSpiff가 말했듯이 혼합 모드가 활성화되어 있는지 확인하는 것을 잊지 마십시오. 누군가 나를 위해 그 설정을 변경했고 같은 문제가있었습니다. 해결 방법은 다음과 같습니다.

  1. Windows 인증으로 MSSQL Server Management Studio에 로그인하십시오.
  2. SQL Server Management Studio 개체 탐색기에서 서버를 마우스 오른쪽 단추로 클릭 한 다음 속성을 클릭합니다.
  3. 서버 속성에서 "보안"페이지를 선택하십시오.
  4. "SQL Server 및 Windows 인증 모드"로 서버 인증을 선택하고 확인을 클릭하십시오. MSSQL 서버 관리 데이터베이스 속성
  5. SQL 서비스를 다시 시작한 후 'sa'세부 사항으로 로그인하십시오.

출처 : http://forums.eukhost.com/f15/login-failed-user-sa-microsoft-sql-server-error-18456-a-12544/


12

좋아, 나는 무슨 일이 일어나고 있는지 알아낼 수 있었고 해결 방법을 얻었다.

일주일 전에 그들은 Windows 보안 정책을 가지고 노는 것 같습니다 . 그들은 권한을 추가 / 제거하고 있었지만 실제로 알지 못했기 때문에 그들이 한 일을 정확하게 줄 수는 없습니다 (ouch!).

어쨌든 Windows 인증 (-E 스위치)을 사용하여 연결하고 다음 쿼리를 실행합니다.

ALTER LOGIN [sa] WITH PASSWORD='newpassword', CHECK_POLICY=OFF
GO
ALTER LOGIN [sa] ENABLE
GO

여기서 키는 CHECK_POLICY = OFF 입니다. 그 트릭을 만들었습니다. 이것이 도메인 설정의 향후 변경에 면역력을 갖기를 바랍니다.

모든 제안에 감사드립니다.


6

점검 할 사항

SA 계정의 비밀번호

혼합 모드 사용

SA 계정이 비활성화되어 있습니까?

다른 SQL 계정을 작성하고 시도하십시오 (-E를 사용하여이를 수행 할 수 있기 때문에)

ODBC 연결을 사용하여 테스트하면 SA가 작동하는지 확인하기 위해이 연결을 만들 수 있습니다.

아, 그리고 항상 창에서 모든 것을 잡아서 재부팅하십시오 (정말로, 이것은 내가 SQL 서버를 테스트 한 후에 도움이됩니다)


1

몇 년 전 Windows ServicePack (SQLServer 업데이트는 없지만 Windows)을 설치 한 후 SQLServer ServicePack이 설치 될 때까지 SQLServer는 연결을 거부했습니다! 몇 시간 후에 이벤트 로그에서 메시지를 찾았습니다.

나는 그들이 큰 보안 허점이 있음을 알고 모든 관리자가 팩을 설치하도록하고 싶었 기 때문에 이것을했다고 생각합니다. 그러나 얼마 전이므로 정확한 버전이 없습니다. 이벤트 로그를 다시 확인하고 모든 / 최신 서비스 팩을 설치하는 것이 좋습니다.


이것은 유망한 것으로 보입니다. 나는 월요일에 시도하고 다시보고 할 것입니다. 제안 해 주셔서 감사합니다.
JAG

마지막으로 최신 서비스 팩을 설치하지 않았습니다. 내 자신의 '허용 된 답변'을 참조하십시오.
JAG

0

Management Studio 또는 Management Studio Express가 설치되어 있다고 가정하면 sa를 사용하여 Management Studio를 인스턴스에 연결할 수 있습니까?

JR


1
SSMS가 설치되어 있지 않으며 가능하면 설치하지 않는 것이 좋습니다. 또한 SSMS를 사용하여 다른 컴퓨터에서 연결하는 것은 고객 서버이므로 옵션이 아닙니다. 명령 행 도구 만 사용할 수 있습니다.
JAG

다른 PC에 Management Studio가있는 경우 VPN의 맨 끝에 있더라도 여전히 연결할 수 있어야합니다. 요점은 서버 설정에 문제가 있거나 osql 명령에 문제가 있는지 확인하는 것입니다.
John Rennie

0

레지스트리를 변경 한 후 SQL Server 서비스를 다시 시작 했습니까?


올바른 값을 가지고 있기 때문에 변경할 필요가 없었습니다.
JAG

0

"sa" 의 기본 데이터베이스 인 데이터베이스를 제거 했습니까 ?

그게 문제라면

EXEC sp_defaultdb 'sa', 'New default database'

이론적으로 데이터베이스는 하나만 있으며 존재합니다. 나는 그 명령을 실행하지 않았다.
JAG

일반적으로 '마스터'입니다. 하지만 그건 문제가 아니라고 생각합니다 ...
splattne

방금 시도했지만 아무런 차이가 없었습니다. 어쨌든 고마워
JAG

0

SQL Express 2014를 설치하는 경우 [sa] 계정으로 로그인을 시도하면이 오류를 해결하기 위해 몇 가지 작업을 수행해야합니다.

  1. "sa"계정이 비활성화됩니다. 따라서 계정의 상태 섹션에서 계정을 비활성화에서 활성화로 전환해야합니다.

  2. 서버에는 Windows 및 SQL Server 인증이 사용 가능해야합니다. 기본적으로 Windows 인증 만 사용됩니다.

  3. 비밀번호를 재설정하십시오. (아래 코드 참조; ServerFault에 2016 년 6 월 8 일 기준으로 정렬 된 목록을 사용할 때 코드가 동일하게 표시되지 않는 버그가 있음)

  4. SQL Server 용 Windows 서비스를 다시 시작하십시오.

=========

ALTER LOGIN sa WITH PASSWORD='password', CHECK_POLICY=OFF;
ALTER LOGIN [sa] ENABLE;

0

잘못된 비밀번호가 많거나 정책 위반으로 인해 로그인이 비활성화되는 경우가 있습니다. 우리가 할 수있는 일은 창 인증으로 로그인하고, 비밀번호를 변경 한 후 다시 로그인을 활성화하는 것입니다.

Windows 인증으로 데이터베이스에 로그인

쿼리 실행 :

ALTER LOGIN [sa] WITH PASSWORD='newpassword', CHECK_POLICY=OFF 
GO
ALTER LOGIN [sa] ENABLE
GO

CHECK_POLICY를 사용하려면이 로그인에서 SQL Server가 실행중인 컴퓨터의 Windows 암호 정책을 시행하도록 지정해야합니다. OFF로 설정하면 기본값은 ON이며 어려움없이 비밀번호를 변경합니다. 나중에 당신은 할 수 있습니다

참고 : CHECK_POLICY가 GUI에있을 때 암호 변경을위한 SSME 솔루션이 매번 작동하지 않는다는 것을 알았습니다. 나는 이유가 없지만 내가 관찰 한 것입니다.


0

서버의 Windows 인증 goto 속성 >> 로그온 및 서버 인증으로 로그온하여 다음과 같이 해결했습니다.


1
답을 형식화하고 완성하는 데 더 많은 비용을들이시겠습니까? 이 글을 쓸 때 도움이되지 않습니다.
asdmin
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.