ORACLE/INSTALL2024. 3. 19. 15:02
반응형

[+ASM1:/home/oracle]> opatch lspatches
36115038;TOMCAT RELEASE UPDATE 19.0.0.0.0 (36115038)
35967489;OCW RELEASE UPDATE 19.22.0.0.0 (35967489)
35956421;ACFS RELEASE UPDATE 19.22.0.0.0 (35956421)
35943157;Database Release Update : 19.22.0.0.240116 (35943157)
33575402;DBWLM RELEASE UPDATE 19.0.0.0.0 (33575402)

OPatch succeeded.

 

grid setup

  • policycoreutils-python  policycoreutils-python-utils  python3-policycoreutils 패키지로 교체되었습니다.
  • [root@brac1 ~]# rpm -qa |grep policycoreutils
    python3-policycoreutils-2.9-20.el8.noarch
    policycoreutils-2.9-20.el8.x86_64
    policycoreutils-python-utils-2.9-20.el8.noarch

rpm 무시

 

DBCA

 

 

 

반응형
Posted by [PineTree]
ORACLE/INSTALL2024. 2. 20. 15:37
반응형

 1.Red Hat Enterprise Linux 9

 
Oracle Database 19.0.0.0.0(Linux x86-64 Red Hat Enterprise Linux 9 사용)
Red Hat Enterprise Linux 9: 5.14.0-70.22.1.el9_0.x86_64 or later

Minimum RU: 19.19
 
 

 2.Oracle Linux 9

Oracle Database 19.0.0.0.0(Linux x86-64 Oracle Linux 9 사용)
Product: For general information relating to certification for the Oracle Database product, including virtualization, interoperability, binary compatibiliy, general release and patch set information, see Core Database Certification Information (Doc ID 1306539.1).

Platform: For details about certifications of Oracle Database on Linux x86-64, see Certification Information for Oracle Database on Linux x86-64 (Doc ID 1304727.1).

For details about Oracle Linux Ksplice Support with the Oracle Database, see Oracle Linux Ksplice Support with Oracle Database (Doc ID 2312257.1).

Minimum RU: 19.19

Minimum kernel versions:

Oracle Linux 9 with the Unbreakable Enterprise Kernel 7: 5.15.0-1.43.4.2.el9uek.x86_64 or later,
or
Oracle Linux 9 with the Red Hat Compatible kernel: 5.14.0-70.22.1.0.2.el9_0.x86_64 or later
AFD/ASMLib

Oracle ASM Filter Driver (AFD) is supported with Oracle Linux 9. Please refer to Note 1369107.1 for more details.
Oracle ASMlib is not supported in the initial release. It will be supported soon.
Customers can choose between using AFD or configuring block devices with udev rules directly as documented here.
ACFS: Please refer to ACFS Supported on OS Platforms for Oracle ACFS certification details (Doc ID 1369107.1)
 
 
 

 

반응형
Posted by [PineTree]
ORACLE/INSTALL2024. 2. 1. 07:51
반응형

공유볼륨 설정

 

{공유볼륨 설정]

cmd 창에서 실행 파일 생성

정해진 크기로 파일 볼륨으로 만듬 추후 ASM 용으로 사용

vboxmanage createmedium --filename CRS1.vdi --size 1024--format VDI --variant Fixed
vboxmanage createmedium --filename CRS 2.vdi --size 1024 --format VDI --variant Fixed
vboxmanage createmedium --filename CRS 3.vdi --size 1024 --format VDI --variant Fixed
vboxmanage createmedium --filename REDATA1.vdi --size 30720 --format VDI --variant Fixed
vboxmanage createmedium --filename REDATA2.vdi --size 30720 --format VDI --variant Fixed
vboxmanage createmedium --filename REDATA3.vdi --size 30720 --format VDI --variant Fixed
vboxmanage createmedium --filename REFRA.vdi --size 20480 --format VDI --variant Fixed

 

-- 공유볼륨설정

vboxmanage modifymedium CRS1 .vdi --type shareable

vboxmanage modifymedium CRS2 .vdi --type shareable

vboxmanage modifymedium CRS3 .vdi --type shareable
vboxmanage modifymedium REDATA1.vdi --type shareable
vboxmanage modifymedium REDATA2.vdi --type shareable
vboxmanage modifymedium REDATA3.vdi --type shareable
vboxmanage modifymedium REFRA.vdi --type shareable

 

 

반응형
Posted by [PineTree]
2023. 7. 26. 09:22

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

ORACLE/INSTALL2023. 6. 14. 17:43
반응형

-- /etc/hosts
192.168.219.59  ora19adg1
192.168.219.69  ora19adg2
192.168.219.51  ora19c
192.168.219.57  ora19c-ogg

192.168.56.108  radg1
192.168.56.103  radg2


#1

*.audit_file_dest='/u01/app/oracle/admin/ora19c/adump'
*.audit_trail='db'
*.compatible='19.0.0'
*.control_files='/oradata/ORA19C/control01.ctl','/oradata/ORA19C/control02.ctl'
*.db_block_size=8192
*.db_name='ora19c'
*.db_recovery_file_dest='/oradata'
*.db_recovery_file_dest_size=8256m
*.db_unique_name='primary'
*.diagnostic_dest='/u01/app/oracle'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=ora19cXDB)'
*.local_listener='LISTENER1','LISTENER2'
*.log_archive_config='dg_config=(primary,standby)'
*.log_archive_dest_1='location=/arch'
*.log_archive_dest_2='service=standby lgwr async valid_for=(online_logfile,primary_role) db_unique_name=standby'
*.log_archive_dest_state_1='enable'
*.log_archive_dest_state_2='enable'
*.log_archive_format='%t_%s_%r.arc'
*.nls_language='KOREAN'
*.nls_territory='KOREA'
*.open_cursors=300
*.pga_aggregate_target=996m
*.processes=320
*.remote_login_passwordfile='EXCLUSIVE'
*.sga_target=2986m
*.standby_file_management='auto'
*.undo_tablespace='UNDOTBS1'


