SQL Server 인스턴스 데이터 정렬(Collation) 변경

Database/SQL Server / /
728x90

 

1.    백업

1)      백업을 하는 이유 : 데이터 정렬을 변경하기 위해서는 System DatabaseMaster DB를 재설치 해야 하는 이슈가 발생되는 데 이때 System Database중 재설치가 Database마다 일어나지 않고 4개의 Database(master, model, msdb, tempdb)가 모두 재설치 되어야 하기 때문에 기존 시스템을 모두 백업해야 함

2)      절차

(1)    모든 사용자 데이터베이스와 개체를 다시 만드는데 필요한 정보를 스크립트화 한다.

(2)    모든 데이터를 내보내기를 통해 백업을 진행한다.

(3)    현재 System Database 설정을 백업한다.

                                                                    i.         현재 System 설정 백업

SELECT * FROM sys.configurations

 

                                                                   ii.         인스턴스 정보 백업

SELECT  

SERVERPROPERTY('ProductVersion 'AS ProductVersion,  

SERVERPROPERTY('ProductLevel'AS ProductLevel,  

SERVERPROPERTY('ResourceVersion'AS ResourceVersion,  

SERVERPROPERTY('ResourceLastUpdateDateTime'

AS ResourceLastUpdateDateTime,  

SERVERPROPERTY('Collation'AS Collation

 

                                                                  iii.         유사 시 데비를 위한 기존 System Database 백업 (파일 위치 확인 후 해당 데이터 파일 및 로그 파일 복사

SELECT name, physical_name AS current_file_location  

FROM sys.master_files  

WHERE database_id IN (DB_ID('master'), 

        DB_ID('model'), 

        DB_ID('msdb'), 

        DB_ID('tempdb'))

 

2.    사전 설정

1)      사용자 Database 모두 제거

2)      Sysadmin 권한의 계정 준비

3)      Binn\Templates  폴더에 template 이 존재하는지 확인해야 함(기본 설치 위치 : C:\Program Files\Microsoft SQL Server\MSSQL15.MSSQLSERVER\MSSQL\Binn\Templates) 해당 파일을 기반으로 재생성 진행

3.    재생성 시도

1)      기존 설정 확인 (현재 SQL_Latin1_General_CP1_CI_AS)


2)      스크립트 실행

(1)    CMD(명령 프롬프트)창 또는 PowerShell창에서 해당 Setup파일이 있는 위치로 이동 (기본 폴더 : C:\Program Files\Microsoft SQL Server\150\Setup Bootstrap\SQL2019)


(2)    해당 스크립트로 Rebuild (1줄로 변경해서 실행)

Setup /QUIET 

    /ACTION=REBUILDDATABASE 

    /INSTANCENAME=<인스턴스명

    /SQLSYSADMINACCOUNTS=<sysadmin 계정

    /SAPWD=<비밀번호

    /SQLCOLLATION=<원하는 정렬>

 

아래와 같이 변경중인 것을 확인할 수 있다.


3)      바뀐 설정 확인 (Korean_Wansung_CI_AS로 변경확인)


4.    참조

1)      https://docs.microsoft.com/ko-kr/sql/relational-databases/databases/rebuild-system-databases?view=sql-server-ver15

2)      https://docs.microsoft.com/ko-kr/sql/relational-databases/collations/set-or-change-the-server-collation?view=sql-server-ver15

 

728x90
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기