none
SQL 2008 studio에서 SQL 2008R2 Server로 접속 시 다음과 같은 에러가 발생합니다. RRS feed

  • 질문

  • 안녕하세요.

    SQL 2008 studio에서 SQL 2008R2 Server 접속  축소되어 있는 데이타베이스 목록을 확장하면 다음과 같은 에러가 발생합니다.(이미지 첨부가 안되네요)

    ====================================================

    이 요청에 대한 데이터를 검색하지 못했습니다.(Microsoft.SqlServer.Management.Sdk.Sfc

    추가정보:

    ->Transact-SQL문 또는 일괄 처리를 실행하는 동안 예외가 발생했습니다.

        (Microsoft.Sqlserver.ConnectionInfo)

        ->현재 보안 컨텍스트로는 서버 보안 주체"u109002"이(가) 데이터베이스 "db082221"에 엑세스할 수 없습니다.

           (Microsoft SQL Server, 오류:916)

    ====================================================

    현재 SQL 2008R2서버에 많은 DB들이 존재하고 있으며, DB 접근 권한이 있는 user 계정이 하나 존재하고 있습니다.

    메시지에서 보이 u109002라는 계정이 접근할 있는 DB DB109002라는 DB 이나, 전혀 권한이 없는 다른 DB 엑세스 없다는 메시지가 나오며, 데이타베이스 목록 확장이 되지 않습니다.

    물론 SQL2008R2 studio 사용하여 접근하면 정상적으로 접근이 되나, SQL2008 Studio 사용할 때만 발생하는 문제입니다.

    해당 문제가 단순히 접근하는 studio 버전 차이로 발생한 문제인지, 아니면 설정 부분의 문제로 발생하는 것인지 알고 싶습니다.

    참고로 해당 인스턴스는 기본 인스턴스 이며, 수백개의 데이타베이스가 있으며, 권한 부분의 설정은 다음과 동일 합니다.

    DB109002 소유자는 sa이며, u109002 로그인 계정과 해당 DB 사용자 계정이 매핑되어 있습니다. u109002 권한은 dbo public 소유하고 있습니다. 해당 문의사항 확인 부탁드리며, 답변 연락 가능하시면 연락 부탁 드립니다.

    연락처 : 010-7556-3724

    감사합니다.

    2013년 12월 16일 월요일 오전 9:25

답변

  • 같은 버전이나 상위버전의 SSMS 를 사용하시면 고민하지 않아도 될 사항으로 보이는데

    하위 버전의 SSMS에서 상위 버전의 데이터베이스를 연결해야 할 특별한 이유가 있으신지요?


    Hong-ju

    2013년 12월 18일 수요일 오전 11:13

모든 응답

  • 위 에러는 권한 이슈입니다.

    이 오류를 방지하려면 오류 메시지에 명명된 데이터베이스에 대한 CONNECT 권한을 부여합니다. 다음과 같은 방법 중 하나로 CONNECT 권한을 부여할 수 있습니다.

    • 명명된 데이터베이스에 대한 특정 로그인 액세스 권한을 부여합니다. 다음 예에서는 msdb 데이터베이스에 대한 로그인 AdventureWorks\Larry 액세스 권한을 부여합니다.

      USE msdb ;

      GO

      GRANT CONNECT TO [AdventureWorks\Larry] ;

    • 게스트 사용자에게 오류 메시지에 명명된 데이터베이스에 대한 CONNECT 권한을 부여합니다. 다음 예에서는 사용자 guest에게 msdb 데이터베이스에 대한 CONNECT 권한을 부여합니다.

      USE msdb ;

      GO

      GRANT CONNECT TO guest ;

    위와같이 정상적으로 진행하였음에도 위 문제가 발생하는 것인가요?

    SQL 매니지먼트에서 양쪽에 접근할 계정에 대해 DB두곳 다 접근 권한을 부여해야합니다.

    [참고자료]

    MSSQLSERVER_916

    제시해 드린 답변이 도움이 되었기를 바랍니다.
     
    답변이 문제 해결에 도움이 되었다면 답변으로 채택을 부탁드립니다.
    하지만 문제 해결이 되지 않아서 정확한 답변을 원하는 경우에는 문제의 정보를 더 자세하게 답변으로 제공해주시기 바랍니다


    2013년 12월 17일 화요일 오전 3:44
    중재자
  • 같은 버전이나 상위버전의 SSMS 를 사용하시면 고민하지 않아도 될 사항으로 보이는데

    하위 버전의 SSMS에서 상위 버전의 데이터베이스를 연결해야 할 특별한 이유가 있으신지요?


    Hong-ju

    2013년 12월 18일 수요일 오전 11:13