#2
*.audit_file_dest='/u01/app/oracle/admin/standby/adump'
*.audit_trail='db'
*.compatible='19.0.0'
*.control_files='/oradata/STANDBY/control01.ctl','/oradata/STANDBY/control02.ctl'#Restore Controlfile
*.db_block_size=8192
*.db_file_name_convert='/oradata/ORA19C','/oradata/STANDBY'
*.db_name='ora19c'
*.db_recovery_file_dest='/oradata'
*.db_recovery_file_dest_size=8256m
*.db_unique_name='standby'
*.diagnostic_dest='/u01/app/oracle'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=standbyXDB)'
*.fal_client='primary'
*.fal_server='standby'
*.local_listener='LISTENER1','LISTENER2'
*.log_archive_config='dg_config=(primary,standby)'
*.log_archive_dest_1='location=/arch'
*.log_archive_dest_2='service=primary lgwr async valid_for=(online_logfile,primary_role) db_unique_name=primary'
*.log_archive_dest_state_1='enable'
*.log_archive_dest_state_2='enable'
*.log_archive_format='%t_%s_%r.arc'
*.log_file_name_convert='/oradata/ORA19C','/oradata/STANDBY'
*.nls_language='KOREAN'
*.nls_territory='KOR
*.open_cursors=300
*.pga_aggregate_target=996m
*.processes=320
*.remote_login_passwordfile='EXCLUSIVE'
*.sga_target=2986m
*.standby_file_management='auto'
*.undo_tablespace='UNDOTBS1'



패스워드 파일 DR서버로 복사(SCP)
orapwora19c 복사

복제용 임시 리스너 설정
#2 서버에 적용 listener.ora 및 기동
SID_LIST_LISTENER_ADG =
   (SID_LIST =
     (SID_DESC =
       (SID_NAME = standby)
       (ORACLE_HOME = /u01/app/oracle/product/19c/db_1)
     )
   )



LISTENER_ADG =
   (DESCRIPTION =
     (ADDRESS = (PROTOCOL = TCP)(HOST = ora19adg2)(PORT = 21525))
      (CONNECT_DATA =
       (SERVER = DEDICATED)
       (SERVICE_NAME = standby)
     )
   )

lsnrctl start listener_adg
-- tnsnames.ora설정 #1,#2 서버 모두 설정

LISTENER_ORA19CADG =
  (ADDRESS = (PROTOCOL = TCP)(HOST = ora19adg1)(PORT = 1521))


LISTENER_ADG =
  (DESCRIPTION =
  (ADDRESS = (PROTOCOL = TCP)(HOST = ora19adg2)(PORT = 21525))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = standby)
    )
  )

STANDBY =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = ora19adg2)(PORT = 21521))
      (FAIL_OVER = ON)
    )
    (CONNECT_DATA =
      (SERVICE_NAME = standby)
    )
  )

LISTENER_ADG1 =
  (ADDRESS = (PROTOCOL = TCP)(HOST = radg1)(PORT = 21521))
    )
    (CONNECT_DATA =
      (SID = primary)
    )
  )



primary =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = ora19adg1)(PORT = 21521))
      (FAIL_OVER = ON)
    )
    (CONNECT_DATA =
      (SERVICE_NAME = primary)
    )
  )


복제
1) active 서버 에서 복제
nomount 모드로 기동

sqlplus / as sysdba
startup nomount

[ora19c:/u01/app/oracle/product/19c/db_1/network/admin]> rman target sys/oracle@primary auxiliary sys/oracle@standby

Recovery Manager: Release 19.0.0.0.0 - Production on Thu Jun 1 17:01:41 2023
Version 19.13.0.0.0

Copyright (c) 1982, 2019, Oracle and/or its affiliates.  All rights reserved.

connected to target database: ORA19C (DBID=1191478324)
connected to auxiliary database: ORA19C (not mounted)

RMAN> run {
2> allocate channel prmy1 type disk;
3> allocate auxiliary channel stby1 type disk;
4> duplicate target database for standby from active database nofilenamecheck dorecover;
5>   }

using target database control file instead of recovery catalog
allocated channel: prmy1
channel prmy1: SID=23 device type=DISK

allocated channel: stby1
channel stby1: SID=10 device type=DISK

Starting Duplicate Db at 01-JUN-23
current log archived

contents of Memory Script:
{
   backup as copy reuse
   passwordfile auxiliary format  '/u01/app/oracle/product/19c/db_1/dbs/orapwstandby'   ;
}
executing Memory Script

Starting backup at 01-JUN-23
Finished backup at 01-JUN-23

contents of Memory Script:
{
   restore clone from service  'primary' standby controlfile;
}
executing Memory Script

Starting restore at 01-JUN-23

channel stby1: starting datafile backup set restore
channel stby1: using network backup set from service primary
channel stby1: restoring control file
channel stby1: restore complete, elapsed time: 00:00:01
output file name=/oradata/STANDBY/control01.ctl
output file name=/oradata/STANDBY/control02.ctl
Finished restore at 01-JUN-23

contents of Memory Script:
{
   sql clone 'alter database mount standby database';
}
executing Memory Script

sql statement: alter database mount standby database

contents of Memory Script:
{
   set newname for tempfile  1 to 
 "/oradata/STANDBY/temp01.dbf";
   switch clone tempfile all;
   set newname for datafile  1 to 
 "/oradata/STANDBY/system01.dbf";
   set newname for datafile  3 to 
 "/oradata/STANDBY/sysaux01.dbf";
   set newname for datafile  4 to 
 "/oradata/STANDBY/undotbs01.dbf";
   set newname for datafile  7 to 
 "/oradata/STANDBY/users01.dbf";
   restore
   from  nonsparse   from service 
 'primary'   clone database
   ;
   sql 'alter system archive log current';
}
executing Memory Script

executing command: SET NEWNAME

renamed tempfile 1 to /oradata/STANDBY/temp01.dbf in control file

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

Starting restore at 01-JUN-23

channel stby1: starting datafile backup set restore
channel stby1: using network backup set from service primary
channel stby1: specifying datafile(s) to restore from backup set
channel stby1: restoring datafile 00001 to /oradata/STANDBY/system01.dbf
channel stby1: restore complete, elapsed time: 00:00:25
channel stby1: starting datafile backup set restore
channel stby1: using network backup set from service primary
channel stby1: specifying datafile(s) to restore from backup set
channel stby1: restoring datafile 00003 to /oradata/STANDBY/sysaux01.dbf
channel stby1: restore complete, elapsed time: 00:00:15
channel stby1: starting datafile backup set restore
channel stby1: using network backup set from service primary
channel stby1: specifying datafile(s) to restore from backup set
channel stby1: restoring datafile 00004 to /oradata/STANDBY/undotbs01.dbf
channel stby1: restore complete, elapsed time: 00:00:01
channel stby1: starting datafile backup set restore
channel stby1: using network backup set from service primary
channel stby1: specifying datafile(s) to restore from backup set
channel stby1: restoring datafile 00007 to /oradata/STANDBY/users01.dbf
channel stby1: restore complete, elapsed time: 00:00:01
Finished restore at 01-JUN-23

