none
버전 저장소가 tempdb에서 많은 공간을 사용 중인 경우 가장 오랫동안 실행되는 트랜잭션을 확인 방법은? RRS feed

  • 질문

  • 버전 저장소가 tempdb에서 많은 공간을 사용 중인 경우 가장 오랫동안 실행되는 트랜잭션을 확인 방법은?

    2015년 4월 30일 목요일 오후 2:34

답변

  • 안녕하세요.

    문의하신 버전 저장소가 tempdb에서 많은 공간을 사용 중인 경우 가장 오랫동안 실행되는 트랜잭션을 확인하는 쿼리는 아래와 같습니다.

    SELECT transaction_id
    FROM sys.dm_tran_active_snapshot_database_transactions 
    ORDER BY elapsed_time_seconds DESC;

    위 BOL의 쿼리를 참고해서 session_id를 찾는 쿼리를 작성해보면 아래와 같습니다.

    SELECT st.session_id, st.transaction_id
    FROM sys.dm_tran_active_snapshot_database_transactions sdt 
    join sys.dm_tran_session_transactions st on sdt.transaction_id = st.transaction_id
    ORDER BY elapsed_time_seconds DESC;

    다음 문서가 도움이 되실 듯 싶습니다.

    tempdb의 디스크 공간 부족 문제 해결

    감사합니다.

    Younggun Kim

    MCDBA, MCITP
    Consultant @ Database Division in SQLRoad
    http://www.sqlroad.com  http://www.sqlserver.co.kr
    ygkim@sqlroad.com




    • 편집됨 Younggun KimMVP 2015년 5월 1일 금요일 오후 12:53
    • 답변으로 표시됨 Ian Kim 2015년 5월 6일 수요일 오전 2:22
    2015년 5월 1일 금요일 오후 12:31