프린트 하기

OS환경 : Oracle Linux 7.6 (64bit)

 

DB 환경 : Oracle Database 11.2.0.4

 

grid 설치는 아래 게시물 참조

Oracle Linux 7.6에 Oracle 11gR2 Raw Device RAC 설치 가이드_Part 2(https://positivemh.tistory.com/1226)

 

방법 : Oracle Linux 7.6에 Oracle 11gR2 Raw Device RAC 설치 가이드_Part 3

1번 노드 hostname : oel11db1
2번 노드 hostname : oel11db2

 

*본문에 2번노드 표시가 없으면 모두 1번노드에서 작업

 

 

설치파일은 아래 4가지 파일을 이용함

GRID : p13390677_112040_Linux-x86-64_3of7.zip
DB : 
p13390677_112040_Linux-x86-64_1of7.zip, p13390677_112040_Linux-x86-64_2of7.zip

Patch p18370031_112040_Linux-x86-64.zip(linux 7에 grid 설치시 필수 패치)

참고 : 11gR2 Grid install – Error: ohasd failed to start the Clusterware. ( https://positivemh.tistory.com/122 )

 

 

11g부터 raw device 설치를 공식적으로 지원하지 않기때문에 dbca시 스크립트를 생성한뒤 그 스크립트를 실행시키는 방식으로 db를 구성해야함

 

 

DB 소프트웨어(엔진) 설치

db 설치 미디어 압축 해제 및 runinstaller 실행

1
2
3
4
5
6
7
8
9
10
11
12
$ cd /app/oracle/media
$ unzip p13390677_112040_Linux-x86-64_1of7.zip
$ unzip p13390677_112040_Linux-x86-64_2of7.zip
$ cd database
$ export CV_ASSUME_DISTID=OEL7.8
$ ./runInstaller
Starting Oracle Universal Installer...
 
Checking Temp space: must be greater than 120 MB.   Actual 17529 MB    Passed
Checking swap space: must be greater than 150 MB.   Actual 12007 MB    Passed
Checking monitor: must be configured to display at least 256 colors.    Actual 16777216    Passed
Preparing to launch Oracle Universal Installer from /tmp/OraInstall2025-06-06_09-13-48PM. Please wait ...

 

 

체크 해제 후 Next

 

 

Skip Software Update 선택

 

 

Install database software only 선택

 

 

Oracle Real Application Cluster database installation 선택 

1,2 선택(SSH connectivity는 grid 설치시 진행했으므로 하지않음) 

 

 

English 선택

 

 

Enterprise Edition 선택 후 Select Options 선택

 

 

옵션 파티셔닝 제외하고 모두 해제

 

 

oracle base 지정

 

 

group 는 모두 dba 로 지정

 

 

사전 요구사항 체크중

 

 

SCAN 관련메세지는 SCAN IP가 DNS에 등록되어 있지 않아서 발생한 문제 모두 Ignore

 

 

Yes 선택

 

 

response 파일이 필요하다면 따로 저장 후 Install 

 

 

db 엔진 설치중

 

 

에러 발생

 

 

설치중인 노드의 $ORACLE_HOME/sysman/lib/ins_emagent.mk 파일 수정

1
2
3
4
5
$ vi $ORACLE_HOME/sysman/lib/ins_emagent.mk
기존
$(MK_EMAGENT_NMECTL)
변경
$(MK_EMAGENT_NMECTL) -lnnz11

 

 

이후 retry 선택하여 진행

참고 : Error in invoking target ‘agent nmhs’ of makefile ‘$ORACLE_HOME/sysman/lib/ins_emagent.mk’. ( https://positivemh.tistory.com/39 )

 

 

root.sh 스크립트 복사

 

 

각 노드에서 root 유저로 실행

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
32
33
34
35
36
37
#1번 노드
/app/oracle/product/11g/root.sh
Performing root user operation for Oracle 11g
 
The following environment variables are set as:
    ORACLE_OWNER= oracle
    ORACLE_HOME=  /app/oracle/product/11g
 
Enter the full pathname of the local bin directory: [/usr/local/bin]:
The contents of "dbhome" have not changed. No need to overwrite.
The contents of "oraenv" have not changed. No need to overwrite.
The contents of "coraenv" have not changed. No need to overwrite.
 
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Finished product-specific root actions.
 
#2번 노드
/app/oracle/product/11g/root.sh
Performing root user operation for Oracle 11g
 
The following environment variables are set as:
    ORACLE_OWNER= oracle
    ORACLE_HOME=  /app/oracle/product/11g
 
Enter the full pathname of the local bin directory: [/usr/local/bin]:
The contents of "dbhome" have not changed. No need to overwrite.
The contents of "oraenv" have not changed. No need to overwrite.
The contents of "coraenv" have not changed. No need to overwrite.
 
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Finished product-specific root actions.

 

 

스크립트 수행 후 OK

 

 

Close

db 엔진 설치 완료

 

 

DB 생성

dbca 진행

1
2
# su - oracle
$ dbca

 

 

RAC database 선택

 

 

Create Database 선택

 

 

Custom Database 선택

 

 

SID 입력 및 Select All 선택

 

 

EM 체크 해제

 

 

Auto Task 해제

 

 

패스워드 입력

 

 

데이터 저장영역 선택(+IMSIOCR)

 

 

FRA, 아카이브 사용하지 않음

 

 

componets 필요시 선택 후 Next, 나는 모두 체크해제함

 

 

Standard Database Components도 모두 해제함

 

 

메모리 설정

 

 

Character sets - Choose from the list of chracter sets - KO16MSWIN949 선택

 

 

Create database 체크 해제 및 Generate Database Creation 선택

 

 

OK 선택

 

 

스크립트가 생성됨, No 선택

 

 

스크립트 경로로 가서 확인

1
2
3
4
5
6
7
8
9
10
11
12
13
14
$ cd /app/oracle/admin/ORADB/scripts/
$ ls -al
total 40
drwxr-x--- 2 oracle oinstall 4096 Jun  6 21:43 .
drwxr-x--- 3 oracle oinstall   21 Jun  6 21:43 ..
-rw-r----- 1 oracle oinstall  196 Jun  6 21:43 CreateClustDBViews.sql
-rw-r----- 1 oracle oinstall  666 Jun  6 21:43 CreateDBCatalog.sql
-rw-r----- 1 oracle oinstall  452 Jun  6 21:43 CreateDBFiles.sql
-rw-r----- 1 oracle oinstall 1125 Jun  6 21:43 CreateDB.sql
-rw-r----- 1 oracle oinstall 1857 Jun  6 21:43 init.ora
-rw-r----- 1 oracle oinstall  504 Jun  6 21:43 lockAccount.sql
-rwxr-xr-1 oracle oinstall  508 Jun  6 21:43 ORADB1.sh
-rwxr-xr-1 oracle oinstall 1105 Jun  6 21:43 ORADB1.sql
-rw-r----- 1 oracle oinstall 1132 Jun  6 21:43 postDBCreation.sql

모두 존재함

 

 

ORADB1.sh 확인

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
$ cat ORADB1.sh
#!/bin/sh
 
OLD_UMASK=`umask`
umask 0027
mkdir -/app/oracle/admin/ORADB/adump
mkdir -/app/oracle/admin/ORADB/dpdump
mkdir -/app/oracle/admin/ORADB/hdump
mkdir -/app/oracle/admin/ORADB/pfile
mkdir -/app/oracle/cfgtoollogs/dbca/ORADB
umask ${OLD_UMASK}
ORACLE_SID=ORADB1; export ORACLE_SID
PATH=$ORACLE_HOME/bin:$PATH; export PATH
echo You should Add this entry in the /etc/oratab: ORADB:/app/oracle/product/11g:Y
/app/oracle/product/11g/bin/sqlplus /nolog @/app/oracle/admin/ORADB/scripts/ORADB1.sql

 

 

ORADB1.sql 수정

raw 단어로 검색해서 수정 및 srvctl add database 구문 제일 뒤에있는 "-a "IMSIOCR" 제거

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
32
33
34
35
36
$ cat ORADB1.sql
기존
set verify off
ACCEPT sysPassword CHAR PROMPT 'Enter new password for SYS: ' HIDE
ACCEPT systemPassword CHAR PROMPT 'Enter new password for SYSTEM: ' HIDE
host /app/oracle/product/11g/bin/orapwd file=/app/oracle/product/11g/dbs/orapwORADB1 force=y
host /app/grid/11g/bin/setasmgidwrap o=/app/oracle/product/11g/bin/oracle
host /app/oracle/product/11g/bin/srvctl add database -d ORADB -/app/oracle/product/11g -+IMSIOCR/ORADB/spfileORADB.ora -n ORADB -"IMSIOCR"
host /app/oracle/product/11g/bin/srvctl add instance -d ORADB -i ORADB1 -n oel11db1
host /app/oracle/product/11g/bin/srvctl add instance -d ORADB -i ORADB2 -n oel11db2
host /app/oracle/product/11g/bin/srvctl disable database -d ORADB
@/app/oracle/admin/ORADB/scripts/CreateDB.sql
@/app/oracle/admin/ORADB/scripts/CreateDBFiles.sql
@/app/oracle/admin/ORADB/scripts/CreateDBCatalog.sql
@/app/oracle/admin/ORADB/scripts/CreateClustDBViews.sql
host echo "SPFILE='+IMSIOCR/ORADB/spfileORADB.ora'" > /app/oracle/product/11g/dbs/initORADB1.ora
@/app/oracle/admin/ORADB/scripts/lockAccount.sql
@/app/oracle/admin/ORADB/scripts/postDBCreation.sql
 
변경
set verify off
ACCEPT sysPassword CHAR PROMPT 'Enter new password for SYS: ' HIDE
ACCEPT systemPassword CHAR PROMPT 'Enter new password for SYSTEM: ' HIDE
host /app/oracle/product/11g/bin/orapwd file=/app/oracle/product/11g/dbs/orapwORADB1 force=y
host /app/grid/11g/bin/setasmgidwrap o=/app/oracle/product/11g/bin/oracle
host /app/oracle/product/11g/bin/srvctl add database -d ORADB -/app/oracle/product/11g -/dev/raw/raw20 -n ORADB
host /app/oracle/product/11g/bin/srvctl add instance -d ORADB -i ORADB1 -n oel11db1
host /app/oracle/product/11g/bin/srvctl add instance -d ORADB -i ORADB2 -n oel11db2
host /app/oracle/product/11g/bin/srvctl disable database -d ORADB
@/app/oracle/admin/ORADB/scripts/CreateDB.sql
@/app/oracle/admin/ORADB/scripts/CreateDBFiles.sql
@/app/oracle/admin/ORADB/scripts/CreateDBCatalog.sql
@/app/oracle/admin/ORADB/scripts/CreateClustDBViews.sql
host echo "SPFILE='/dev/raw/raw20'" > /app/oracle/product/11g/dbs/initORADB1.ora
@/app/oracle/admin/ORADB/scripts/lockAccount.sql
@/app/oracle/admin/ORADB/scripts/postDBCreation.sql

 

 

CreateDB.sql 수정

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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
$ cat CreateDB.sql
기존
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool /app/oracle/admin/ORADB/scripts/CreateDB.log append
startup nomount pfile="/app/oracle/admin/ORADB/scripts/init.ora";
CREATE DATABASE "ORADB"
MAXINSTANCES 32
MAXLOGHISTORY 1
MAXLOGFILES 192
MAXLOGMEMBERS 3
MAXDATAFILES 1024
DATAFILE SIZE 700M AUTOEXTEND ON NEXT  10240K MAXSIZE UNLIMITED
EXTENT MANAGEMENT LOCAL
SYSAUX DATAFILE SIZE 600M AUTOEXTEND ON NEXT  10240K MAXSIZE UNLIMITED
SMALLFILE DEFAULT TEMPORARY TABLESPACE TEMP TEMPFILE SIZE 200M AUTOEXTEND ON NEXT  640K MAXSIZE UNLIMITED
SMALLFILE UNDO TABLESPACE "UNDOTBS1" DATAFILE SIZE 200M AUTOEXTEND ON NEXT  5120K MAXSIZE UNLIMITED
CHARACTER SET KO16MSWIN949
NATIONAL CHARACTER SET AL16UTF16
LOGFILE GROUP 1  SIZE 51200K,
GROUP 2  SIZE 51200K
USER SYS IDENTIFIED BY "&&sysPassword" USER SYSTEM IDENTIFIED BY "&&systemPassword";
set linesize 2048;
column ctl_files NEW_VALUE ctl_files;
select concat('control_files=''', concat(replace(value, ', '''','''), '''')) ctl_files from v$parameter where name ='control_files';
host echo &ctl_files >>/app/oracle/admin/ORADB/scripts/init.ora;
spool off
 
변경
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool /app/oracle/admin/ORADB/scripts/CreateDB.log append
startup nomount pfile="/app/oracle/admin/ORADB/scripts/init.ora";
CREATE DATABASE "ORADB"
MAXINSTANCES 32
MAXLOGHISTORY 1
MAXLOGFILES 192
MAXLOGMEMBERS 3
MAXDATAFILES 1024
DATAFILE '/dev/raw/raw6' SIZE 700M AUTOEXTEND ON NEXT  10240K MAXSIZE UNLIMITED
EXTENT MANAGEMENT LOCAL
SYSAUX DATAFILE '/dev/raw/raw7' SIZE 600M AUTOEXTEND ON NEXT  10240K MAXSIZE UNLIMITED
SMALLFILE DEFAULT TEMPORARY TABLESPACE TEMP TEMPFILE '/dev/raw/raw9' SIZE 200M AUTOEXTEND ON NEXT  640K MAXSIZE UNLIMITED
SMALLFILE UNDO TABLESPACE "UNDOTBS1" DATAFILE '/dev/raw/raw10' SIZE 200M AUTOEXTEND ON NEXT  5120K MAXSIZE UNLIMITED
CHARACTER SET KO16MSWIN949
NATIONAL CHARACTER SET AL16UTF16
LOGFILE GROUP 1 ('/dev/raw/raw14') SIZE 199M,
GROUP 2 ('/dev/raw/raw15') SIZE 199M,
GROUP 3 ('/dev/raw/raw16') SIZE 199M
USER SYS IDENTIFIED BY "&&sysPassword" USER SYSTEM IDENTIFIED BY "&&systemPassword";
spool off

 

 

CreateDBFiles.sql 수정

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
$ cat CreateDBFiles.sql
기존
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool /app/oracle/admin/ORADB/scripts/CreateDBFiles.log append
CREATE SMALLFILE UNDO TABLESPACE "UNDOTBS2" DATAFILE SIZE 200M AUTOEXTEND ON NEXT  5120K MAXSIZE UNLIMITED;
CREATE SMALLFILE TABLESPACE "USERS" LOGGING DATAFILE SIZE 5M AUTOEXTEND ON NEXT  1280K MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT  AUTO;
ALTER DATABASE DEFAULT TABLESPACE "USERS";
spool off
 
변경
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool /app/oracle/admin/ORADB/scripts/CreateDBFiles.log append
CREATE SMALLFILE UNDO TABLESPACE "UNDOTBS2" DATAFILE '/dev/raw/raw11' SIZE 200M AUTOEXTEND ON NEXT  5120K MAXSIZE UNLIMITED;
CREATE SMALLFILE TABLESPACE "USERS" LOGGING DATAFILE '/dev/raw/raw8' SIZE 5M AUTOEXTEND ON NEXT  1280K MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT  AUTO;
ALTER DATABASE DEFAULT TABLESPACE "USERS";
spool off

 

 

CreateDBCatalog.sql 확인

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
$ cat CreateDBCatalog.sql
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool /app/oracle/admin/ORADB/scripts/CreateDBCatalog.log append
@/app/oracle/product/11g/rdbms/admin/catalog.sql;
@/app/oracle/product/11g/rdbms/admin/catblock.sql;
@/app/oracle/product/11g/rdbms/admin/catproc.sql;
@/app/oracle/product/11g/rdbms/admin/catoctk.sql;
@/app/oracle/product/11g/rdbms/admin/owminst.plb;
connect "SYSTEM"/"&&systemPassword"
@/app/oracle/product/11g/sqlplus/admin/pupbld.sql;
connect "SYSTEM"/"&&systemPassword"
set echo on
spool /app/oracle/admin/ORADB/scripts/sqlPlusHelp.log append
@/app/oracle/product/11g/sqlplus/admin/help/hlpbld.sql helpus.sql;
spool off
spool off

 

 

CreateClustDBViews.sql 확인

1
2
3
4
5
6
7
$ cat CreateClustDBViews.sql
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool /app/oracle/admin/ORADB/scripts/CreateClustDBViews.log append
@/app/oracle/product/11g/rdbms/admin/catclust.sql;
spool off

 

 

lockAccount.sql 확인

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
$ cat lockAccount.sql
SET VERIFY OFF
set echo on
spool /app/oracle/admin/ORADB/scripts/lockAccount.log append
BEGIN
 FOR item IN ( SELECT USERNAME FROM DBA_USERS WHERE ACCOUNT_STATUS IN ('OPEN''LOCKED''EXPIRED') AND USERNAME NOT IN (
'SYS','SYSTEM') )
 LOOP
  dbms_output.put_line('Locking and Expiring: ' || item.USERNAME);
  execute immediate 'alter user ' ||
         sys.dbms_assert.enquote_name(
         sys.dbms_assert.schema_name(
         item.USERNAME),false|| ' password expire account lock' ;
 END LOOP;
END;
/
spool off

 

 

postDBCreation.sql 수정

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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
$ cat postDBCreation.sql
기존
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool /app/oracle/admin/ORADB/scripts/postDBCreation.log append
execute DBMS_AUTO_TASK_ADMIN.disable();
@/app/oracle/product/11g/rdbms/admin/catbundleapply.sql;
select 'utl_recomp_begin: ' || to_char(sysdate, 'HH:MI:SS'from dual;
execute utl_recomp.recomp_serial();
select 'utl_recomp_end: ' || to_char(sysdate, 'HH:MI:SS'from dual;
select group# from v$log where group# =3;
select group# from v$log where group# =4;
ALTER DATABASE ADD LOGFILE THREAD 2 GROUP 3  SIZE 51200K,
 GROUP 4  SIZE 51200K;
ALTER DATABASE ENABLE PUBLIC THREAD 2;
host echo cluster_database=true >>/app/oracle/admin/ORADB/scripts/init.ora;
host echo remote_listener=oel11db-scan:1521>>/app/oracle/admin/ORADB/scripts/init.ora;
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
create spfile='+IMSIOCR/ORADB/spfileORADB.ora' FROM pfile='/app/oracle/admin/ORADB/scripts/init.ora';
shutdown immediate;
host /app/oracle/product/11g/bin/srvctl enable database -d ORADB;
host /app/oracle/product/11g/bin/srvctl start database -d ORADB;
connect "SYS"/"&&sysPassword" as SYSDBA
spool off
exit;
 
변경
SET VERIFY OFF
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
spool /app/oracle/admin/ORADB/scripts/postDBCreation.log append
execute DBMS_AUTO_TASK_ADMIN.disable();
@/app/oracle/product/11g/rdbms/admin/catbundleapply.sql;
select 'utl_recomp_begin: ' || to_char(sysdate, 'HH:MI:SS'from dual;
execute utl_recomp.recomp_serial();
select 'utl_recomp_end: ' || to_char(sysdate, 'HH:MI:SS'from dual;
select group# from v$log where group# =3;
select group# from v$log where group# =4;
ALTER DATABASE ADD LOGFILE THREAD 2 GROUP 4 ('/dev/raw/raw17') SIZE 199M,
 GROUP 5 ('/dev/raw/raw18') SIZE 199M,
 GROUP 6 ('/dev/raw/raw19') SIZE 199M;
ALTER DATABASE ENABLE PUBLIC THREAD 2;
host echo cluster_database=true >>/app/oracle/admin/ORADB/scripts/init.ora;
host echo remote_listener=oel11db-scan:1521>>/app/oracle/admin/ORADB/scripts/init.ora;
connect "SYS"/"&&sysPassword" as SYSDBA
set echo on
create spfile='/dev/raw/raw20' FROM pfile='/app/oracle/admin/ORADB/scripts/init.ora';
shutdown immediate;
host /app/oracle/product/11g/bin/srvctl enable database -d ORADB;
host /app/oracle/product/11g/bin/srvctl start database -d ORADB;
connect "SYS"/"&&sysPassword" as SYSDBA
spool off
exit;

 

 

init.ora 수정

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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
$ vi init.ora
기존
##############################################################################
# Copyright (c) 199120012002 by Oracle Corporation
##############################################################################
 
###########################################
# Cache and I/O
###########################################
db_block_size=8192
 
###########################################
# Cluster Database
###########################################
#cluster_database=true
#remote_listener=oel11db-scan:1521
 
###########################################
# Cursors and Library Cache
###########################################
open_cursors=300
 
###########################################
# Database Identification
###########################################
db_domain=""
db_name="ORADB"
 
###########################################
# File Configuration
###########################################
db_create_file_dest="+IMSIOCR"
 
###########################################
# Miscellaneous
###########################################
compatible=11.2.0.4.0
diagnostic_dest=/app/oracle
 
###########################################
# Processes and Sessions
###########################################
processes=150
 
###########################################
# SGA Memory
###########################################
sga_target=2501902336
 
###########################################
# Security and Auditing
###########################################
audit_file_dest="/app/oracle/admin/ORADB/adump"
audit_trail=none
remote_login_passwordfile=exclusive
 
###########################################
# Sort, Hash Joins, Bitmap Indexes
###########################################
pga_aggregate_target=833617920
 
ORADB1.instance_number=1
ORADB2.instance_number=2
ORADB1.thread=1
ORADB2.thread=2
ORADB1.undo_tablespace=UNDOTBS1
ORADB2.undo_tablespace=UNDOTBS2
 
 
변경
#db_create_file_dest 파라미터 삭제
#File Configuration 부분만 변경(control_files 삽입)
###########################################
# File Configuration
###########################################
control_files=("/dev/raw/raw12""/dev/raw/raw13")

 

 

db 생성 스크립트 실행(1번 노드)

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
32
33
34
$ cd /app/oracle/admin/ORADB/scripts
$ sh ORADB1.sh
You should Add this entry in the /etc/oratab: ORA11DB:/app/oracle/product/11g:Y
 
SQL*Plus: Release 11.2.0.4.0 Production on Fri Jun 6 22:27:54 2025
 
Copyright (c) 19822013, Oracle.  All rights reserved.
 
Enter new password for SYS:  (sys 패스워드 입력)
Enter new password for SYSTEM:  (system 패스워드 입력)
 
Enter password for SYS:  (sys 패스워드 입력)
.
.
Connected.
SQL> create spfile='/dev/raw/raw20' FROM pfile='/app/oracle/admin/ORADB/scripts/init.ora';
 
File created.
 
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> host /app/oracle/product/11g/bin/srvctl enable database -d ORADB;
 
SQL> host /app/oracle/product/11g/bin/srvctl start database -d ORADB;
 
SQL> connect "SYS"/"&&sysPassword" as SYSDBA
Connected.
SQL> spool off
not spooling currently
SQL> exit;
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Real Application Clusters option

완료됨

 

 

db 생성 스크립트 확인(2번 노드)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
$ cd /app/oracle/admin/ORADB/scripts
$ cat ORADB2.sql
set verify off
ACCEPT sysPassword CHAR PROMPT 'Enter new password for SYS: ' HIDE
ACCEPT systemPassword CHAR PROMPT 'Enter new password for SYSTEM: ' HIDE
host /app/oracle/product/11g/bin/orapwd file=/app/oracle/product/11g/dbs/orapwORADB2 force=y
host /app/grid/11g/bin/setasmgidwrap o=/app/oracle/product/11g/bin/oracle
REM host /app/oracle/product/11g/bin/srvctl add database -d ORADB -/app/oracle/product/11g -+IMSIOCR/ORADB/spfileORADB.ora -n ORADB -"IMSIOCR"
REM host /app/oracle/product/11g/bin/srvctl add instance -d ORADB -i ORADB1 -n oel11db1
REM host /app/oracle/product/11g/bin/srvctl add instance -d ORADB -i ORADB2 -n oel11db2
REM host /app/oracle/product/11g/bin/srvctl disable database -d ORADB
REM @/app/oracle/admin/ORADB/scripts/CreateDB.sql
REM @/app/oracle/admin/ORADB/scripts/CreateDBFiles.sql
REM @/app/oracle/admin/ORADB/scripts/CreateDBCatalog.sql
REM @/app/oracle/admin/ORADB/scripts/CreateClustDBViews.sql
host echo SPFILE='+IMSIOCR/ORADB/spfileORADB.ora' > /app/oracle/product/11g/dbs/initORADB2.ora
host echo Run script "/app/oracle/admin/ORADB/scripts/ORADB1.sh" from node "oel11db1" if you have not already run it.
exit;
REM @/app/oracle/admin/ORADB/scripts/lockAccount.sql
REM @/app/oracle/admin/ORADB/scripts/postDBCreation.sql

db 생성 구문 등 스크립트가 REM으로 주석처리 되어있음

 

 

SPFILE 부분만 raw 로 변경

1
2
$ vi ORADB2.sql
host echo SPFILE='/dev/raw/raw20' > /app/oracle/product/11g/dbs/initORADB2.ora

 

 

db 생성 스크립트 실행(2번 노드)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
$ sh ORADB2.sh
You should Add this entry in the /etc/oratab: ORADB:/app/oracle/product/11g:Y
 
SQL*Plus: Release 11.2.0.4.0 Production on Fri Jun 6 22:38:03 2025
 
Copyright (c) 19822013, Oracle.  All rights reserved.
 
Enter new password for SYS:
Enter new password for SYSTEM:
 
Enter password for SYS:
 
 
Run script /app/oracle/admin/ORADB/scripts/ORADB1.sh from node oel11db1 if you have not already run it.

 

 

crs 상태 확인

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
32
33
34
35
36
37
38
39
40
41
42
$ crsctl stat res -t
--------------------------------------------------------------------------------
NAME           TARGET  STATE        SERVER                   STATE_DETAILS
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.IMSIOCR.dg
               ONLINE  ONLINE       oel11db1
               ONLINE  ONLINE       oel11db2
ora.LISTENER.lsnr
               ONLINE  ONLINE       oel11db1
               ONLINE  ONLINE       oel11db2
ora.asm
               ONLINE  ONLINE       oel11db1                 Started
               ONLINE  ONLINE       oel11db2                 Started
ora.gsd
               OFFLINE OFFLINE      oel11db1
               OFFLINE OFFLINE      oel11db2
ora.net1.network
               ONLINE  ONLINE       oel11db1
               ONLINE  ONLINE       oel11db2
ora.ons
               ONLINE  ONLINE       oel11db1
               ONLINE  ONLINE       oel11db2
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
      1        ONLINE  ONLINE       oel11db1
ora.cvu
      1        ONLINE  ONLINE       oel11db1
ora.oc4j
      1        ONLINE  ONLINE       oel11db1
ora.oel11db1.vip
      1        ONLINE  ONLINE       oel11db1
ora.oel11db2.vip
      1        ONLINE  ONLINE       oel11db2
ora.oradb.db
      1        ONLINE  ONLINE       oel11db1                 Open
      2        ONLINE  INTERMEDIATE oel11db2                 Dismounted
ora.scan1.vip
      1        ONLINE  ONLINE       oel11db1

2번노드는 nomount 상태로 기동중임

 

 

2번 기동

1
2
3
4
5
6
7
SQL> alter database mount;
alter database mount
*
ERROR at line 1:
ORA-01012not logged on
Process ID: 0
Session ID: 0 Serial number: 0

 

 

바로 안되서 abort로 내린 뒤 다시 기동함

1
2
3
SQL> shutdown abort
ORACLE instance shut down.
$ srvctl start instance -d ORADB -i ORADB2

 

 

crs 상태 재확인

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
32
33
34
35
36
37
38
39
40
41
42
$ crsctl stat res -t
--------------------------------------------------------------------------------
NAME           TARGET  STATE        SERVER                   STATE_DETAILS
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.IMSIOCR.dg
               ONLINE  ONLINE       oel11db1
               ONLINE  ONLINE       oel11db2
ora.LISTENER.lsnr
               ONLINE  ONLINE       oel11db1
               ONLINE  ONLINE       oel11db2
ora.asm
               ONLINE  ONLINE       oel11db1                 Started
               ONLINE  ONLINE       oel11db2                 Started
ora.gsd
               OFFLINE OFFLINE      oel11db1
               OFFLINE OFFLINE      oel11db2
ora.net1.network
               ONLINE  ONLINE       oel11db1
               ONLINE  ONLINE       oel11db2
ora.ons
               ONLINE  ONLINE       oel11db1
               ONLINE  ONLINE       oel11db2
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
      1        ONLINE  ONLINE       oel11db1
ora.cvu
      1        ONLINE  ONLINE       oel11db1
ora.oc4j
      1        ONLINE  ONLINE       oel11db1
ora.oel11db1.vip
      1        ONLINE  ONLINE       oel11db1
ora.oel11db2.vip
      1        ONLINE  ONLINE       oel11db2
ora.oradb.db
      1        ONLINE  ONLINE       oel11db1                 Open
      2        ONLINE  ONLINE       oel11db2                 Open
ora.scan1.vip
      1        ONLINE  ONLINE       oel11db1

 

 

db 상태 확인

1
2
3
4
5
6
7
$ sqlplus / as sysdba
SQL> select instance_name, version, status from gv$instance;
 
INSTANCE_NAME    VERSION           STATUS
---------------- ----------------- ------------
ORADB1           11.2.0.4.0        OPEN
ORADB2           11.2.0.4.0        OPEN

정상적으로 설치됨

Oracle Linux 7.6 에 Oracle Database 11.2.0.4 Raw Device RAC 설치 완료

 

 

필요시 asm 리소스 제거

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
32
33
34
35
36
37
38
39
40
41
42
$ srvctl stop diskgroup -g IMSIOCR
$ srvctl stop asm
$ srvctl remove diskgroup -g IMSIOCR
$ srvctl disable asm
$ srvctl remove asm
 
$ crsctl stat res -t
--------------------------------------------------------------------------------
NAME           TARGET  STATE        SERVER                   STATE_DETAILS
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.LISTENER.lsnr
               ONLINE  ONLINE       oel11db1
               ONLINE  ONLINE       oel11db2
ora.gsd
               OFFLINE OFFLINE      oel11db1
               OFFLINE OFFLINE      oel11db2
ora.net1.network
               ONLINE  ONLINE       oel11db1
               ONLINE  ONLINE       oel11db2
ora.ons
               ONLINE  ONLINE       oel11db1
               ONLINE  ONLINE       oel11db2
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
      1        ONLINE  ONLINE       oel11db1
ora.cvu
      1        ONLINE  ONLINE       oel11db1
ora.oc4j
      1        ONLINE  ONLINE       oel11db1
ora.oel11db1.vip
      1        ONLINE  ONLINE       oel11db1
ora.oel11db2.vip
      1        ONLINE  ONLINE       oel11db2
ora.oradb.db
      1        ONLINE  ONLINE       oel11db1                 Open
      2        ONLINE  ONLINE       oel11db2                 Open
ora.scan1.vip
      1        ONLINE  ONLINE       oel11db1

정상적으로 제거됨

 

 

참조 : 

https://positivemh.tistory.com/521

 

Oracle Linux 7.6 설치 가이드

OS환경 : Oracle Linux 7.6 (64bit) 방법 : Oracle Linux 7.6 설치 가이드오라클 리눅스 설치파일은 http://edelivery.oracle.com/ 에서 다운로드 받음Oracle Linux Release 7 Update 6 for x86 (64 bit)(V980739-01).iso 시작 전 네트워

positivemh.tistory.com

https://positivemh.tistory.com/534

 

/usr/bin/xauth: file /root/.Xauthority does not exist

OS환경 : Oracle Linux 7.6 (64bit) 에러 : /usr/bin/xauth: file /root/.Xauthority does not existroot 계정으로 shell 접속 시 발생하는 메세지12345678Xshell:\> Connecting to 192.168.137.50:22...Connection established.Escape character is '^@]'.

positivemh.tistory.com

https://dataforum.io/display/ORCL/Oracle+Database+11g+R2+Real+Application+Cluster+%3A+Silent+Mode+with+Raw+Device#OracleDatabase11gR2RealApplicationCluster:SilentModewithRawDevice-%EC%82%AC%EC%9A%A9Software