문자셋과 호환성 확인
TTS 문자셋, 국가 문자셋, 길이 의미, LOB, 플랫폼 조건을 구분하며 이동 집합 전체의 추가 검사 결과는 확인 불가
#핵심 요약
NLS_CHARACTERSET과 NLS_NCHAR_CHARACTERSET을 양쪽 DB에서 확인함
Self-contained 검사와 문자셋 호환성 검사는 별개임
문자셋이 다르면 strict binary subset 관계와 추가 조건을 검토하는 설명이 있으며 최종 통과 결과는 확인 불가
#개념과 동작 원리
| 호환성 항목 | TTS 이동 조건과 검사 기준 |
|---|---|
| DB 문자셋 | 동일하거나 strict binary subset 관계와 추가 조건 충족 여부 확인 |
| 국가 문자셋 | 불일치 시 NCHAR, NVARCHAR2, NCLOB 존재 여부 확인 |
| 문자 길이 의미 | 이동 테이블스페이스의 CHAR_USED='C' 컬럼 확인 |
| LOB | 이동 대상 CLOB 존재 확인 |
| 플랫폼 | 플랫폼 이름, Endian 형식 비교, Endian이 다르면 변환 필요 |
| 다른 방식 검토 | 문자셋이 호환되지 않으면 일반 Data Pump 등 논리적 이행과 문자셋 변환 검토 |
실습에서는 12.2 소스 US7ASCII/AL16UTF16과 19c 타깃 AL32UTF8/AL16UTF16을 비교하고 첫 문자셋의 binary subset 관계를 설명함
이어서 문자 길이 의미와 CLOB 검사를 요구하지만 실제 검사 결과는 제시하지 않음
#주요 용어와 구성 요소
| 구문 | 의미 |
|---|---|
| binary subset | 소스의 문자 코드가 타깃에서 같은 의미로 해석되는 엄격한 부분집합 관계임 |
| 문자 길이 의미 | CHAR 단위 열의 저장 최대 문자 폭 조건이며 문자셋 이름 비교만으로 대체할 수 없음 |
#필수 명령어 또는 SQL
| 항목 | 실행 조건 |
|---|---|
| 작업 대상 | 소스, 타깃 문자셋과 국가 문자셋, 플랫폼, endian |
| 필요 권한 | SYS 또는 해당 관리 뷰의 조회 권한을 부여받은 계정 |
| 바꿀 입력값 | 기존 조회는 입력값 없음, 추가 열, LOB 검사는 실제 이동 집합이 필요함 |
| 결과 해석 | 조회 문자열의 비교와 전체 TTS 가능 판정은 다르며 추가 열 검사, 변환 출력은 기재 없음 |
SELECT property_name, property_value
FROM database_properties
WHERE property_name IN ('NLS_CHARACTERSET','NLS_NCHAR_CHARACTERSET');
SELECT d.platform_name, t.endian_format
FROM v$database d, v$transportable_platform t
WHERE d.platform_name = t.platform_name;결과 해석: 양쪽 문자셋, 국가 문자셋, 플랫폼, Endian을 비교하는 조회임(확인 불가)
문자셋 관계만으로 모든 TTS 조건 통과를 판정하지 않음
#구문과 옵션 설명
소스가 10.1.0.3 이상이고 DB 문자셋이 다르면 strict binary subset 관계에 더해, 이동 집합에 문자 길이 의미 열이 없거나 양쪽 최대 문자 폭이 같아야 함
CLOB이 없거나 양쪽 문자셋이 모두 단일 바이트 또는 모두 다중 바이트여야 함
국가 문자셋이 다르면 해당 버전 조건에서 이동 집합에 NCHAR, NVARCHAR2, NCLOB이 없는지 확인해야 함
Endian 차이는 RMAN CONVERT 또는 DBMS_FILE_TRANSFER의 변환 경로를 검토하는 조건임
#사용 조건과 주의사항
문자셋 관계 외에 아래 길이 의미, LOB, 국가 문자셋 조건을 함께 적용해야 함
실습의 추가 컬럼 조회는 DBA_TABLES의 TABLESPACE_NAME으로 조인함
별도 저장 구조까지 포함한 누락 없는 검사인지는 확인 불가이며 완전한 호환성 판정으로 사용할 수 없음
문자셋 조회 결과 외에 추가 호환 조건도 확인해야 함
불일치 또는 binary subset 여부만으로 성공, 실패를 판단할 수 없음
의존성 검사 통과와 문자셋, 국가 문자셋, 플랫폼 조건 통과는 독립된 확인임
파티션, LOB 등 실제 세그먼트 배치를 빠뜨리지 않는 이동 집합 검사가 필요하며 본문의 추가 검사 결과는 확인 불가