본문 바로가기

소프트웨어/오라클

[Oracle process 조정] max process 오류 발생시 process를 조정하고싶을 경우 사용해보세요

일단 아래 내용을 확인하기 위해서는 sqlplus에 먼저 접속을 해야한다.
시작 -> 실행 -> cmd 작성후 엔터를 치면

까만 명령프롬프트(command)창이 나타나는데 거기서

C:\>sqlplus hr/hr
이렇게 쳐서 아래와 같이 SQL> 프롬프트가 떨어지게 한 후에

아래의 번호 순서대로 진행하면 oracle process를 조정해 줄 수 있다.

이 내용을 어디서 사용하게 되는가 하면?
자바로 개발시 'max process'라는 문구가 들어간 오류가 발생할 경우

- process를 확인하고  process를 늘려줄 수 있다.
- 주로 connection관리를 잘못해서 process가 넘쳐나는 경우에 발생한다.
  그럴때 확인해 주고 변경을 해주면 된다. !!


1. oracle의 현재 설정된 processes 를 확인한다.

SQL> show parameter processes
NAME                                 TYPE                  VALUE
-----------------------------------------------------------------------------------------------
aq_tm_processes                      integer                    1
db_writer_processes                  integer                     1
job_queue_processes                  integer                   10
log_archive_max_processes            integer                     2
processes                            integer                  150
SQL>


2. alter system set 명령으로 spfile 을 수정합니다.

주의) 이 명령으로 동적으로 DB에 반영되지는 않습니다.
DB를 다시 오픈 시켰을때 반영됩니다.

SQL> alter system set processes=200 scope=spfile ;
System altered.

SQL>

3.spfile에서 process수가 200 으로 바뀐지를 확인합니다.
참조)굳이 확인할 필요는 없으며 spfile은 binary 파일이므로 vi로 편집이 불가능 합니다.

[oracle@angka dbs]$ pwd
/oracle/app/oracle/product/9.2.0/dbs
[oracle@angka dbs]$ more spfileORA92.ora
.....
*.job_queue_processes=10
*.large_pool_size=16777216
*.open_cursors=300
*.pga_aggregate_target=33554432
*.processes=200
*.query_rewrite_enabled='TRUE'
*.remote_login_passwordfile='EXCLUSIVE'
*.shared_pool_size=83886080
*.sort_area_size=1048576

4. DB를 shutdown 실행
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL>

5. DB를 다시 올리고 process수가 200으로 변경되었는지 확인합니다.
SQL> startup
ORACLE instance started.

Total System Global Area  219223120 bytes
Fixed Size                   451664 bytes
Variable Size             201326592 bytes
Database Buffers           16777216 bytes
Redo Buffers                 667648 bytes
Database mounted.
Database opened.

SQL> show parameter processes
NAME                                 TYPE                  VALUE
-------------------------------------------------------------------------------------------
aq_tm_processes                      integer                     1
db_writer_processes                   integer                     1
job_queue_processes                  integer                    10
log_archive_max_processes             integer                    2
processes                            integer                  200
SQL>

참고) pfile 로 DB를 오픈해서 쓰고 있는 시스템에서는 initORA.ora 파일의 processes를 직접수정하고 DB를 다시 올리시면 됩니다.
출처 : [기타] 인터넷 : 오라클 교육원 교육부