sql statement: alter system archive log current
current log archived

contents of Memory Script:
{
   restore clone force from service  'primary' 
           archivelog from scn  2276859;
   switch clone datafile all;
}
executing Memory Script

Starting restore at 01-JUN-23

channel stby1: starting archived log restore to default destination
channel stby1: using network backup set from service primary
channel stby1: restoring archived log
archived log thread=1 sequence=13
channel stby1: restore complete, elapsed time: 00:00:01
channel stby1: starting archived log restore to default destination
channel stby1: using network backup set from service primary
channel stby1: restoring archived log
archived log thread=1 sequence=14
channel stby1: restore complete, elapsed time: 00:00:01
Finished restore at 01-JUN-23

datafile 1 switched to datafile copy
input datafile copy RECID=1 STAMP=1138381380 file name=/oradata/STANDBY/system01.dbf
datafile 3 switched to datafile copy
input datafile copy RECID=2 STAMP=1138381380 file name=/oradata/STANDBY/sysaux01.dbf
datafile 4 switched to datafile copy
input datafile copy RECID=3 STAMP=1138381380 file name=/oradata/STANDBY/undotbs01.dbf
datafile 7 switched to datafile copy
input datafile copy RECID=4 STAMP=1138381380 file name=/oradata/STANDBY/users01.dbf

contents of Memory Script:
{
   set until scn  2277311;
   recover
   standby
   clone database
    delete archivelog
   ;
}
executing Memory Script

executing command: SET until clause

Starting recover at 01-JUN-23

starting media recovery

archived log for thread 1 with sequence 13 is already on disk as file /arch/1_13_1138290295.arc
archived log for thread 1 with sequence 14 is already on disk as file /arch/1_14_1138290295.arc
archived log file name=/arch/1_13_1138290295.arc thread=1 sequence=13
archived log file name=/arch/1_14_1138290295.arc thread=1 sequence=14
media recovery complete, elapsed time: 00:00:01
Finished recover at 01-JUN-23

contents of Memory Script:
{
   delete clone force archivelog all;
}
executing Memory Script

deleted archived log
archived log file name=/arch/1_13_1138290295.arc RECID=1 STAMP=1138381378
deleted archived log
archived log file name=/arch/1_14_1138290295.arc RECID=2 STAMP=1138381379
Deleted 2 objects

Finished Duplicate Db at 01-JUN-23
released channel: prmy1
released channel: stby1

2) standby 서버에서 복제 실행

[standby:/oradata/STANDBY]> rman target sys/oracle@primary auxiliary sys/oracle@listener_adg

Recovery Manager: Release 19.0.0.0.0 - Production on Thu Jun 1 17:46:05 2023
Version 19.13.0.0.0

Copyright (c) 1982, 2019, Oracle and/or its affiliates.  All rights reserved.

connected to target database: ORA19C (DBID=1191478324)
connected to auxiliary database: ORA19C (not mounted)

RMAN> duplicate target database for standby from active database nofilenamecheck dorecover;

Starting Duplicate Db at 01-JUN-23
using target database control file instead of recovery catalog
allocated channel: ORA_AUX_DISK_1
channel ORA_AUX_DISK_1: SID=379 device type=DISK
current log archived

contents of Memory Script:
{
   backup as copy reuse
   passwordfile auxiliary format  '/u01/app/oracle/product/19c/db_1/dbs/orapwstandby'   ;
}
executing Memory Script

Starting backup at 01-JUN-23
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=18 device type=DISK
Finished backup at 01-JUN-23

contents of Memory Script:
{
   restore clone from service  'primary' standby controlfile;
}
executing Memory Script

Starting restore at 01-JUN-23
using channel ORA_AUX_DISK_1

channel ORA_AUX_DISK_1: starting datafile backup set restore
channel ORA_AUX_DISK_1: using network backup set from service primary
channel ORA_AUX_DISK_1: restoring control file
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:00:01
output file name=/oradata/STANDBY/control01.ctl
output file name=/oradata/STANDBY/control02.ctl
Finished restore at 01-JUN-23

contents of Memory Script:
{
   sql clone 'alter database mount standby database';
}
executing Memory Script

sql statement: alter database mount standby database

contents of Memory Script:
{
   set newname for tempfile  1 to 
 "/oradata/STANDBY/temp01.dbf";
   switch clone tempfile all;
   set newname for datafile  1 to 
 "/oradata/STANDBY/system01.dbf";
   set newname for datafile  3 to 
 "/oradata/STANDBY/sysaux01.dbf";
   set newname for datafile  4 to 
 "/oradata/STANDBY/undotbs01.dbf";
   set newname for datafile  7 to 
 "/oradata/STANDBY/users01.dbf";
   restore
   from  nonsparse   from service 
 'primary'   clone database
   ;
   sql 'alter system archive log current';
}
executing Memory Script

executing command: SET NEWNAME

renamed tempfile 1 to /oradata/STANDBY/temp01.dbf in control file

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

Starting restore at 01-JUN-23
using channel ORA_AUX_DISK_1

channel ORA_AUX_DISK_1: starting datafile backup set restore
channel ORA_AUX_DISK_1: using network backup set from service primary
channel ORA_AUX_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_AUX_DISK_1: restoring datafile 00001 to /oradata/STANDBY/system01.dbf
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:00:15
channel ORA_AUX_DISK_1: starting datafile backup set restore
channel ORA_AUX_DISK_1: using network backup set from service primary
channel ORA_AUX_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_AUX_DISK_1: restoring datafile 00003 to /oradata/STANDBY/sysaux01.dbf
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:00:08
channel ORA_AUX_DISK_1: starting datafile backup set restore
channel ORA_AUX_DISK_1: using network backup set from service primary
channel ORA_AUX_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_AUX_DISK_1: restoring datafile 00004 to /oradata/STANDBY/undotbs01.dbf
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:00:01
channel ORA_AUX_DISK_1: starting datafile backup set restore
channel ORA_AUX_DISK_1: using network backup set from service primary
channel ORA_AUX_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_AUX_DISK_1: restoring datafile 00007 to /oradata/STANDBY/users01.dbf
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:00:01
Finished restore at 01-JUN-23

sql statement: alter system archive log current
current log archived

