Oacle 데이터베이스 의 인 코딩 및 인 코딩 형식 을 수정 하 는 방법 보기

1882 단어 부호화 형식
우선 Oacle 데이터베이스 의 인 코딩 을 봅 니 다.

SQL> select * from nls_database_parameters where parameter ='NLS_CHARACTERSET';
PARAMETER
--------------------
VALUE
--------------------
NLS_CHARACTERSET
AL32UTF8
이것 은 props$에서 유래 한 것 입 니 다.이것 은 데이터 베 이 스 를 나타 내 는 문자 집합 입 니 다.
Oacle 클 라 이언 트 인 코딩

SQL> select * from nls_instance_parameters where parameter='NLS_LANGUAGE';
PARAMETER
--------------------
VALUE
--------------------
NLS_LANGUAGE
SIMPLIFIED CHINESE
이 는 v$parameter 에서 유래 하여 클 라 이언 트 의 문자 집합 설정 을 표시 합 니 다.매개 변수 파일,환경 변수 또는 레 지 스 트 세 션 문자 집합 환경 일 수 있 습 니 다.
select * from nls_session_parameters,v$nls 에서 유래parameters,세 션 자체 설정 을 표시 합 니 다.세 션 의 환경 변수 나 alter session 이 완 료 될 수 있 습 니 다.세 션 에 특별한 설정 이 없 으 면 nlsinstance_parameters 일치.
Oacle 문자 집합 을 어떻게 수정 하 는 지 다시 한 번 말씀 드 리 겠 습 니 다.
현재 제 데이터베이스 환경의 문자 집합 은 AL32UTF 8 입 니 다.그러면 ZHS16GBK 로 바 꾸 겠 습 니 다.
1.먼저 sysdba 로 conn/as sysdba 에 로그 인
2.데이터베이스 종료 즉시 닫 기;
3.mount 로 데이터베이스 연결,startup mount
4.세 션 설정

SQL>ALTER SYSTEM ENABLE RESTRICTED SESSION;
SQL> ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
SQL> ALTER SYSTEM SET AQ_TM_PROCESSES=0;
5.데이터베이스 시작
alter database open;
6.문자 집합 수정
ALTER DATABASE CHARACTER SET ZHS16GBK;
이것 은 오류 가 발생 할 수 있 습 니 다.문자 집합 을 알려 줍 니 다.새 문자 집합 은 오래된 문자 집합 을 초과 해 야 합 니 다.이 때 우 리 는 초 집합 검 사 를 건 너 뛰 어 변경 할 수 있 습 니 다.
ALTER DATABASE character set INTERNAL_USE ZHS16GBK;
이 문구 만 있 으 면 됩 니 다.TERNALUSE 가 제공 하 는 도움말 은 Oacle 로 하여 금 부분 집합 과 초 집합 인증 을 돌아 가게 합 니 다.이 문 구 는 위의 문장 내부 에서 작 동 할 때 와 똑 같 습 니 다.
7.닫 기,다시 시작
SQL>shutdown immediate;
SQL> startup
물론 문자 집합 은 쉽게 수정 하지 않 는 것 이 좋 습 니 다.이것 은 데이터 베이스 의 데이터 에 직접적인 영향 을 미 칠 수 있 기 때문에 생산 환경 이 라면 예측 할 수 없 는 손실 을 초래 할 수 있 습 니 다.

좋은 웹페이지 즐겨찾기