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-x 1 oracle oinstall 508 Jun 6 21:43 ORADB1.sh
-rwxr-xr-x 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 -p /app/oracle/admin/ORADB/adump
mkdir -p /app/oracle/admin/ORADB/dpdump
mkdir -p /app/oracle/admin/ORADB/hdump
mkdir -p /app/oracle/admin/ORADB/pfile
mkdir -p /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 -o /app/oracle/product/11g -p +IMSIOCR/ORADB/spfileORADB.ora -n ORADB -a "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 -o /app/oracle/product/11g -p /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) 1991, 2001, 2002 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) 1982, 2013, 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 -o /app/oracle/product/11g -p +IMSIOCR/ORADB/spfileORADB.ora -n ORADB -a "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) 1982, 2013, 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-01012: not 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
'ORACLE > Install' 카테고리의 다른 글
오라클 23ai 23.7 골드이미지 패치 가이드 (0) | 2025.06.27 |
---|---|
Oracle Linux 7.6에 Oracle 11gR2 Raw Device RAC 설치 가이드_Part 2 (0) | 2025.06.06 |
Oracle Linux 7.6에 Oracle 11gR2 Raw Device RAC 설치 가이드_Part 1 (0) | 2025.06.06 |
Docker에 Oracle 23ai Free 설치 및 삭제 가이드 (0) | 2024.09.12 |
Oracle Linux 8.4에 Oracle 19c Silent 모드 설치 가이드 (1) | 2024.09.06 |