Oracle 10g XE는 처음에 설치할 때 AL16UTF16으로 자동 설정됩니다.
이때 만약 다른 CHARACTERSET을 사용하던 디비를 임포트하려면 좀 난감하게 됩니다. 경우에 따라서 CHARACTERSET 차이로 인해 임포트시 에러가 발생하기 때문이죠.
저도 이 문제로 검색좀 했습니다.
간단하게 정리하자면...
Win+R => cmd => 엔터
# sqlplus / as sysdba
SQL>SHUTDOWN IMMEDIATE;
SQL>STARTUP MOUNT;
SQL>ALTER SYSTEM ENABLE RESTRICTED SESSION;
SQL>ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
SQL>ALTER DATABASE OPEN;
SQL>ALTER DATABASE CHARACTER SET INTERNAL_USE KO16MSWIN949 ;
SQL>SHUTDOWN IMMEDIATE;
SQL>STARTUP;
정상적으로 진행되었다면 아래와 같은 메시지를 보셨을 겁니다.
-- 정상 처리 메시지
SQL> SHUTDOWN IMMEDIATE;
데이터베이스가 닫혔습니다.
데이터베이스가 마운트 해제되었습니다.
ORACLE 인스턴스가 종료되었습니다.
SQL> STARTUP MOUNT;
ORACLE 인스턴스가 시작되었습니다.
Total System Global Area 805306368 bytes
Fixed Size 1289996 bytes
Variable Size 209715444 bytes
Database Buffers 591396864 bytes
Redo Buffers 2904064 bytes
데이터베이스가 마운트되었습니다.
SQL> ALTER SYSTEM ENABLE RESTRICTED SESSION;
시스템이 변경되었습니다.
SQL> ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
시스템이 변경되었습니다.
SQL> ALTER DATABASE OPEN;
데이타베이스가 변경되었습니다.
SQL> ALTER DATABASE CHARACTER SET INTERNAL_USE KO16MSWIN949 ;
데이타베이스가 변경되었습니다.
SQL> SHUTDOWN IMMEDIATE;
데이터베이스가 닫혔습니다.
데이터베이스가 마운트 해제되었습니다.
ORACLE 인스턴스가 종료되었습니다.
SQL> STARTUP;
ORACLE 인스턴스가 시작되었습니다.
Total System Global Area 805306368 bytes
Fixed Size 1289996 bytes
Variable Size 209715444 bytes
Database Buffers 591396864 bytes
Redo Buffers 2904064 bytes
데이터베이스가 마운트되었습니다.
데이터베이스가 열렸습니다.
SQL> SELECT * FROM V$NLS_PARAMETERS WHERE PARAMETER LIKE '%CHARACTER%';
PARAMETER
----------------------------------------------------------------
VALUE
----------------------------------------------------------------
NLS_NUMERIC_CHARACTERS
.,
NLS_CHARACTERSET
KO16MSWIN949
NLS_NCHAR_CHARACTERSET
AL16UTF16
만약 아래와 같은 메시지를 만난다면 오라클 서비스를 재시작하세요.
SQL> SHUTDOWN IMMEDIATE;
ORA-24324: 서비스 처리가 초기화되지 않았습니다
ORA-24323: 값이 허용되지 않습니다
ORA-01089: 즉시 종료 중입니다 - 작업이 허용되지 않습니다
=> OracleServiceXE 서비스 재시작



당신의 의견을 작성해 주세요.