contents of Memory Script:
{
   restore clone force from service  'primary' 
           archivelog from scn  2283316;
   switch clone datafile all;
}
executing Memory Script

Starting restore at 01-JUN-23
using channel ORA_AUX_DISK_1

channel ORA_AUX_DISK_1: starting archived log restore to default destination
channel ORA_AUX_DISK_1: using network backup set from service primary
channel ORA_AUX_DISK_1: restoring archived log
archived log thread=1 sequence=21
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:00:02
channel ORA_AUX_DISK_1: starting archived log restore to default destination
channel ORA_AUX_DISK_1: using network backup set from service primary
channel ORA_AUX_DISK_1: restoring archived log
archived log thread=1 sequence=22
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:00:01
Finished restore at 01-JUN-23

datafile 1 switched to datafile copy
input datafile copy RECID=1 STAMP=1138384007 file name=/oradata/STANDBY/system01.dbf
datafile 3 switched to datafile copy
input datafile copy RECID=2 STAMP=1138384007 file name=/oradata/STANDBY/sysaux01.dbf
datafile 4 switched to datafile copy
input datafile copy RECID=3 STAMP=1138384007 file name=/oradata/STANDBY/undotbs01.dbf
datafile 7 switched to datafile copy
input datafile copy RECID=4 STAMP=1138384007 file name=/oradata/STANDBY/users01.dbf

contents of Memory Script:
{
   set until scn  2283480;
   recover
   standby
   clone database
    delete archivelog
   ;
}
executing Memory Script

executing command: SET until clause

Starting recover at 01-JUN-23
using channel ORA_AUX_DISK_1

starting media recovery

archived log for thread 1 with sequence 21 is already on disk as file /arch/1_21_1138290295.arc
archived log for thread 1 with sequence 22 is already on disk as file /arch/1_22_1138290295.arc
archived log file name=/arch/1_21_1138290295.arc thread=1 sequence=21
archived log file name=/arch/1_22_1138290295.arc thread=1 sequence=22
media recovery complete, elapsed time: 00:00:01
Finished recover at 01-JUN-23

contents of Memory Script:
{
   delete clone force archivelog all;
}
executing Memory Script

released channel: ORA_DISK_1
released channel: ORA_AUX_DISK_1
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=18 device type=DISK
deleted archived log
archived log file name=/arch/1_21_1138290295.arc RECID=1 STAMP=1138384004
deleted archived log
archived log file name=/arch/1_22_1138290295.arc RECID=2 STAMP=1138384006
Deleted 2 objects

Finished Duplicate Db at 01-JUN-23


 

오라클 single adg 네트워크 설정

#1.listener.ora ############################################################################# LISTENER1 = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = ora19adg1)(PORT = 1529)) ) LISTENER2 = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = radg1)(PORT

theone79.tistory.com

 

 

반응형
Posted by [PineTree]
ORACLE/INSTALL2023. 6. 14. 16:12
반응형

#1.listener.ora 
#############################################################################
LISTENER1 =
 (DESCRIPTION =
  (ADDRESS = (PROTOCOL = TCP)(HOST = ora19adg1)(PORT = 1529))
)

LISTENER2 =
 (DESCRIPTION =
  (ADDRESS = (PROTOCOL = TCP)(HOST = radg1)(PORT = 9999))
)
#############################################################################
#2.listener.ora
#############################################################################
LISTENER1 =
 (DESCRIPTION =
  (ADDRESS = (PROTOCOL = TCP)(HOST = ora19adg2)(PORT = 1529))
)

LISTENER2 =
 (DESCRIPTION =
  (ADDRESS = (PROTOCOL = TCP)(HOST = radg2)(PORT = 9999))
)


#############################################################################
#1,#2 서버에 모두 적용
alter system set local_listener='LISTENER1','LISTENER2' scope=both;
#############################################################################

#1.tnsnames.ora

LISTENER1 =
  (ADDRESS = (PROTOCOL = TCP)(HOST = ora19adg1)(PORT = 1529))

LISTENER2 =
  (ADDRESS = (PROTOCOL = TCP)(HOST = radg1)(PORT = 9999))
  
SER1 =
  (DESCRIPTION =
  (ADDRESS = (PROTOCOL = TCP)(HOST = ora19adg1)(PORT = 1529))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SID = ora19c)
    )
  )

SER2 =
  (DESCRIPTION =
  (ADDRESS = (PROTOCOL = TCP)(HOST = ora19adg2)(PORT = 1529))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SID = standby)
    )
  )

primary   =
  (DESCRIPTION =
  (ADDRESS = (PROTOCOL = TCP)(HOST = radg1)(PORT = 1529))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = primary)
    )
  )

standby   =
  (DESCRIPTION =
  (ADDRESS = (PROTOCOL = TCP)(HOST = radg2)(PORT = 1529))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = standby)
    )
~     

#############################################################################
#2.tnsnames.ora

LISTENER1 =
  (ADDRESS = (PROTOCOL = TCP)(HOST = ora19adg2)(PORT = 1529))

LISTENER2 =
  (ADDRESS = (PROTOCOL = TCP)(HOST = radg2)(PORT = 9999))


SER1 =
  (DESCRIPTION =
  (ADDRESS = (PROTOCOL = TCP)(HOST = ora19adg1)(PORT = 1529))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SID = ora19c)
    )
  )

SER2 =
  (DESCRIPTION =
  (ADDRESS = (PROTOCOL = TCP)(HOST = ora19adg2)(PORT = 1529))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SID = standby)
    )
  )

primary   =
  (DESCRIPTION =
  (ADDRESS = (PROTOCOL = TCP)(HOST = radg1)(PORT = 1529))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = primary)
    )
  )

standby   =
  (DESCRIPTION =
  (ADDRESS = (PROTOCOL = TCP)(HOST = radg2)(PORT = 1529))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = standby)
    )
~     


#############################################################################
#2 서버에서 ADG 기동

alter database recover managed standby database cancel;
alter database flashback on;
alter database recover managed standby database using current logfile disconnect;

모니터링
COLUMN NAME FORMAT A24
COLUMN VALUE FORMAT A16     
COLUMN DATUM_TIME FORMAT A24
SELECT NAME, VALUE, DATUM_TIME FROM V$DATAGUARD_STATS;


 

오라클 single adg 초기 설정 (1)

