분류 전체보기 132

SQL Server x64에서의 paged out현상에 대해서

요즘 출시되는 인텔의 제온, AMD의 옵테론 프로세스는 64bit(x64)를 기본적으로 지원되고 있고 있으며, SQL Server도 2005부터는 x64 를 지원하고 있습니다.(IA64는 SQL Server 2000도 지원함) 기존 x86의 AWE메모리의 한계와 IA64 도입에 대한 높은 도입 비용으로 인해 x64 환경이 점차 늘어나고 있는 상황입니다. 32bit에서 4GB이상의 메모리를 사용하기 위해서는 AWE 옵션을 Enable해서 64GB까지 사용할 수 있지만, AWE로 확장된 메모리 영역은 데이터&인덱스 페이지로만 구성되기에 다른 영역의 메모리는 기존처럼 2GB(/3GB 추가시 3GB) 공간만을 사용할 수 밖에 없습니다. AWE에서 확장된 메모리를 map, unmap을 하기 위한 Window도 이..

MS-SQL Server 2008.10.07

mstsc 옵션 변경

mstsc 명령으로 터미널을 붙어서 자주 사용하는데 언제 부터인가 console 옵션이 먹지 않는 문제가 있었습니다. 찾아봤더니 mstsc 6.01부터는 console 옵션이 admin 옵션으로 변경 되었다고 합니다. 아아아악~~ ㅠ_ㅠ 그래서 mstsc /console 이 안될때는 mstsc /admin 으로 사용하시면 동일하게 원격연결을 할 수 있습니다. 요즘 너무 휑~ 한거 같아서 간단한 팁으로 올립니다. 다들 수고하세요~ ^^ 하만철 / Ha Man cheol 넥슨 DB 팀 ( http://nexondbteam.tistory.com )

기타 기술자료 2008.08.04

SERIALIZABLE과 REPEATABLE READ시 Lock 테스트

간단하게 SERIALIZABLE과 REPEATABLE READ시 Lock이 어떻게 걸리는지를 테스트 해 보았습니다. -- 데이터를준비한다. -- drop table tA create table tA (col1 int) insert into tA select 1 insert into tA select 5 insert into tA select 10 -- repeatable read TEST set transaction isolation level repeatable read begin tran select col1 from tA where col1 between 2 and 4 -- 여기까지수행후 다른 spid로 접속해 sp_lock 수행 select col1 from tA where col1 between..

MS-SQL Server 2008.06.20

SERVICE MASTER KEY (SMK)

서버 이전작업시 master DB를 그대로 이전한다고 했을때 MS-SQL 2000에서는 대상서버로 master DB를 이전하려면 master DB의 백업본을 가지고 단일 사용자 모드에서 복원하던지 대상서버의 MSSQL 서비스를 중지시킨 다음 원본 서버의 mdf 파일을 복사해 서비스를 시작시키면 기존의 master DB를 사용할 수 있었다. 하지만 이때 master DB에 저장되어 있는 연결된 서버 정보를 그대로 사용할 수 있으므로 이런 정보를 이용하여 다른 서버에 특정 권한으로 접근할 수 있게 된다. 이러한 문제 때문인지 MS-SQL 2005에서 보안이 강화되어 master DB를 사용하기 위한 추가적인 작업이 필요해졌다. MS-SQL 2005에서는 "서비스 마스터 키" 라는 개념이 도입되었다. BOL을..

MS-SQL Server 2008.06.10

넌클러스터드 인덱스의 SEEK 테스트

CI(Clustered Index)와 NCI(Non-Clustered Index) 인덱스 상황에 따라 NCI Seek를 어떤식으로 하는지 테스트 해 보았습니다. @@ 테스트 환경 OS : Windws XP Professional SQL : Microsoft SQL Server 2005 - 9.00.3054.00 (Intel X86) Mar 23 2007 16:28:52 Copyright (c) 1988-2005 Microsoft Corporation Developer Edition on Windows NT 5.1 (Build 2600: Service Pack 3) --drop table idxTest create table idxTest ( c1 int , c2 int , c3 int , c4 int )..

MS-SQL Server 2008.04.29

DBCC DROPCLEANBUFFERS 를 수행하면 Buffer Pool에 존재하는 데이터 페이지가 사라질까?

DBCC DROPCLEANBUFFERS는 Buffer Pool에 존재하는 데이터 페이지를 제거하는 구문입니다.하지만 DBCC DROPCLEANBUFFERS을 수행하면 정말 Buffer Pool에 있는 데이터 페이지가 사라질까요? 간단히 결론만을 말하면 아직 disk로 플러시 되지 않는 페이지는 이 구문으로 내려갈 수 없습니다. 모든 Buffer Pool에 있는 페이지를 내리려면 checkpoint를 통해서 Dirty페이지를 마크 후에 DBCC DROPCLEANBUFFERS를 수행 하면됩니다. 아래는 테스트 예제입니다. USE TESTGO--DROP TABLE tbl1 --샘플 테이블 만들기SELECT        TOP 1000       ROW_NUMBER() over(..

MS-SQL Server 2008.04.23

CHECKPOINT 프로세스 part 0

CHECKPOINT는 Buffer Pool의 커밋되지 않은 페이지를 디스크로 플러시를 하는 프로세스 입니다. CHECKPOINT는 DB단위로 발생하며, 발생 주기는 recovery interval 옵션의 값을 기반으로 움직이게 됩니다. CHECKPOINT 발생시 커밋되지 않은 페이지를 디스크로 페이지를 플러시 하며, CHECKPOINT가 발생한 시점에 트랜잭션 로그파일도 마킹을 하여 비정상적인 종료시 마지막 CHECKPOINT 이후의 트랜잭션 로그를 바탕으로 데이터를 롤백 또는 롤포워드 하게됩니다. CHECKPOINT가 발생시 IO에 병목이 발생 할 수 있으며 이러한 문제의 해결에 도움을 줄 수 있는 몇가지 기능이 SQL Server 2005에 추가되었습니다. 1. CHECKPOINT Duration è..

MS-SQL Server 2008.04.10