티스토리 뷰
간혹 MS SQL Server를 운영하다보면 이제껏 실행된 쿼리 이력을 알고 싶을때가 있더라
사실 무슨 쿼리를 썻지? 보단 뭔 쿼리를 써서 DB가 망가졌지를 찾는데 쓰이긴 하지만...
SELECT
db_name(st.dbid) DBName
, object_schema_name(objectid, st.dbid) SchemaName
, object_name(objectid, st.dbid) SPName
, qs.total_elapsed_time
, creation_time
, last_execution_time
, text
FROM
sys.dm_exec_query_stats qs
CROSS APPLY
sys.dm_exec_sql_text(qs.plan_handle)st
JOIN
sys.dm_exec_cached_plans cp
ON
qs.plan_handle = cp.plan_handle
위와 같이 쿼리를 실행하면, 이제껏 실행했던 쿼리를 DB 테이블 형태로 조회할 수 있다.
ex)
DBName |
SchemaName |
SPName |
total_elapsed_time |
creation_time |
last_execution_time |
text |
TestDB |
dbo |
spGetUserName |
122888 |
2017-01-12. |
2017-01-12 |
CRTEATE PROCEDURE.... |
master |
null |
null |
3000 |
2017-01-12 |
2017-01-12 |
SELECT * FROM... |
단, 휘발성 데이터로 이제껏 실행됫던 모든 쿼리를 조회해주진 못하며
Microsoft SQL Server Management Studio 에서 직.접. 실행했던 쿼리들만 보여준다.
- 어플리케이션에서 실행됫던 쿼리는 조회 안됨
- 해당 SQL Studio 에서 실행했던 쿼리가 아닌 쿼리는 조회 안됨
- 오래되어 히스토리에서 지워진 쿼리 또한 조회 안됨 (정확한 시점은 모르겟다...)
어느 정도 참고 이력으로만 사용하고 어플리케이션딴에서 실행되는 쿼리를 찾기위함이라면
[SQL Server 프로파일러] 를 통해 확인하는게 더 좋다.
참고 사이트:
'개발' 카테고리의 다른 글
[PHP] Windows용 PHP 설치 시 Non-Thread Safe 와 Thread Safe 의 차이가 뭐지? (1) | 2017.02.13 |
---|---|
Linux 가상머신 저장소 용량 늘리기 (0) | 2016.12.29 |
javascript 멀티 라인 쓰는법 (0) | 2016.12.15 |
윈도우 시작프로그램 등록방법 (0) | 2016.12.06 |
[CentOS 7] 방화벽 동작 명령어 정리 (0) | 2016.11.30 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 시작프로그램 등록
- resize2fs
- ES6
- pvscan
- 쿼리 이력 조회
- mke2fs
- 가상머신 저장소 용량 늘리기
- 내리기
- javascript 멀티 라인
- mkfs
- 용량 늘리기
- 설정
- File
- CentOS7
- Template literals
- pvresize
- firewall-cmd
- 쿼리 히스토리
- firewalld
- fstab
- NTS
- 리눅스 가상
- VirtualBox
- 끄기
- lvextend
- 레지스트리 등록
- Thread safe
- 복사 붙여넣기
- Non Thread Safe
- 윈도우 시작
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
글 보관함