-- /etc/hosts 192.168.219.59 ora19adg1 192.168.219.69 ora19adg2 192.168.219.51 ora19c 192.168.219.57 ora19c-ogg 192.168.56.108 radg1 192.168.56.103 radg2 #1 *.audit_file_dest='/u01/app/oracle/admin/ora19c/adump' *.audit_trail='db' *.compatible='19.0.0' *.c

theone79.tistory.com

 

반응형

'ORACLE > INSTALL' 카테고리의 다른 글

oracle 19c Silent install linux  (0) 2023.07.26
오라클 single adg 초기 설정 (1)  (0) 2023.06.14
oracle seha 설치 후 relocate 실패  (2) 2022.09.30
오라클 11G upgrade관련문서  (0) 2013.10.29
oracle silent install  (0) 2012.05.11
Posted by [PineTree]
ORACLE/INSTALL2022. 9. 30. 15:41
반응형

오라클 linux 8에 seha설치 후 전환 테스트 실패

PRKF-1421 : cannot relocate database "seha8"; invalid database type

[seha8:/home/oracle]>  crsctl stat res -t
--------------------------------------------------------------------------------
Name           Target  State        Server                   State details       
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.LISTENER.lsnr
               ONLINE  ONLINE       seha8a                   STABLE
               ONLINE  ONLINE       seha8b                   STABLE
ora.chad
               ONLINE  ONLINE       seha8a                   STABLE
               ONLINE  ONLINE       seha8b                   STABLE
ora.net1.network
               ONLINE  ONLINE       seha8a                   STABLE
               ONLINE  ONLINE       seha8b                   STABLE
ora.ons
               ONLINE  ONLINE       seha8a                   STABLE
               ONLINE  ONLINE       seha8b                   STABLE
ora.proxy_advm
               OFFLINE OFFLINE      seha8a                   STABLE
               OFFLINE OFFLINE      seha8b                   STABLE
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.ASMNET1LSNR_ASM.lsnr(ora.asmgroup)
      1        ONLINE  ONLINE       seha8a                   STABLE
      2        ONLINE  ONLINE       seha8b                   STABLE
ora.DATA.dg(ora.asmgroup)
      1        ONLINE  ONLINE       seha8a                   STABLE
      2        ONLINE  ONLINE       seha8b                   STABLE
ora.LISTENER_SCAN1.lsnr
      1        ONLINE  ONLINE       seha8a                   STABLE
ora.asm(ora.asmgroup)
      1        ONLINE  ONLINE       seha8a                   Started,STABLE
      2        ONLINE  ONLINE       seha8b                   Started,STABLE
ora.asmnet1.asmnetwork(ora.asmgroup)
      1        ONLINE  ONLINE       seha8a                   STABLE
      2        ONLINE  ONLINE       seha8b                   STABLE
ora.cvu
      1        ONLINE  ONLINE       seha8a                   STABLE
ora.qosmserver
      1        ONLINE  ONLINE       seha8a                   STABLE
ora.scan1.vip
      1        ONLINE  ONLINE       seha8a                   STABLE
ora.seha8.db
      1        ONLINE  ONLINE       seha8a                   Open,HOME=/u01/app/o
                                                             racle/product/19c/db
                                                             _1,STABLE
ora.seha8a.vip
      1        ONLINE  ONLINE       seha8a                   STABLE
ora.seha8b.vip
      1        ONLINE  ONLINE       seha8b                   STABLE
--------------------------------------------------------------------------------

relocate 2번째 노드로 전환 시킴

[seha8:/home/oracle]>  srvctl relocate database -d seha8 -n seha8a -w 1 -v
PRKF-1421 : cannot relocate database "seha8"; invalid database type

설정 확인

[seha8:/home/oracle]>  srvctl config database -db seha8
Database unique name: seha8
Database name: seha8
Oracle home: /u01/app/oracle/product/19c/db_1
Oracle user: oracle
Spfile: +DATA/SEHA8/PARAMETERFILE/spfile.267.1116773743
Password file: 
Domain: 
Start options: open
Stop options: immediate
Database role: PRIMARY
Management policy: AUTOMATIC
Server pools: 
Disk Groups: DATA
Mount point paths: 
Services: 
Type: SINGLE
OSDBA group: dba
OSOPER group: dba
Database instance: seha8
Configured nodes: seha8a   <<======2번 노드가 나오지 않음
CSS critical: no
CPU count: 0
Memory target: 0
Maximum memory: 0
Default network number for database services: 
Database is administrator managed

2번 노드 등록

[seha8:/home/oracle]>  srvctl modify database -db seha8 -node seha8a,seha8b

등록 확인

[seha8:/home/oracle]>  srvctl config database -db seha8
Database unique name: seha8
Database name: seha8
Oracle home: /u01/app/oracle/product/19c/db_1
Oracle user: oracle
Spfile: +DATA/SEHA8/PARAMETERFILE/spfile.267.1116773743
Password file: 
Domain: 
Start options: open
Stop options: immediate
Database role: PRIMARY
Management policy: AUTOMATIC
Server pools: 
Disk Groups: DATA
Mount point paths: 
Services: 
Type: SINGLE
OSDBA group: dba
OSOPER group: dba
Database instance: seha8
Configured nodes: seha8a,seha8b       2번 노드 추가 확인
CSS critical: no
CPU count: 0
Memory target: 0
Maximum memory: 0
Default network number for database services: 
Database is administrator managed

서버 전환

[seha8:/home/oracle]>  srvctl relocate database -d seha8 -n seha8b -w 1 -v

서버 전환 확인

[seha8:/home/oracle]>  crsctl stat res -t
--------------------------------------------------------------------------------
Name           Target  State        Server                   State details       
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.LISTENER.lsnr
               ONLINE  ONLINE       seha8a                   STABLE
               ONLINE  ONLINE       seha8b                   STABLE
ora.chad
               ONLINE  ONLINE       seha8a                   STABLE
               ONLINE  ONLINE       seha8b                   STABLE
ora.net1.network
               ONLINE  ONLINE       seha8a                   STABLE
               ONLINE  ONLINE       seha8b                   STABLE
ora.ons
               ONLINE  ONLINE       seha8a                   STABLE
               ONLINE  ONLINE       seha8b                   STABLE
ora.proxy_advm
               OFFLINE OFFLINE      seha8a                   STABLE
               OFFLINE OFFLINE      seha8b                   STABLE
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.ASMNET1LSNR_ASM.lsnr(ora.asmgroup)
      1        ONLINE  ONLINE       seha8a                   STABLE
      2        ONLINE  ONLINE       seha8b                   STABLE
