SQL Server 818

SQL Server Failover Cluster 구성

SQL Server Failover Cluster 구성 l Version : SQL Server 2019 SQL Server의 고가용성 중 하나인 SQL Server Failover Cluster (장애조치 클러스터) 인스턴스를 구성하는 방법에 대해서 알아본다. SQL Server 장애조치 클러스터를 구성하기 위해서는 Windows Failover Cluster이 먼저 구성되어 있어야 한다. 그리고 디스크 또한 공유 디스크를 사용이 필수이다. 이번 포스트에서는 Windows Failover Cluster 구성이 완료 되어 있다는 가정하에 SQL Server Failover Cluster만 구성하는 방법에 대해서 설명한다. 이번 포스트에서 구성하려는 장애조치 클러스터의 구성은 아래 그림과 같다. DB01 ..

SQL Server DELAYED_DURABILITY 옵션으로 트랜잭션 로그 쓰기 성능 개선 하기

SQL Server DELAYED_DURABILITY 옵션으로 트랜잭션 로그 쓰기 성능 개선 하기 l Version : SQL Server SQL Server 데이터베이스에는 모든 트랜잭션과 각 트랜잭션에 의해 적용된 데이터베이스 수정 내용을 기록하는 트랜잭션 로그가 있다. 트랜잭션 로그는 데이터베이스의 매우 중요한 요소로 시스템 오류가 발생한 경우 데이터베이스를 일관된 상태로 다시 전환하려면 이 로그가 필요하다. l 트랜잭션 로그 아키텍처 : https://learn.microsoft.com/en-us/sql/relational-databases/sql-server-transaction-log-architecture-and-management-guide?view=sql-server-ver16 데이터베이..

SQL Server 에서 AWS S3에 직접 백업하기

SQL Server 에서 AWS S3에 직접 백업하기 l Version : SQL Server 2022 SQL Server 2022부터는 데이터 플랫폼에 통합 오브젝트 스토리지를 도입하여 Azure Storage외에도 AWS S3 호환 오브젝트 스토리지도 사용할 수 있다. 즉, SQL Server에서 AWS S3로 직접 백업을 할 수 있게 되었다. 기존 SQL Server 2019의 경우 Microsoft Azure 저장소만 가능 하였다. SQL Server 2022 부터 도입된 S3 REST API는 SQL Server에서 AWS S3 직접 백업, 복원을 할 수 있어, 백업 후 이동에 따른 프로세스 단축 및 대용량 백업을 진행할 경우에도 로컬 공간이 부족하여도 백업을 진행할 수 있게 되었다. 지원되는 ..

SSRS 리포트에서 이미지 추가하기

SSRS 리포트에서 이미지 추가하기 · Version : SSRS SSRS에서 이미지를 출력하는 방법에는 3가지가 있다. · Embedded : SSRS 서버에 있는 이미지로 리포트에 표시 · Database : 데이터베이스에 저장된 이미지를 표시 · External : 외부 URL 이미지를 표시 이번 포스트에서는 외부 URL 의 이미지를 출력하는 방법에 대해서 살펴본다. 외부 URL의 이미지를 표시하기 위해서는 이미지 주소를 포함하고 있는 데이터셋이 필요하다. 필자의 경우 검색 사이트에서 검색한 로고 이미지의 주소를 사용하여 실습용 데이터셋을 만들었다. select 'Microsoft' as Name, 'https://cdn.arstechnica.net/wp-content/uploads/2012/08/..

SSRS 보고서 실행 로그 및 감사(Audit)

SSRS 보고서 실행 로그 및 감사(Audit) · Version : SSRS SSRS에서 보고서가 얼마나 자주 실행되는지, 누가 또는 어떤 프로세스가 보고서를 실행하는지, 실행하는데 걸리는 시간, 보고서 매개변수에 대한 통계, 사용되지 않는 보고서등에 대한 정보가 필요할 때 SSRS의 Execution Logging 기능을 사용하여 해당 정보를 얻을 수 있다. 로깅 작동 방식은, Reporting Services 서버에서 로깅 기능을 활성화 하여 사용할 수 있다. 로깅이 활성화 되면 ReportServer 데이터베이스의 dbo.ExectionLogStorage 테이블에 행위가 기록 된다. 감사 데이터에 액세스하려면 ReportServer 데이터베이스의 ExecutionLog, ExecutionLog2,..

VM 환경의 SQL Server에서 할당된 CPU를 모두 사용하지 못하는 현상

