연구개발/SQL2005 (201) 썸네일형 리스트형 [SQL 2005 GUIDE] 추적 - 권고사항 추적 데이터를 수집할 때의 권고 사항입니다. ? 불필요한 이벤트의 추가는 삼가합니다. 너무 많은 이벤트의 추가는 서버의 성능에 좋지 않은 영향을 줄 수 있습니다. ? 일반적인 경우라면, 모든 이벤트 열을 포함시킵니다. 어떤 이벤트들은 보조적인 항목을 반환하는 어떤 항목들에 의존합니다. 적어도 다음 이벤트 열은 포함하는 것이 좋습니다. - BinaryData - ClientProcessID - CPU - Duration - EndTime - EventClass - EventSubClass - HostName - IntegerData - LoginName - NTUserName - Reads - SPID - StartTime - TextData - Writes ? 테이블에 추적을 직접 저장하는 것은 성능상 .. [SQL 2005 GUIDE] 추적 - 이벤트와 열 추적을 수집하는 목적에 따라 적절한 추적 이벤트와 이벤트 열의 설정이 필요합니다. ? 오래 실행되는 SQL 문 찾기 오래 실행되는 쿼리는 잘못 튜닝된 시스템, 잘못 작성된 응용 프로그램, 또는 단순히 많은 동작을 수행하는 작업등을 의미할 수 있습니다. 어떠한 경우건, 이러한 오래 실행되는 SQL 문을 찾아서 튜닝하는 것은 그 작업의 성능은 물론 전반적인 시스템 성능까지도 향상시킬 수 있습니다. 권장되는 추적 이벤트 : TSQL, SQL:BatchCompleted 정렬 기준 이벤트 열 : Duration ? 과도한 자원 사용자 찾기 과도한 자원을 사용하는 응용 프로그램이나 사용자를 찾는 추적은 DBA에게 유용한 도구가 될 수 있습니다. 이러한 추적 유형은 CPU와 I/O 자원 모두를 많이 사용하는 SQL .. [SQL 2005 GUIDE] SQL Server 프로파일러 실행하기 성능 문제의 디버깅은 문제의 원인을 알아내는 것으로 시작합니다. 많은 경우, 성능 문제는 비효율적인 SQL 문에서 기인합니다. 비효율적인 SQL 문이 문제의 원인이라고 의심될 때, SQL Server 프로파일러를 사용하면 문제의 원인이 되는 SQL 문을 쉽게 찾을 수 있기 때문에, 성능 튜닝에 유용합니다. SQL Server 프로파일러를 사용하는 단계입니다. 1. 다음 방법 중 하나를 이용하여 SQL Server 프로파일러를 실행합니다. [시작]->[프로그램]->[Microsoft SQL Server 2005]->[성능 도구]->[SQL Server Profiler] 또는 SQL Server Management Studio의 상단 메뉴에서 [도구]->[SQL Server Profiler]를 선택합니다. .. [SQL 2005 GUIDE] 성능 로그 확인하기 수집된 성능 로그는 다음과 같이 확인할 수 있습니다. 1. [시작] ->[설정] -> [제어판] -> [관리] -> [성능]을 선택합니다. 2. [로그 데이터 보기] 버튼을 클릭하면, [시스템모니터 등록 정보] 창이 나타납니다. 3. 로그 파일을 선택하고, 추가 버튼을 클릭하여, 원하는 파일을 추가합니다. 4. [시간 범위]를 클릭하여, 원하는 시간대를 조절합니다. 5. 데이터 탭을 클릭합니다. 6. [추가]를 클릭하여, 원하는 개체를 추가합니다. 7. [확인]을 클릭합니다. [SQL 2005 GUIDE] 성능 로그 수집하기 성능 모니터에서 현재의 성능 카운터를 모니터링하는 것은 모두 잘 알고 계실 것입니다. 그렇지만 DBA가 아닌 분들은 성능 로그를 수집하는 방법에 대해서는 잘 모르시는 분들이 계실 것 같아 성능 로그를 수집하는 방법을 소개하고자 합니다. 성능 로그 설정하기 1. [시작] a [설정] a [제어판] a [관리] a [성능]을 선택합니다. 2. [성능 로그 및 경고]의 더하기 기호(+)를 클릭합니다. 3. 카운터 로그를 선택합니다. 4. 오른쪽 창에 마우스를 대고 오른쪽 버튼을 클릭하여, [새 로그 설정]을 선택합니다. 5. [새 로그 설정]에 원하는 로그 이름을 입력하고, [확인]을 클릭합니다. 6. Counter_Log화면에 사용 정보와 파일 포맷을 설정합니다. 7. [개체추가]를 선택하여, 원하는 개체를.. [SQL 2005 GUIDE] 로그전달 구성하기 일정 간격으로 하나의 데이터베이스(주 데이터베이스)에서 다른 데이터베이스(보조 데이터베이스)로 트랜잭션 로그를 전달하여 두 데이터베이스를 동기화하는 로그 전달(Log Shipping)을 구성할 수 있습니다. 로그 전달을 구성하기 위해서는 다음과 같은 전제 조건이 충족되어야 합니다. ? 원본 데이터베이스의 복구 모델은 전체 혹은 대량 모델로 설정되어 있어야 합니다. ? 원본 데이터베이스의 Full Backup을 미리 받아 놓는 것이 로그 전달 구성 시 시간을 단축할 수 있습니다. ? 로그 전달을 구성하기 전에, 주 서버에 공유 폴더를 만들어 보조 서버에서 트랜잭션 로그 파일을 사용할 수 있도록 설정해야 합니다. ? 하나의 주 서버에서 여러 대의 보조 서버를 구성할 수 있습니다. 로그 전달 구성하기 1. S.. [SQL 2005 GUIDE] 슬라이딩 윈도우 구현하기 앞에서 생성된 Production.TransactionHistory 테이블은 운영 서버에 존재하는 테이블이며, Production.TransactionHistory 테이블의 데이터는 1개월이 지나면 가장 오래된 한 달치의 데이터를 Production.TransactionHistoryArchive 테이블에 복사한 다음에, 복사가 완료된 1개월 분의 데이터를 Production.TransactionHistory 테이블에서 삭제한다고 가정합니다. 이런 경우, 파티션을 이용하면 실제로 데이터를 이동시킬 필요가 없으므로 데이터를 이동시키는 시간을 줄일 수 있습니다. 다음은 위의 시나리오에 따른 스크립트 예제이고, 이것을 슬라이딩 윈도우 기법이라고 합니다. 슬라이딩 윈도우 구현하기 1. 운영에서 삭제된 데이터를 보.. [SQL 2005 GUIDE] 분할 테이블과 인덱스는 값의 범위를 기준으로 파티션으로 나눌 수 있습니다. 분할은 크기가 큰 테이블과 인덱스를 좀 더 쉽게 관리할 수 있도록 테이블 전체보다는 각 파티션 단위로 관리하는 것에 초점을 맞추고 있습니다. 그러므로, 값의 범위를 명확히 나눌 수 있는 테이블의 관리에 편리합니다. 특히, 월별로 데이터를 관리하고 월이 바뀌면 오래된 데이터를 월 단위로 삭제하는 시스템에는 슬라이딩 윈도우 기법을 적용한다면 데이터를 이동시키는 시간을 줄일 수 있습니다. 분할 테이블 및 인덱스의 데이터는 데이터베이스에서 두 개 이상의 파일 그룹으로 나눌 수 있으며, 데이터는 수평적으로 분할됩니다. 단일 인덱스나 테이블의 모든 파티션은 동일 데이터베이스에 상주해야 합니다. 분할된 테이블을 참조하는 쿼리의 작성은 분할되지 않은.. 이전 1 ··· 5 6 7 8 9 10 11 ··· 26 다음