ora.DATA.dg(ora.asmgroup)
      1        ONLINE  ONLINE       seha8a                   STABLE
      2        ONLINE  ONLINE       seha8b                   STABLE
ora.LISTENER_SCAN1.lsnr
      1        ONLINE  ONLINE       seha8a                   STABLE
ora.asm(ora.asmgroup)
      1        ONLINE  ONLINE       seha8a                   Started,STABLE
      2        ONLINE  ONLINE       seha8b                   Started,STABLE
ora.asmnet1.asmnetwork(ora.asmgroup)
      1        ONLINE  ONLINE       seha8a                   STABLE
      2        ONLINE  ONLINE       seha8b                   STABLE
ora.cvu
      1        ONLINE  ONLINE       seha8a                   STABLE
ora.qosmserver
      1        ONLINE  ONLINE       seha8a                   STABLE
ora.scan1.vip
      1        ONLINE  ONLINE       seha8a                   STABLE
ora.seha8.db
      1        ONLINE  ONLINE       seha8b                   Open,HOME=/u01/app/o
                                                                                    racle/product/19c/db
                                                                                     _1,STABLE
ora.seha8a.vip
      1        ONLINE  ONLINE       seha8a                   STABLE
ora.seha8b.vip
      1        ONLINE  ONLINE       seha8b                   STABLE
--------------------------------------------------------------------------------

원래 대로

[seha8:/home/oracle]>  srvctl relocate database -d seha8 -n seha8a -w 1 -v

===================================================================

ora.seha8.db
      1        ONLINE  ONLINE       seha8b                   Open,HOME=/u01/app/o
                                                             racle/product/19c/db
                                                             _1,STOPPING
ora.seha8a.vip

===================================================================

ora.seha8.db
      1        ONLINE  OFFLINE      seha8a                   Instance Shutdown,ST
                                                                                   ARTING

===================================================================

ora.seha8.db
      1        ONLINE  ONLINE       seha8a                   Open,HOME=/u01/app/o
                                                                                    racle/product/19c/db
                                                                                     _1,STABLE

===================================================================

전환 완료

반응형
Posted by [PineTree]
ORACLE/INSTALL2013. 10. 29. 16:02
반응형

 

11g NEWFEATURE.(upgrade).pdf

 

4-oracle-db-11g-best-practice-forum.pdf

 

반응형
Posted by [PineTree]
ORACLE/INSTALL2012. 5. 11. 10:57
반응형

dbworks 에서 받은 파일입니다.

Oracle Silent Install Guide.pdf

반응형
Posted by [PineTree]
ORACLE/INSTALL2012. 1. 10. 23:46
반응형
 
작성자 : 박상수
작성일자 : 2010.12.08
작업환경 : VMware7 [ RHEL3 , Oracle 10g 기준 ]
참고자료 : 서진수 샘, 정성재 샘, 리눅스공유메모리, 보안구성설정(PAM&Ulimit)



오라클의 공유 메모리는 커널 작업을 수반하지 않으며 프로세스 간의 데이터 복제 작업이 불필요 하기 때문에 , IPC(inter-Process Communication)를 위한 가장 빠른 방법을 선호 되고 있습니다.
오라클은 인스턴스 구조를 보면 SGA(System Global Area)와 백 그라운드 프로세스로 구성 되어 있습니다. 여기에서 SGA는 Shared Pool, DB Cache, Redo Log Buffer  등의 저장에 활용되므로 SGA 크기에 따라 오라클 성능이 크게 달라집니다.

그럼 오라클을 설치하기 전에 Linux에서 사용하는 커널 매개변수와 Shell Limit에 대해서 알아 보도록 하겠습니다.


1. Linux 커널 매개변수의 설정

다른 UNIX 시스템과 달리, Linux 운영체제에서는 시스템이 실행 중인 상태에서 대부분의 커널 매개변수를 수정할 수 있습니다. 커널 매개변수를 변경한 뒤에 시스템을 리부팅할 필요도 없습니다. Oracle Database 10g가 요구하는 커널 매개변수 설정할 수 있으나 시스템에 이미 커널 메게변수가 높은 수치로 설정 되어있을 경우에는 변경 하지 마시기 바랍니다.

[ 매개변수 - kernel.shmmax ] SHMMAX 매개변수는 공유 메모리 세그먼트의 최대 크기(바이트 단위)를 정의하는데 사용됩니다. 오라클 SGA 메모리로 구성되며, SHMMAX가 올바르게 설정되지 않을 경우 SGA의 크기가 제약될 수도 있습니다. 따라서 SGA의 크기보다 작지 않도록 SHMMAX를 설정합니다.
총 10GB의 메모리에서 오라클이 사용할 수 있는 최대 한도를 정의 하는 것을 의미 합니다.
먄약 SHMMAX 매개변수가 잘못 설정될 경우에는 아래와 같은 오라클 에러 메시지가 발생 됩니다.

ORA-27123: unable to attach to shared memory segment

기본적으로 SHMMAX 기본 값은 32MB 입니다. SGA로 사용하기에는 너무 적은 공간이기 때문에 적당한 크기로 변경 해야 합니다.
[2010-12-09 03:26:18]-[root@calmmass:/proc/sys/kernel]
# cat /proc/sys/kernel/shmmax |sed -e :a -e 's/\(.*[0-9]\)\([0-9]\{3\}\)/\1.\2/;ta'
33.554.432

[ 매개변수 - kernel.shmall ]
SHMALL 커널 매개변수는 특정 시점에 시스템에서 사용 가능한 공유 메모리의 최대 크기(페이지 단위)를 설정하는데 사용됩니다. 따라서 이 매개변수는 최소한 아래 값보다 커야 합니다.
ceil(SHMAX/PAGE_SIZE)
우선 페이지 사이즈를 확인 해보겠습니다. Red Hat Linux의 페이지 사이즈는 기본적으로 4,096 바이트 입니다.
[2010-12-09 02:51:29]-[root@calmmass:~]
# getconf PAGESIZE |sed -e :a -e 's/\(.*[0-9]\)\([0-9]\{3\}\)/\1.\2/;ta'
4.096

SHMALL의 디폴트 사이즈는 아래와 같습니다. sed를 이용해서 3자리로 구분한 결과 2MB를 사용합니다.
# cat /proc/sys/kernel/shmall |sed -e :a -e 's/\(.*[0-9]\)\([0-9]\{3\}\)/\1.\2/;ta'
2.097.152

