2010. 6. 3. 23:58

에러::Agent

Agent 에러 상황별 처리 내역

 Agent가 시작되지 않음

  • 증상

    • SQLServer는 Start 된 상태
    • Agent 시작시 Event LOG

        •  event id : 103
        • ServerAgent could not be started (reason: Unable to connect to server '(local)'; SQLServerAgent cannot start).
        •  event id : 102
        •  SQLServerAgent service successfully stopped.
      •  시작되다가 바로 중지되는 상황을 보임
    • Agent 에러 로그

        •  메시지
          [298] SQLServer Error: 10061, TCP Provider: No connection could be made because the target machine actively refused it. [SQLSTATE 08001]
        • [165] ODBC Error: 0, Login timeout expired [SQLSTATE HYT00]
        • [298] SQLServer Error: 10061, An error has occurred while establishing a connection to the server. When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections. [SQLSTATE 08001]
        • [000] Unable to connect to server '(local)'; SQLServerAgent cannot start
        • [298] SQLServer Error: 10061, TCP Provider: No connection could be made because the target machine actively refused it. [SQLSTATE 08001]
        • [165] ODBC Error: 0, Login timeout expired [SQLSTATE HYT00]
        • [298] SQLServer Error: 10061, An error has occurred while establishing a connection to the server. When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections. [SQLSTATE 08001]
        • [382] Logon to server '(local)' failed (DisableAgentXPs)
        • [098] SQLServerAgent terminated (normally)
      • 타켓이 되는 서버에 접속을 못하는 것으로 보임
    • 그 밖이 증상

      • 해당 장비에서 ., (local) 로 해도 접속이 안됨, 즉 자기 장비의 Named 를 찾지를 못함
      • agent  실행하는 주체가 Local system 의 Administrators 였음.
      •  hosts 파일에 자기 장비의 IP를 적고 이름을 적어 놓았음  ex) IP  GDB2
      • 클라이언트에 GDB2 별칭이 등록되어 있으며, 포트 설정이 잘 못 되어 있었음
  • 조치사항

    • agent가 실행되는 사용자에게 sysdamin 민 권한을 줌 -> 이미 주었지만 ip 인식 자체가 안되는 거기 때문에 소용 없음.
    • 자기 자신에게 링크드 별칭 있는것 우선은 제거 -> 예전에 별칭이 있으면 별칭을 먼저 인식하고 agent가 생성 안되는 경우 있었음 -> 완료
    • 인스턴스 재시작 - Stop -> Start 시작

      • 서버 재 시작후 exec sp_readerrorlog 0 로 아래 메세지가 있는지 확인

        • Server local connection provider is ready to accept connection on [ \\.\pipe\SQLLocal\MSSQLSERVER ].

          Server local connection provider is ready to accept connection on [ \\.\pipe\sql\query ]

        • Server is listening on ['any' <ipv4> <Port Number>] or [ <ipaddress> <ipv4> <Port Number>].

        • 포트로 잘 올라왔는지 확인  명령창에서 : "netstat -an or -na| findstr <PortNumber>".

        없으면  문제 있는 것임.  서버를 다시 깔아야 할지도 모름.

        SQLAgent 올려본다. 위의 에러가 또 발생하면 다음 으로 한번 해보기

    • 메뉴>Miscrosfot SQL Server2005>congiguration Tools> SQL Server Surface Are Congiguration 실행

      •  Surface Area Congiguration for Services and Connections 실행
      •  Database Engine 의 remote Connections 에서 Using both TCP/IP and named pipes 체크하고 OK, 인스턴스 재 시작 해보기
    •  hosts 파일에 GDB2 있는것 제거 ,

      • SQL Server Conguration Manager >SQL Server2005 Network Congiguration>Protocols for MSSQLSERVER >
      • Named Pipes : Enagled 해보고  인스턴스 재시작 -> SQLAgent 시작해본다.
    • SQLAgent 시작 권한은 Local System의 administraotr로 바꾸고 SQLAgent 시작해 본다. (지금은 도메인으로 되어 있음) : 권한은 이미 처리해 놨음
    • 결국, 해당 장비에서 자기 로컬로 DB가 접근되어야 하는데 안되면 안되는 것임.

이 글은 스프링노트에서 작성되었습니다.

'Error Case' 카테고리의 다른 글

Server Broker Error Case  (0) 2011.03.11
에러::SSIS 연결끊기는 현상  (1) 2010.06.03
에러::64bit 버퍼 풀 페이징  (0) 2010.06.03
에러::msdb 복원시 버전차이  (1) 2010.06.03