일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- command & perl
- prompt
- cygwin
- memory
- SQL
- Oracle RAC
- perl string
- perl one-liner
- RHEL4
- Network
- mariaDB
- bash
- oracle install
- Unix
- 연산자
- fdisk
- rac
- oracle
- PERL
- 오라클
- php5
- patch
- solaris network
- grid
- solaris
- perl + 정규표현식
- Linux
- sqlplus
- MySQL
- dba
Archives
- Today
- Total
DATA 전문가로 가는 길
[Admin][Oracle] User Process 파라미터 지정 본문
1. User Process란 무엇인가?
특정 SQL을 수행하여 원하는 내용을 추출하고 싶다면 데이터베이스에 접속해야 한다. 이때 SQLPLUS를 사용하여 접속하였다면 해당 SQLPLUS는 유저 프로세스를 생성하게 된다. 유저 프로세스는 해당 세션의 정보와 수행하고자 하는 SQL 정보를 데이터베이스 서버로 전달하게 된다.(토드, SQL Developer)
2. 현재 Oracle에 설정된 유저 프로세스 개수 확인
SQL> show parameter processes
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
aq_tm_processes integer 0
db_writer_processes integer 1
gcs_server_processes integer 0
job_queue_processes integer 10
log_archive_max_processes integer 2
processes integer 150
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
aq_tm_processes integer 0
db_writer_processes integer 1
gcs_server_processes integer 0
job_queue_processes integer 10
log_archive_max_processes integer 2
processes integer 150
- processes : 하나의 서버에 동시에 접근 할 수 있는 유저 프로세스는 150개를 의미 합니다.
3. processes 파라미터 설정
[ 참고 #1 ] spfile을 사용하는지 pfile을 사용하는지 확인 해보는 방법은 VALUE 부분에 값이 있을 경우에는 spfile을 사용하는 것이고, 만약 VALUE 부분에 값이 없을 경우에는 pfile을 사용하는 것입니다.
[ 참고 #2 ] 주의 사항은 pfile과 spfile이 모두 같은 디렉토리에 존재한다면 spfile만 사용하게 됩니다.
# processes 파라미터 파일 확인
SQL> show parameter spfile;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string /export/home/oracle/product/10g/dbs/spfiletestdb.ora
SQL> show parameter pfile;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string /export/home/oracle/product/10g/dbs/spfiletestdb.ora
# processes 파라미터 파일 내용 확인
SQL> !
bash-3.00$ cd $ORACLE_HOME/dbs
bash-3.00$ ls
hc_testdb.dat init.ora orapwtestdb
initdw.ora lkTESTDB spfiletestdb.ora
bash-3.00$ grep "\*\.processes=" spfiletestdb.ora
*.processes=150
# processes 파라미터 파일 수정 및 확인
bash-3.00$ exit
exit
SQL> alter system set processes=200 scope=spfile;
System altered.
System altered.
SQL> !
bash-3.00$ pwd
/export/home/oracle
bash-3.00$ cd $ORACLE_HOME/dbs
bash-3.00$ ls
hc_testdb.dat init.ora orapwtestdb
initdw.ora lkTESTDB spfiletestdb.ora
bash-3.00$ grep "\*\.processes=" spfiletestdb.ora
*.processes=200
[주의사항] 바이너리 파일에는 정상적으로 수정 되었지만 실제로 DB에는 방영되지 않습니다. 반영하기 위해서는 DB를 재 시작 해야 합니다.
SQL> show parameter processes
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
aq_tm_processes integer 0
db_writer_processes integer 1
gcs_server_processes integer 0
job_queue_processes integer 10
log_archive_max_processes integer 2
processes integer 150
SQL> shutdown immediate
Database closed.
Database dismounted.
[ 참고 ] nomount 단계에서 파라미터 파일을 사용합니다.(spfile, pfile)
SQL> startup nomount
ORACLE instance started.
Total System Global Area 289406976 bytes
Fixed Size 1279820 bytes
Variable Size 79694004 bytes
Database Buffers 205520896 bytes
Redo Buffers 2912256 bytes
SQL> show parameter processes
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
aq_tm_processes integer 0
db_writer_processes integer 1
gcs_server_processes integer 0
job_queue_processes integer 10
log_archive_max_processes integer 2
processes integer 200
SQL> alter database mount;
Database altered.
bash-3.00$ pwd
/export/home/oracle
bash-3.00$ cd $ORACLE_HOME/dbs
bash-3.00$ ls
hc_testdb.dat init.ora orapwtestdb
initdw.ora lkTESTDB spfiletestdb.ora
bash-3.00$ grep "\*\.processes=" spfiletestdb.ora
*.processes=200
[주의사항] 바이너리 파일에는 정상적으로 수정 되었지만 실제로 DB에는 방영되지 않습니다. 반영하기 위해서는 DB를 재 시작 해야 합니다.
SQL> show parameter processes
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
aq_tm_processes integer 0
db_writer_processes integer 1
gcs_server_processes integer 0
job_queue_processes integer 10
log_archive_max_processes integer 2
processes integer 150
SQL> shutdown immediate
Database closed.
Database dismounted.
[ 참고 ] nomount 단계에서 파라미터 파일을 사용합니다.(spfile, pfile)
SQL> startup nomount
ORACLE instance started.
Total System Global Area 289406976 bytes
Fixed Size 1279820 bytes
Variable Size 79694004 bytes
Database Buffers 205520896 bytes
Redo Buffers 2912256 bytes
SQL> show parameter processes
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
aq_tm_processes integer 0
db_writer_processes integer 1
gcs_server_processes integer 0
job_queue_processes integer 10
log_archive_max_processes integer 2
processes integer 200
SQL> alter database mount;
Database altered.
SQL> alter database open;
Database altered.
Database altered.
만약 pfile을 사용한다면 $ORACLE_HOME/dbs/initSID.ora 파일을 열어서 processes = 50 값을 변경 후 DB를 Open하시기 바랍니다.
'Data Architecture > Admin' 카테고리의 다른 글
[Admin][MariaDB] DB 생성 과 테이블 조작(DDL, DML) (0) | 2016.08.04 |
---|---|
[Admin][MariaDB] JSON 테이블에 적재(Json Table Type) (0) | 2016.04.18 |
[Admin][Oracle] 오라클 시작과 종료(shutdown, no mount, mount, open) (0) | 2016.02.29 |
[Admin][Oracle] tnsnames.ora Setup (1) | 2015.02.17 |
[Admin][Oracle] SELECT, UPDATE, COMMIT 실행되는 과정 (0) | 2011.04.17 |
Comments