[ 매개변수 - kernel.shmmni ] SHMMNI는 공유 메모리 식별자의 개수를 의미 하며 권장 값은 100 이상 으로 설정하셔야 합니다. 아래와 같이 확인 하시기 바랍니다.
[2010-12-09 03:26:07]-[root@calmmass:/proc/sys/kernel]
# cat shmmni
4096

[ 매개변수 - kernel.sem ] 세마포어(Semaphore)란 공유 리소스의 사용 과정에서 프로세스(프로세스 내 쓰레드) 간의 동기화를 위해 사용되는 일종의 카운터(counter) 입니다. 애플리케이션의 세마포어를 이용하면, 운영 체제는 SET를 통해 세마포어를 지원하게 됩니다.
그럼 세마포어 설정 값을 먼저 확인 해보겠습니다.
[2010-12-09 03:39:32]-[root@calmmass:/proc/sys/kernel]
# ipcs -lm
------ Shared Memory Limits --------
max number of segments = 4096
max seg size (kbytes) = 32768
max total shared memory (kbytes) = 8388608
min seg size (bytes) = 1

SEM 매개변수는 세마포어 최대값을 조정 가능하며 의미는 아래와 같습니다.
의미 : {배열당 최대 SEM 수}{최대SEM시스템넓이}{SEMOP호출당최대OP수}{최대배열수} 
[2010-12-09 03:37:24]-[root@calmmass:/proc/sys/kernel]
# cat /proc/sys/kernel/sem |sed -e :a -e 's/\(.*[0-9]\)\([0-9]\{3\}\)/\1.\2/;ta'
250 32.000 32 128
  1  2         3   4 (필드 라고 정의 하겠습니다.)
1 필드 값(250) : SEMMSL 매개변수는 세미포어 set 당 세마포어의 최대 개수를 정의합니다. 오라클을 예로 init[SID].ora 파일(pfile, spfile 동일)의 PROCESS 인스턴스 매개변수의 (전체 데이터베이스 중) 최대값에 10을 더한 값을 사용할 것을 권장하고 있습니다. 그래서 100이상의 값을 정의하는 것을 권장 합니다.

2 필드 값(32.000) : SEMMNI 매개변수는 전체 Linux 시스템의 세마포어 set의 개수를 정의 합니다. 오라클에서는 100이상의 값을 정의하는 것을 권장합니다.

3 필드 값(32) : SEMMNS 매개변수는 전체 Linux 시스템의 ("세마포어 set"이 아닌) 세마포어의 최대 개수를 정의 합니다. 오라클은 인스턴스 매개변수의 값을 모두 더한 뒤, 가장 큰 Processes값을 두 차례 더하고, 마지막으로 각 데이터베이스 별로 10을 더한 값을 SEMMNS를 설정하도록 권장 합니다.

4. 필드 값(128) : SEMOPM 매개변수는 semop 시스템 호출(system call) 별로 수행될 수 있는 세마포어 작업의 수를 설정하는데 사용됩니다.SEMOPM을 SEMMSL과 동일하게 설정하는 것을 권장합니다. 오라클에서는 100이상의 값으로 설정할 것을 권장 하고 있습니다.


[ 매개변수 - fs.file-max ] Red Hat Linux 서버를 구성하는 과정에서, 사용 가능한 파일 핸들(file handle)의 수가 충분한지 확인하는 것을 매우 중요합니다. 파일 핸들의 최대 개수 설정에 따라 Linux 시스템에서 동시에 오픈할 수 있는 파일의 수가 달라지게 됩니다.
오라클은 전체 시스템의 파일 핸들 수를 최소 65536개 이상으로 설정 할 것을 권장 하고 있습니다.
전체 시스템에서 사용 가능한 파일 핸들의 최대 값을 확인 해보겠습니다.
[2010-12-09 04:06:03]-[root@calmmass:/proc/sys/fs]
# cat /proc/sys/fs/file-max |sed -e :a -e 's/\(.*[0-9]\)\([0-9]\{3\}\)/\1.\2/;ta'
104.857

[ 매개변수 - net.Ipv4.Ip_local_port_range ] 이부분은 새 접속에서 사용할 수 있는 포트의 사용 가능 범위를 확장하는 의미를 가지고 있습니다.
시스템에서 사용하는 포트번호는 /etc/services 파일에 구성 되어있습니다.
[2010-12-09 04:06:24]-[root@calmmass:/proc/sys/fs]
# tail /etc/services
binkp  24554/udp   # Binkley
asp  27374/tcp   # Address Search Protocol
asp  27374/udp   # Address Search Protocol
.. 생략 ..

매개변수의 값을 확인 해보겠습니다. 오라클은 1024 ~ 65000까지 허용하도록 권장 합니다.
[2010-12-09 04:14:10]-[root@calmmass:/proc/sys/net/ipv4]
# cat /proc/sys/net/ipv4/ip_local_port_range |sed -e :a -e 's/\(.*[0-9]\)\([0-9]\{3\}\)/\1.\2/;ta'
32.768 61.000

[ 매개변수 - net.core.rmem_default, net.core.rmem_max ] 일반적인 경우의 대용량 Serving을 위한 설정 합니다. 오라클은 기본적으로 대용량 데이터베이스를 기준으로 하기 때문에 기본 설정 된 값을 변경해야 합니다. 아래와 같은 경우에는 기본 설정 값입니다.
[2010-12-09 04:18:03]-[root@calmmass:/proc/sys/net/core]
# cat /proc/sys/net/core/rmem_default |sed -e :a -e 's/\(.*[0-9]\)\([0-9]\{3\}\)/\1.\2/;ta'
65.535
[2010-12-09 04:18:29]-[root@calmmass:/proc/sys/net/core]
# cat /proc/sys/net/core/rmem_max |sed -e :a -e 's/\(.*[0-9]\)\([0-9]\{3\}\)/\1.\2/;ta'
131.071

[ 매개변수 - net.core.wmem_default, net.core.wmem_max] 소켓 출력 큐의 기본 값과 최대 값을 조정하기 위한 매개변수 입니다. 일반적인 경우의 대용량 Serving을 위한 설정이므로 역시 rmem_default, rmem_max의 값과 동일하게 구성해는 것이 바랍직 합니다. 기본적으로 설정 되어있는 값을 확인 해보겠습니다.
# cat /proc/sys/net/core/wmem_default |sed -e :a -e 's/\(.*[0-9]\)\([0-9]\{3\}\)/\1.\2/;ta'
65.535
[2010-12-09 04:23:05]-[root@calmmass:/proc/sys/net/core]
# cat /proc/sys/net/core/wmem_max |sed -e :a -e 's/\(.*[0-9]\)\([0-9]\{3\}\)/\1.\2/;ta'
131.071

