|
티스토리
검색하기 블로그 홈
ORACLE/ADMIN
SID, DB_NAME,GLOBAL_NAME
[PineTree]
2009. 4. 8. 16:07
1. SID 란
A name that identifies a specific instance of a running pre-release 8.1 Oracle database.
For any database, there is at least one instance referencing the database.
For pre-release 8.1 databases, SID is used to identify the database.
The SID is included in the connect descriptor of a tnsnames.ora file and
in the definition of the listener in the listener.ora file.
쉽게 이야기해서 SID 란 Oracle Instance 라고 생각하면 된다.
( 3 NODE 일 경우 SID 와 DB 와의 관계 )
SID ---|
SID ------- DB
SID ---|
2. SID 확인 방법
select THREAD#,INSTANCE,STATUS from v$thread;
1 TG2010D OPEN
--> Single DB 일 경우 Return 되는 Row 가 하나
1 TG2010D1 OPEN
2 TG2010D2 OPEN
--> RAC (2Node) 일 경우 Return 되는 Row 는 두개 이다.
3. DB_NAME 이란 ?
DB_NAME 은 8자리로 제한되는 Database 구분자이다.
이 파라미터는 CREATE DATABASE 일때 지정된다.
하나의 System 에 다수의 Database 가 운영되는 환경이라며,
SID(Oracle Instance Identifier) 와 DB Name 을 Matching 시켜 줘야 한다.
일반적으로 Single Database 일 경우 SID 와 DB Name 을 동일 하게 운영한다.
SID 지정을 통해서 접속 하고자 하는 DB NAME 을 지정한다고 생각하면 된다.
알파벳, _(Underscore), #(Number Signe), $(Dollar Singe) 만 가능하다.
EX) A(A), B(B), C(C) -- DB_NAME ( SID )순서
상기와 같은 구성 이라면 C 에 접속 하고자 한다면
EXPORT ORACLE_SID=C [ UNIX, LINUX ]
SET $ORACLE_SID=C [ NT ]
를 통해서 SID 지정 후 접속하면 원하는 DATABASE 에 접속이 가능하다.
4. DB_NAME 확인
select NAME, DB_UNIQUE_NAME from v$database ;
NAME DB_UNIQUE_NAME
--------- ------------------------------
TG2010D TG2010D
5. RAC 일 경우 INIT 파라미터 예제
*.cluster_database_instances=2
*.cluster_database=true
*.db_domain=''
*.db_name='TG2010D'
TG2010D1.instance_number=1
TG2010D2.instance_number=2
6. 기타
일반적으로 SID 변경이란 SID 및 DB_NAME 을 변경 한다구 생각하면 된다.
SID(INSTACNE) 만 변경 할 일은 극히 드물다..
전 해본적이 없음
7. Global_Name
네트워크 환경에서 데이타베이스 이름이 동일하여 구분하기 어려울 때,
사용하는 전역 데이터베이스 이름을 사용할 것인지를 결정하는 파라미터이다.
DB_NAME.DB_DOMAIN 이름으로 구성된다.
INIT PARAMETER 화일 예제 )
*.db_domain=''
-- DB_DOMAIN 은 128 자 까지 가능, Default 값은 WORLD
*.db_name='TG2010T'
8. Global_Name 관련 파라미터
8.1 GLOBAL_NAMES
SYS>show parameters global_names
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
global_names boolean FALSE
==> Default 는 FALSE 값이다.
DB LINK 를 통해서 접속 시에 GLLBAL_NAME 과 일치해야 하는지,
FALSE 이면 DB LINK 값과 GLOBAL_NAME 이 달라도 접속이 된다.
GLOBAL_NAME 의 효과(10번항목) 같이 생각하면
GLOBAL_NAME 을 TRUE 로 설정하고, 같은 DOMAIN NAME 을 사용한다면
같은 DOMAIN 내에서만 DB LINK 사용이 가능할것으로 예상된다.
8.2 GLOBAL_NAMES 변경
SYS> ALTER SESSION SET global_names = TRUE;
SYS> ALTER SYSTEM SET global_names = FALSE;
8.3 DB_DOMAIN
SYS>show parameter domain
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_domain string
==> DB_DOMAIN 은 128 자 까지 가능, Default 값은 WORLD
8.4 DB_NAME
SYS>show parameters db_name
NAME TYPE VALUE
------------------------------------ ----------- ------------------
db_name string TG2010T
==> GLOBAL_NAME = DB_NAME.DB_DOMAIN 이니 TG2010T 가 GLOBAL_NAME 이고
GLOBAL_NAME 의 설정은 FALSE 이다.
9. Global_Name 확인 및 변경
SYS>ALTER DATABASE RENAME GLOBAL_NAME TO TG2010Z ;
Database altered.
SYS>select * from global_name ;
GLOBAL_NAME
--------------------------------------------------------------------------------
TG2010Z
SYS>ALTER DATABASE RENAME GLOBAL_NAME TO TG2010T ;
Database altered.
SYS>select * from global_name ;
GLOBAL_NAME
--------------------------------------------------------------------------------
TG2010T
10. Global_Name의 효과
10. 1 Global_Name 효과
DB LINK 에 영향을 준다.
DB LINK 생성 시에 DB_DOMAIN 값이 아닌, GLOBAL_NAME 의 접미사 부분이
자동으로 DBA_DB_LINKS.DB_LINK 에 붙는다.
예제) 일반적으로 .WORLD 를 붙이지 않는다.
테스트로 구별이 쉽게 하기 위해서 .WORLD 로 설정
SYS> SELECT GLOBAL_NAME FROM GLOBAL_NAME ;
TG.WORLD
SYS> CREATE DATABASE LINK JT USING 'JT' ;
SYS> SELECT OWNER,DB_LINK,HOST FROM DBA_DB_LINKS ;
SYS JT2010D.WORLD JT010d
==> 이런식으로 LOCAL DATABASE 의 아래의 값이 DB LINK 생성 시 자동으로 할당된다.
예제에선 .WORLD
( SELECT GLOBAL_NAME FROM GLOBAL_NAME ) - ( SELECT INSTANCE_NAME FROM V$INSTANCE )
10.2 DB_DOMAIN 확인 방법
SYS> SELECT NAME, VALUE FROM V$PARAMETER WHERE NAME = 'db_domain';
출처 : http://www.oracleclub.com/article/23879
저작자표시 비영리
siddbnameGLOBAL_NAME
About DATABASE
ORACLE DATABASE에 대한 정보가 있는 곳 .. DATABASE 와 여러정보 함께 공유해요~~
구독하기
프로필 사진
ORACLE/ADMIN의 다른 글
[oracle]Column 단위로 권한 부여 하기
결론 : 1. Oracle 에서 칼럼 단위로 권한 부여가 가능한것은 Insert , Update 에 대해서다 2. Delete 의 경우 Row의 구성 Column 전체에 대한 작업이니 칼럼 단위 권한 부여 자체가 불가능한것으로 생각된다. 3. select 의 경우 View 를 통한 대체가 가능하다. SYS> create table myemp as select * from scott.emp ; SYS> grant select on myemp to scott ; SYS> grant update ( sal ) on myemp to scott ; SYS> create public synonym myemp for myemp ; SCOTT> select * from myemp ; ==> 조회 가능 SCOTT>del..
공감수0 댓글수0 2009. 4. 6.
오라클 간단한 보안 시큐리티설정들..
* 사용자 비밀번호를 변경하는 방법. ALTER USER IDENTIFIED BY ; 오라클 8 부터는 sqlplus 를 통해, 유닉스처럼 비밀번호를 변경한다. SQL> password Changing password for SCOTT Old password: New password: Retype new password: 만약 다른 사용자의 비밀번호를 변경하고 싶다면, 'password 사용자이름' 으로 한다. * 사용자를 삭제하고, 만드는 방법. 생성) CREATE USER scott IDENTIFIED BY tiger -- 비밀번호 DEFAULT TABLESACE tools -- 테이블스페이스 설정 TEMPORARY TABLESPACE temp; -- 임시테이블 스페이스 설정 ( 임시테이블스페이스가 ..
공감수0 댓글수0 2009. 4. 2.
더보기
이 블로그 인기글
oracle ERROR: ORA-12547: TNS:lost contact
TIMESTAMP -> DATE 변환
[Oracle] Primary Key 수정
DBMS_XPLAN.DISPLAY_CURSOR 결과 보는 법
SP2-0734: unknown command beginning "작업이 진..." - rest of line ignored.
ORA-01555 (Snapshot too old) 에러 발생 원인과 대처 방법
티스토리 로그인 고객센터
티스토리는 카카오에서 사랑을 담아 만듭니다.
© Kakao Corp.
공감수0댓글수0공유하기더보기