VM 환경의 SQL Server에서 할당된 CPU를 모두 사용하지 못하는 현상 · Version : SQL Server Virtual Machine (VM)의 성능이 향상됨에 따라 많은 시스템들이 Physical 서버에서 VM 머신으로 마이그레이션을 진행하고 있다. 이번 포스트는 Physical머신에서 VM으로 마이그레이션 후 SQL Server에서 할당된 CPU를 모두 사용하지 못하는 성능 문제에 대해서 다룬다. Host Server OS Windows Server 2019 Standard CPU 2 socket (64 Core) RAM 128GB VM Server OS Windows Server 2019 Standard SQL Server SQL Server 2016 Standard CPU 8 Cor..

SQL Server 복원 성능 최적화

SQL Server 복원 성능 최적화 · Version : SQL Server SQL Server에서 백업 파일을 복원할때 빠르게 복원하기 위한 최적화 방법을 소개한다. 이 방법을 사용한다고 해서 무조건 빠르게 복원되지는 않으며, 사용할 수 있는 시스템 리소스에 따라 최적화된 옵션을 제공함으로써 좀 더 빠르게 복원할 수 있게 유도 하는 것이다. 데이터베이스 백업 및 복원에 대한 통계를 확인하기 위해 추적 플래그 3213, 3605를 설정한다. DBCC TRACEON (3213, -1) DBCC TRACEON (3605, -1) 데이터베이스를 복원하면, SQL 이벤트 로그에서 아래와 같은 내용을 확인할 수 있다. 기본 설정을 사용하면 최대 전송크기는 1024K 이고 버퍼수는 6인것을 확인할 수 있다. 이때..

SQL Server 트랜잭션 로그 복원시 복원 시간이 오래 걸리는 현상

SQL Server 트랜잭션 로그 복원시 복원 시간이 오래 걸리는 현상 · Version : SQL Server 2016 Enterprise Edition SQL Server에서 트랜잭션 로그를 사용하여 데이터를 복원시, 평소와 다르게 매우 오래 걸리는 현상이 발생하였다. 처음에는 I/O 서브 시스템을 의심하고 물리장비 까지 교체하였으나, 증상을 동일하였다. 여러가지 가설을 세웠고, 원인 분석 결과, Slow query가 트랜잭션 로그의 복원시간과 관련이 있다는 것을 발견할 수 있었다. 필자의 운영 환경은 10분 마다 트랜잭션 로그 백업을 진행하고, 백업된 로그는 다른 서버에서 Read Only(STAND BY)로 복원하여 각 부서에서 사용할 수 있도록 로그 쉬핑을 구성하였다. 10분 마다 발생하는 로그..

SSRS 인디케이터 (데이터 값에 따라 표시기로 시각화 하기)

SSRS 인디케이터 (데이터 값에 따라 표시기로 시각화 하기) · Version : SSRS SSRS 인디케이터(Indicators)는 보고서에서 표시되는 단일 데이터 값의 상태를 시각화 할 수 있는 작은 표시기 이다. 인디케이터의 종류는 다양하며, 추세, 상태, 조건, 등급 등의 상태를 시각적으로 표현할 수 있다. 인디케이터를 사용하는 방법은 [Toolbox] – [Indicator] 항목을 리포트 페이지로 드래그앤 드롭으로 끌어다 놓으면 된다. 조건에 따라 인디케이터의 상태를 변화 값을 설정하기 위해서 인디케이터에서 마우스 오른쪽 버튼을 클릭하여 [Indicator Properties]를 선택한다. Indicator properties 창에서 [Value and States] 탭을 클릭하여 인디케이터..

SSRS에서 표의 값에 따라 폰트 컬러 변경하기

SSRS에서 표의 값에 따라 폰트 컬러 변경하기 · Version : SSRS SSRS에서 표의 폰트 색상을 정해진 룰에 따라 자동으로 색상을 변경하는 방법에 대해서 알아본다. 폰트의 컬러 속성을 지정하기 위해서, 값을 표시하려는 표의 컬럼에서 마우스 오른쪽 버튼을 클릭하여 [Text Box Property] 항목을 선택 한다. [Text Box Properties] 설정 창이 나타나면 [Font] 탭으로 이동하여 Color 항목의 펑션 버튼(fx)을 클릭한다. 펑션 창에서 아래와 같이 조건을 입력하면 해당 룰에 따라 폰트 컬러가 변경된다. =SWITCH(Fields!Pay.Value = 20, "Green") 폰트 컬러외에도 굵기, 이탤릭체 등 설정할 수 있으며, 표의 텍스트 배경색 변경도 가능하다. ..