[ 커널 매개변수 반영 ]
이상으로 매개변수의 용도와 설정값을 확인 하는 방법을 실습 했습니다.
이번에는 커널 매개변수를 오라클 기준으로 변경해서 반영 해보도록 하겠습니다. 기본적으로는 위에 나와있는 설정 파일에 값을 변경 해도 되며, sysctl -w [매개변수명]=value 명령어를 이용 할 수 있습니다. 하지만 이번 문서에서는 리눅스의 장점을 살려 환경설정 파일로 매개변수를 반영 하겠습니다.

오라클(바로가기) 설치 메뉴얼에는 아래와 같이 설정 하길 권장합니다.
cat >> /etc/sysctl.conf <<EOF
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
EOF
/sbin/sysctl -p

파라매터를 더 추가해보겠습니다. (강추 입니다.)
kernel.shmmax=536870912
kernel.shmmni=4096
kernel.shmall=2097152
kernel.sem=250 32000 100 128
fs.file-max=65536
net.ipv4.ip_local_port_range=1024 65000
net.core.rmem_default=262144
net.core.rmem_max=262144
net.core.wmem_default=262144
net.core.wmem_max=262144



2. Shell Limit 설정

오라클은 Linux 계정 별로 실행되는 프로세스와 열린 파일의 수를 제한하는 것을 권장합니다. 이를 위해, root 계정에서 아래 내용을 /etc/security/limits.conf 설정파일에 oracle10g 라는 특정 프로그램을 제어하는 방법을 설명 하겠습니다.

[참고] /lib/security/pam_limits.so 모듈이 사용할 설정 파일이 /etc/security/limits.conf 파일 입니다. 그중에서 각각 설정에 대해서 아래와 같이 정리 하였습니다.
domain : 제한을 할 대상으로써 사용자 이름이나 그룹 이름, 그리고 와일드 문자를 사용할 수 있습니다.
type : 강하게 제한할 것인지 아니면 어느 정도 여유를 줄 것인지 결정을 합니다.(soft, hard)
item :  제한을 할 항목입니다.
    - core : core 파일 사이즈(KB)
    - data : 최대 데이터 크기(KB)
    - fsize : 최대 파일 사이즈(KB)
    - memlock : 최대 locked-in-memory 주소 공간(KB)
    - nofile : 한번에 열 수 있는 최대 파일 수
    - rss : 최대 resident set size(KB)
    - stack : 최대 스택 사이즈(KB)
    - cpu : 최대 CPU 점유 시간(MIN)
    - nproc : 최대 프로세스 개수
    - as : 주소 공간 제한
    - maxlogins : 동시 로그인 최대 수
    - priority : 사용자 프로세스가 실행되는 우선 순위

[참고] ulimit를 이용하여 리소스를 제한하는 방법입니다. ulimit는 PAM과는 조금 다르게 root계정까지도 제한을 할 수 있습니다. 여기에서 제한에는 두가지 종류가 있습니다.
Soft Limit : 새로운 프로그램이 생성되면 디폴트로 적용되는 제한
Hard Limit : Soft Limit에서 최대 늘릴 수 있는 제한
단, Hard Limit는 root 유저에 의해 조정 가능하지만 무한히 늘리 수 없기 때문에 커널에서 해당 설정 값을 조정 후 늘릴 수 있습니다.


[ oracle10g soft  nproc 2047 ] oracle10g 라는 프로그램이 처음 수행시 기본값으로 사용하는 프로세스는 최대 2047로 제한한다는 의미 입니다.
[ oracle10g hard nproc 16384 ] oracld10g 라는 프로그램이 수행시 사용하는 프로세스는 최대 16384로  제한 한다는 의미 입니다.
[ oracle10g soft  nofile 1024 ] oracle10g 라는 프로그램이 처음 수행시 기본값으로 사용하는 파일은 최대 1024로 제한 한다는 의미입니다.
[ oracle10g hard nofile 65536 ] oracle10g 라는 프로그램이 수행시 사용하는 파일은 최대 65536으로 제한 한다는 의미 입니다.


[의문점] 어떤 방식으로 해야 이상적인 설정 일까요?
이상적인 설정은 실제로 oracle database가 가동 되고 나서 개수 제한으로 에러가 발생 하지 않게 하는 것이 가장 이상적인 설정이라고 볼 수 있습니다. 그래서 최대한 해당 프로세스의 개수가 어느정도인지 파일의 개수는 평균적으로 어느정도 사용하는지 파악후 설정 해주는것이 바람직합니다.

그럼 특정 프로그램이 사용하는 프로세스의 개수를 테스트 해보도록 하겠습니다.
[2010-12-09 05:38:43]-[root@calmmass:/proc/sys/net/core]
# lsof -p 3094 |wc -l
    1370

열려있는 파일 개수 확인 하는 방법
[2010-12-09 05:39:01]-[root@calmmass:/proc/sys/net/core]
# sysctl -a |grep file
fs.file-max = 104857
fs.file-nr = 1995 472 104857

마지막으로 /etc/security/limits.conf 리소스 제한 설정파일에 oracle 설치시 필요한 설정 내역은 아래와 같습니다.
oracle10g soft nproc 2047
oracle10g hard nproc 16384
oracle10g soft nofile 1024
oracle10g hard nofile 65536




Oracle을 각 OS별 설치하면서 느낀 점은 위와 같은 설정 내역이 조금씩 다르다는 점입니다.
그렇다면 이러한 설정 내역을 모두 외우는것은 무의미하고 어떤 작업에 의해서 설정을 해야 하는지를 먼저 파악하는 것이 우선이라고 생각 합니다.
각 설정 파일의 역활과 오라클이 구동 되었을때 사용하는 용도를 보면 조금 접근하기기 편하지 않을까 생각 해봅니다.
반응형

'ORACLE > INSTALL' 카테고리의 다른 글

오라클 11G upgrade관련문서  (0) 2013.10.29
oracle silent install  (0) 2012.05.11
오라 클 9.2.0.1에서 Patch 셋 올리기  (0) 2010.05.31
oracle enterprise manager 한글 버튼 깨짐 문제  (0) 2010.01.11
RAC 패치 절차  (0) 2009.12.15
Posted by [PineTree]