반응형

서버 개발/데이터베이스 기타 & 팁 7

Windbg 유용한 명령어

.reload symbol과 source 읽어 온다. .ecxr : (exception context record) 예외가 발생한 컨텍스트 레코드를 보여주고 디버거가 해당 내용을 참조하게 하는 명령 k, kb, kn / ~*k, ~*kb 콜 스택 / 모든 쓰레드 콜 스택 ~2 제어는 2번 쓰레드로 변경 ~ 쓰레드 목록 확인 ~. 현재 쓰레드만 확인 ~[숫자]s ~2s 이면 2번 쓰레드로 변경한다 입니다. ?? 표현식 평가 ??GMemoryManager : 전역 변수를 평가 명령어 설명 .sympath 현재 symbol path 로 설정된 경로를 보거나 설정합니다. .sympath+ symbol path 를 기존 설정 뒤에 새로 추가합니다. !sym noisy 설정된 symbol path 에서 symbol..

[MSSQL] 캐시 확인및 삭제

SQL 테스트시 다음의 명령을 실행 후 테스트합니다. -- 현재 데이터베이스의 모든 더티 페이지를 디스크에 쓰고 버퍼를 정리 CHECKPOINT GO -- 버퍼 풀 초기화 DBCC DROPCLEANBUFFERS GO -- 프로시저 캐시 초기화 DBCC FREEPROCCACHE GO 캐시 부분 확인및 삭제 방법 사용중인 캐시 추출 SELECT * FROM SYS.SYSCACHEOBJECTS WHERE [SQL] LIKE '%테이블이름%' SELECT plan_handle, st.text FROM sys.dm_exec_cached_plans CROSS APPLY sys.dm_exec_sql_text(plan_handle) AS st WHERE text LIKE N'%테이블이름%'; 원하는 캐시 삭제 DBCC..

[MSSQL] 실행 계획의 subtree cost는 무엇인가?

쿼리의 실행 계획을 살펴 보면 아래와 같이 subtree cost항목이 항상 있습니다. 이것이 의미 하는 것은 현재 노드 하위의 모든 tree들의 총 cost가 얼마나 되는지를 표시 합니다. 특정한 사람의 데스크 탑 PC에서 수행해서 쿼리가 몇 초가 걸리는지를 측정한 값입니다. 이 값의 유래는 다음과 같습니다. the story goes that when the new query optimizer was developed for SQL server 7.0 in the Query Optimizer team there was a programmer called nick (I am sorry but I do not know his last name) ,he was responsible for calculati..

[MSSQL] copy_t 더미 테이블 만들기

copy_t는 테이블을 복제하여 원하는 데이터로 가공 할때 가장 많이 사용하는 더미 테이블입니다. create table copy_t ( seq int, seq_var varchar(2) ) with temp as ( select 1 as seq union all select seq + 1 from temp where seq < 99 ) insert into copy_t ( seq, seq_var ) select seq, replicate('0',2-len(cast(seq as varchar))) + cast(seq as varchar) from temp option(maxrecursion 0) 다음과 같이 더미 데이터가진 테이블을 생성합니다.

[MSSQL] 실행 계획 아이콘

연산자 자세한 설명은 다음 링크 참고하세요. https://docs.microsoft.com/ko-kr/sql/relational-databases/showplan-logical-and-physical-operators-reference?redirectedfrom=MSDN&view=sql-server-ver15 실행 계획 논리 및 물리 연산자 참조 - SQL Server 실행 계획 논리 및 물리 연산자 참조Showplan Logical and Physical Operators Reference 이 문서의 내용 --> 적용 대상: SQL Server Azure SQL Database Azure Synapse Analytics(SQL DW) 병렬 데이터 웨어하우스 APPLIES TO: SQL Server A..

[MSSQL] 실행 계획 보는 방법

SQL이 의도한 대로 동작하고 있는지 꼭 확인을 해야 겠습니다. 그러기 위해서는 실행 계획을 읽는 방법도 확실하게 알아야 겠습니다. 아래 아이콘을 눌러 놓고 SQL을 실행하면 실행 계획도 함께 볼 수 있습니다. 다음과 같이 볼 수 있습니다. 그래프가 아니라 텍스트 모드로도 볼 수 있습니다. - 텍스트 실행 계획 보기 ON/OFF SET SHOWPLAN_ALL ON GO SET SHOWPLAN_ALL OFF GO - 텍스트 실행 계획 보기를 ON 시키면 다음과 같이 실행 계획을 텍스트로 볼 수 있습니다. |--Parallelism(Gather Streams) |--Hash Match(Right Outer Join, HASH:([B].[userno])=([A].[userno]), RESIDUAL:([jino..

[MSSQL] 테스트 데이터 생성

유저 테이블에 10만건 더미 데이터 생성하기 declare @i int set @i = 0 while (@i < 100000) begin set @i = @i + 1 insert into dbo.[user](name, guildno, reg_date) values (concat('user', @i), @i/100, dateadd(dd, -@i/100, getdate())) end 인벤토리 테이블에 1000만건 더미 데이터 생성하기 declare @i int set @i = 0 while (@i < 10000000) begin set @i = @i + 1 insert into dbo.[inventory] (userno, itemid, reg_date) values (@i/200+1, @i, dateadd(..

반응형