查看数据库配置 :
目前数据库运行在节点 rac2 上,并且是单实例数据库
[grid@rac2 ~]$ srvctl config database -d orcl
Database unique name: orcl
Database name: orcl
Oracle home: /u01/app/oracle/product/19.3.0/db
Oracle user: oracle
Spfile: +DATA/ORCL/PARAMETERFILE/spfile.258.1077242605
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: oper
Database instance: orcl
Configured nodes: rac2
CSS critical: no
CPU count: 0
Memory target: 0
Maximum memory: 0
Default network number for database services:
Database is administrator managed
一、启用集群特性的参数
SQL> alter system set cluster_database=true scope=spfile;
System altered.
SQL> alter system set cluster_database_instances=2 scope=spfile;
System altered.
SQL> alter system set instance_number=1 scope=spfile sid='orcl1';
System altered.
SQL> alter system set instance_number=2 scope=spfile sid='orcl2';
System altered.
SQL> alter system set thread=1 scope=spfile sid='orcl1';
System altered.
SQL> alter system set thread=2 scope=spfile sid='orcl2';
System altered.
SQL>
二、增加 undo
SQL> select * from v$tablespace;
TS# NAME INC BIG FLA ENC CON_ID
---------- ------------------------------ --- --- --- --- ----------
1 SYSAUX YES NO YES 0
0 SYSTEM YES NO YES 0
2 UNDOTBS1 YES NO YES 0
4 USERS YES NO YES 0
3 TEMP NO NO YES 0
SQL> create undo tablespace undotbs2 datafile '+DATA' SIZE 50m;
Tablespace created.
SQL> alter system set undo_tablespace='undotbs1' scope=spfile sid='orcl1';
System altered.
SQL> alter system set undo_tablespace='undotbs2' scope=spfile sid='orcl2';
System altered.
三 、增加 redo
SQL> select * from v$log;
GROUP# THREAD# SEQUENCE# BYTES BLOCKSIZE MEMBERS ARC
---------- ---------- ---------- ---------- ---------- ---------- ---
STATUS FIRST_CHANGE# FIRST_TIM NEXT_CHANGE# NEXT_TIME CON_ID
---------------- ------------- --------- ------------ --------- ----------
1 1 4 209715200 512 1 NO
INACTIVE 1974549 07-JUL-21 2024174 07-JUL-21 0
2 1 5 209715200 512 1 NO
CURRENT 2024174 07-JUL-21 1.8447E+19 0
3 1 3 209715200 512 1 NO
INACTIVE 1965294 07-JUL-21 1974549 07-JUL-21 0
SQL> alter database add logfile thread 2 group 4 '+DATA' size 50M;
Database altered.
SQL> alter database add logfile thread 2 group 5 '+DATA' size 50M;
Database altered.
SQL> alter database add logfile thread 2 group 6 '+DATA' size 50M;
Database altered.
SQL> select * from v$log;
GROUP# THREAD# SEQUENCE# BYTES BLOCKSIZE MEMBERS ARC
---------- ---------- ---------- ---------- ---------- ---------- ---
STATUS FIRST_CHANGE# FIRST_TIM NEXT_CHANGE# NEXT_TIME CON_ID
---------------- ------------- --------- ------------ --------- ----------
1 1 4 209715200 512 1 NO
INACTIVE 1974549 07-JUL-21 2024174 07-JUL-21 0
2 1 5 209715200 512 1 NO
CURRENT 2024174 07-JUL-21 1.8447E+19 0
3 1 3 209715200 512 1 NO
INACTIVE 1965294 07-JUL-21 1974549 07-JUL-21 0
GROUP# THREAD# SEQUENCE# BYTES BLOCKSIZE MEMBERS ARC
---------- ---------- ---------- ---------- ---------- ---------- ---
STATUS FIRST_CHANGE# FIRST_TIM NEXT_CHANGE# NEXT_TIME CON_ID
---------------- ------------- --------- ------------ --------- ----------
4 2 0 52428800 512 1 YES
UNUSED 0 0 0
5 2 0 52428800 512 1 YES
UNUSED 0 0 0
6 2 0 52428800 512 1 YES
UNUSED 0 0 0
6 rows selected.
四、启动 thread 2
SQL> col instance format a8
SQL> select thread#,instance,status,enabled from v$thread;
THREAD# INSTANCE STATUS ENABLED
---------- -------- ------ --------
1 orcl OPEN PUBLIC
2 UNNAMED_ CLOSED DISABLED
INSTANCE
_2
SQL> alter database enable thread 2 ;
Database altered.
SQL> select thread#,instance,status,enabled from v$thread;
THREAD# INSTANCE STATUS ENABLED
---------- -------- ------ --------
1 orcl OPEN PUBLIC
2 UNNAMED_ CLOSED PRIVATE
INSTANCE
_2
五、关闭数据库:
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL>
六、在两个节点上创建相应的目录:
mkdir -p /u01/app/oracle/diag/rdbms/orcl/orcl1/cdump
mkdir -p /u01/app/oracle/admin/orcl/audmp
mkdir -p /u01/app/oracle/product/19.3.0/db/rdbms/log
七、重新将数据库orcl 添加到集群中:
[oracle@rac2 ~]$ srvctl remove database -d orcl
Remove the database orcl? (y/[n]) y
[oracle@rac2 ~]$ srvctl add database -db orcl -oraclehome /u01/app/oracle/product/19.3.0/db
[oracle@rac2 ~]$ srvctl add instance -d orcl -i orcl1 -n rac1
[oracle@rac2 ~]$ srvctl add instance -d orcl -i orcl2 -n rac2
[oracle@rac2 ~]$ srvctl modify database -db orcl -p +DATA/ORCL/PARAMETERFILE/spfile.258.1077242605
[oracle@rac2 ~]$ srvctl config database -d orcl
Database unique name: orcl
Database name:
Oracle home: /u01/app/oracle/product/19.3.0/db
Oracle user: oracle
Spfile: +DATA/ORCL/PARAMETERFILE/spfile.258.1077242605
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: RAC
Start concurrency:
Stop concurrency:
OSDBA group: dba
OSOPER group: oper
Database instances: orcl1,orcl2
Configured nodes: rac2,rac1
CSS critical: no
CPU count: 0
Memory target: 0
Maximum memory: 0
Default network number for database services:
Database is administrator managed
八、启动数据库
[oracle@rac2 ~]$ srvctl start database -db orcl