본문 바로가기
반응형

IT/MSSQL172

[MSSQL] CU, GDR 보안패치 가능 경로 테스트 MSSQL CU와 GDR 패치 관련해서 검증이 필요하여 업데이트 테스트를 진행해본 결과를 공유한다.1. 기본 개념GDR 라인: 보안 패치만 포함 (안정성 우선)CU 라인: 기능 개선 + 버그 수정 + 보안 패치 포함 (변화 폭 큼)CU용 보안 업데이트: 보안만 추가하는 패치, GDR 라인·CU 라인 모두 적용 가능 (단, 해당 CU 기반 빌드로 업데이트됨)2. 패치 가능·불가능 경로현재 상태 설치 시도 가능 여부 결과(테스트를 진행해봄)GDR 라인GDR 보안 업데이트✅ 가능GDR 라인 유지, 보안 패치 적용GDR 라인CU 누적 업데이트✅ 가능CU 라인 전환, 기능·버그·보안 적용GDR 라인CU용 보안 업데이트✅ 가능해당 CU 기반 보안 패치 적용, CU 라인으로 전환됨CU 라인CU 누적 업데이트✅ 가능상.. 2025. 8. 14.
[MSSQL] CU 및 GDR 보안 업데이트 패치 라인정리 SQL Server 업데이트 체계 정리1. 라인(Line) 구분SQL Server는 업데이트 라인이 두 개로 나뉩니다.GDR 라인 (General Distribution Release)→ 안정성 중시, 보안 패치만 포함, 기능/버그 수정 없음CU 라인 (Cumulative Update)→ 기능 개선, 버그 수정, 보안 패치까지 포함, 변경 범위 큼2. 업데이트 종류구분 포함 내용 설치 대상 특징GDR 보안 업데이트보안 패치만GDR 라인최소 변경, 보안 이슈 대응용CU 누적 업데이트이전 CU까지의 모든 기능 개선 + 버그 수정 + 보안 패치CU 라인변경 폭 큼, 정기(1~2개월)CU용 보안 업데이트보안 패치만 (CU 기능은 그대로 유지)CU 라인CU 버전은 유지하며 보안만 강화 3. 관계도[기본 RTM.. 2025. 8. 14.
[MSSQL] 데이터베이스 소유자 (db_owner) 조회 및 변경방법 데이터베이스 소유자 (db_owner) 조회 데이터베이스 소유자를 조회하는 2가지 방법에 대해서 알아보자. 첫번째 방법 SELECT a.name AS [Database], b.name AS [Owner] FROM sys.databases AS a JOIN sys.sql_logins AS b ON a.owner_sid = b.sid GO 두번째 방법 SELECT name AS [Database], SUSER_SNAME(owner_sid) AS [Owner] FROM sys.databases GO 데이터베이스 소유자 (db_owner) 변경 변경하고자 하는 DB(BEBE)의 소유자를 'sa' 에서 'admin' 으로 변경하려고 할때 아래와 같은 문법으로 변경하면 된다. 문법 ALTER AUTHORIZATIO.. 2024. 3. 22.
[MSSQL] decimal 및 numeric 사용법(자릿수 확인) decimal 및 numeric 사용법에 대해서 알아보고 자릿수에 대해서 테스트 및 산술 오버플로 오류에 대해서도 확인해 보자 자릿수 확인 decimal[ (p[ ,s] )] 및 numeric[ (p[ ,s] )] 고정 정밀도 및 배율 숫자입니다. 최대 정밀도를 사용하는 경우 유효한 값은 - 10^38 +1 ~ 10^38 - 1입니다. 10진수에 대한 ISO 동의어는 dec 및 dec(p, s)입니다. 숫자는 10진수와 기능적으로 동일합니다. p(전체 자릿수) 저장할 최대 소수 자릿수입니다. 이 숫자에는 소수점의 왼쪽과 오른쪽이 모두 포함됩니다. 전체 자릿수 값은 1에서 최대 전체 자릿수인 38 사이여야 합니다. 기본 전체 자릿수는 18입니다. 예제 --테이블 생성 CREATE TABLE dbo.DN_T.. 2024. 3. 12.
[MSSQL] 복원 전 백업파일의 논리적 파일 위치 확인방법(FILELISTONLY) 데이터베이스 복원 전에 해당 파일을 복원해야 할 경로로 빈 폴더를 만들어 두어야 합니다. 만약 폴더가 없으면 복원시 해당 경로가 없다고 오류가 발생합니다. 논리적 파일위치 확인 복원전 백업파일의 복원 파일위치를 확인하는 명령어 입니다. 문법 : RESTORE FILELISTONLY FROM DISK = '폴더경로\파일명.bak' 실행 : RESTORE FILELISTONLY FROM DISK = N'D:\data2\test\TESTDB.bak' 백업파일 경로를 확인 하였으니 폴더를 만든 후 복원을 진행합니다. 2024. 3. 12.
[MSSQL]현재 세션의 SET OPTION 의 상태값을 확인하는 방법 SQL Server 에서 현재 세션의 SET OPTION 의 상태값을 확인하는 방법에 대해서 알아보자 DECLARE @options INT SELECT @options = @@OPTIONS PRINT @options --아래 참고문서의 값을 모두 합한 값 IF ( (1 & @options) = 1 ) PRINT 'DISABLE_DEF_CNST_CHK 1' IF ( (2 & @options) = 2 ) PRINT 'IMPLICIT_TRANSACTIONS 2' IF ( (4 & @options) = 4 ) PRINT 'CURSOR_CLOSE_ON_COMMIT 4' IF ( (8 & @options) = 8 ) PRINT 'ANSI_WARNINGS 8 ' IF ( (16 & @options) = 16 ) PR.. 2024. 3. 12.
[SQL프로파일] Showplan 설정 테스트 MSSQL 도구 중 하나인 SQL프로파일러는 실시간 쿼리 수집이 가능한 모니터링 도구이다. 프로파일러는 SSMS를 실행 후 상단바의 도구 -> SQL Server Profiler를 클릭하면 접속이 가능하다. SQL프로파일러는 쿼리의 실행계획을 볼 수 있는 추적 이벤트가 존재하는데 그래픽 실행계획을 보는 이벤트인 "Showplan"을 설정하는 방법을 아래에서 알아보자 ※주의 : 운영중인 디비에 사용시 조건을 타이트 하게 하여 부하를 최소화 하고 사용해야한다.(예: 실행시간 10초 이상인 쿼리만 보기) Showplan 추적 이벤트 추적이벤트는 Performance 이벤트를 열면 보이며 아래의 2가지 Showplan 추적 이벤트는 그래픽 실행계획을 확인 할 수 있는 이벤트이다. 1.Showplan XML 쿼리.. 2023. 11. 18.
[MSSQL] 엔터, 탭 제거 후 엑셀에 붙여넣기 MSSQL에서 SELECT한 자료를 복사해서 엑셀이나 CSV등으로 붙여넣기 해서 옮기는 경우 엑셀 시트 한칸에 한줄로 이쁘게 들어가는 것이 라니라 아래로 여러 셀로 붙여 넣어지는 경우가 있다. 이런 경우 MSSQL에서 개행문자(엔터, 탭)을 제거해줘야하는데 아래서에 간단히 알아보자 MSSQL 엔터제거 문법 : 엔터: REPLACE(REPLACE(컬럼명, CHAR(13), ''), CHAR(10), ''); \n, \r은 엔터이기 때문에 char(10)과 char(13)을 찾아서 REPLACE를 해준다 MSSQL 탭제거 문법 : 탭: REPLACE(컬럼명, CHAR(9), '') \t는 탭이기 때문에 char(9)를 찾아서 REPLACE를 해준다 이상으로 MSSQL에서 엑셀로 결과를 복사해서 붙여넣어 옮기.. 2023. 11. 18.
[MSSQL] 데드락(교착상태) 테스트 예제 DeadLock이란 둘 이상의 세션이 서로 맞물려 차단된 상태를 말한다. DeadLock이 발생하면 영원히 지속되기 때문에 SQL 서버가 자동으로 찾아내어 해제시켜 준다. DeadLock에는 두가지 종류가 있다. 1. 순환 교착 (Cycle Deadlock) 교착상태를 설명할 때 보통 예로 드는 것이 이 "Cycle DeadLock"이다. 두 세션이 필요한 리소스를 얻기 위해 서로 상대방이 Lock을 풀기를 기다리는 상태라고 설명할 수 있다. 예를 들면 다음과 같다. 테스트를 위한 테이블 생성 및 데이터 입력 create table TAB_A( seq int NOT NULL ,name varchar(10) ) go ALTER TABLE TAB_A ADD CONSTRAINT PK_TAB_A PRIMARY .. 2023. 11. 18.
[MSSQL] 복사전용백업(COPY ONLY BACKUP) 실행방법 및 개념설명 복사전용백업이란? 기존 백업 시퀀스에 영향을 주지 않고 백업을 받는 방법이다. 즉 복사전용백업은 기존의 백업 시퀸스와 독립적으로 작용한다. 예를 들어 매일 전체 백업을 진행하고 1시간마다 차등백업을 진행한다고 생각해보자. 중간에 현재 데이터에 대한 복원 요청이 올 경우 전체 백업을 받게 되는데 복사전용백업 옵션 없이 백업을 받게 되면 시퀸스가 달라져서 기존에 백업 정책 복원에 문제가 생긴다 이럴 경우 복사전용백업을 사용한다. 복사전용백업 특징 SQL Server 2005 이상부터 지원한다. 복사 전용 전체 백업은 차등 백업으로 사용 될 수 없으며 차등 기반에 영향을 미치지 않는다. 복사 전용 백업 이후에는 트랜잭션 로그를 자를 수 없다. 복사전용백업 실행 복사전용 백업으로 풀백업과 로그백업을 진행합니다... 2023. 11. 18.
반응형