SQL Server 123

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 직접 백업, 복원을 할 수 있어, 백업 후 이동에 따른 프로세스 단축 및 대용량 백업을 진행할 경우에도 로컬 공간이 부족하여도 백업을 진행할 수 있게 되었다. 지원되는 ..

[AWS RDS] Modify RDS instance type

[AWS RDS] Modify RDS instance type - AWS RDS 인스턴스 타입 변경 (업그레이드 또는 다운그레이드) l Version : Amazon RDS AWS RDS 환경에서는 운영중인 RDS 인스턴스의 용량 증설 및 감소(Scale-Up / Scale-Down) 작업을 Management Console을 통해서 매우 간단하게 변경할 수 있다. 아래 순서에 따라 인스턴스를 변경할 수 있다. 1. 변경할 인스턴스를 선택하고 Modify버튼을 클릭한다. 2. DB Instance size 항목에서 변경할 인스턴스 타입을 선택 한다. 이 글에서는 db.r5.large 인스턴스를 db.t3.medium으로 다운그레이드 한다. 3.맨 아래 위치한 Continue 버튼을 클릭한다. 4. 변경하..

AWS 2022.03.23

[AWS RDS] Modify RDS SQL Server Standard Edition to Enterprise Edition

[AWS RDS] Modify RDS SQL Server Standard Edition to Enterprise Edition - AWS RDS SQL Server 스탠다드 에디션에서 엔터프라이즈 에디션으로 변경 l Version : Amazon RDS for SQL Server Microsoft SQL Server는 다양한 버전으로 제공되며 각 버전은 고유한 기능, 성능 및 가격 옵션을 제공한다. 설치하는 버전도 특정 요구사항에 따라 다르다. 일부 고객은 더 높은 메모리와 고가용성 기능을 활용하기 위해 SQL Server용 Amazon RDS Standard Edition에서 Amazon RDS Enterprise Edition으로 변경을 원할 수 있다. 이번 글은 RDS SQL Server 스탠다드 ..

AWS 2022.03.22

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분 마다 발생하는 로그..