ORACLE之RAC搭建过程21-数据库创建后任务(可选)
重新编译无效对象
运行 utlrp.sql 脚本立即重新编译所有无效的 PL/SQL 程序包,
而不是在首次访问它们时再重新编译。这是个可选步骤,但建议您选择该步骤。
[oracle@rac1 ~]$ sqlplus / as sysdba
SQL> @?/rdbms/admin/utlrp.sql
在 RAC 环境中开启归档
无论是单个实例还是集群化数据库,Oracle 都会跟踪对数据库块的所有更改并记录到联机重做日志文件中。
在 Oracle RAC 环境中,每个实例将具有自己的联机重做日志文件集,称为线程。
每个 Oracle 实例将以循环方式使用其联机重做日志组。
一个联机重做日志填满之后,Oracle 将转至下一个联机重做日志。
如果数据库处于“存档日志模式”,Oracle 将创建该联机重做日志的一个副本,然后再对其进行重用。
一个线程至少必须包含两个联机重做日志(或联机重做日志组)。
对于单个实例的配置也同样如此。单个实例至少必须包含两个联机重做日志(或联机重做日志组)。
联机重做日志文件的大小完全独立于另一个实例的重做日志大小。
尽管在大多数配置中该大小是相同的,但是该大小可能会随每个节点的负载和备份/恢复注意事项而异。
还值得一提的是,每个实例都具有对自己的联机重做日志文件的独占式写访问权限。
但是在正确配置的 RAC 环境中,如果某个实例异常中断,
每个实例都可以读取该实例的当前联机重做日志文件以执行实例恢复。
因此,需要将联机重做日志置于一个共享存储设备上(就像数据库文件一样)。
如上文所述,Oracle 以循环方式写入其联机重做日志文件。
当前的联机重做日志填满之后,Oracle 将转至下一个联机重做日志。
为方便进行介质恢复,Oracle 允许 DBA 将数据库置于“存档日志模式”,
以在联机重做日志填满后(并且得到重用之前)创建它的副本。
该过程称为存档。
利用 Database Configuration Assistant (DBCA),用户可以将一个新数据库配置为存档日志模式,
但是大多数 DBA 在最初创建数据库期间选择跳过该选项。
在这种情况下,数据库没有处于存档日志模式,只需将数据库置于存档日志模式。
但是请注意,这将需要短暂的数据库中断。
在 Oracle RAC 配置的一个节点上,执行以下任务将支持 RAC 的数据库置于存档日志模式。
在本文中,我将使用运行 racdb1 实例的 rac1 节点:
以 oracle 用户身份登录到一个节点(即 rac1),
通过在当前实例中将 cluster_database 设置为 FALSE 来禁用集群实例参数:
1)设置集群参数为false
[oracle@rac1 ~]$ sqlplus / as sysdba
SQL> alter system set cluster_database=false scope=spfile sid=‘racdb1’;
2)停止集群数据库
以 oracle 用户身份关闭所有 访问集群化数据库的实例:
[oracle@rac1 ~]$ srvctl stop database -d racdb
3)单实例mount数据库
使用本地实例,挂载 数据库:
[oracle@rac1 ~]$ sqlplus / as sysdba
SQL> startup mount
4)开启归档
启用存档功能:
SQL> alter database archivelog;
5)修改集群参数为true
通过在当前实例中将实例参数 cluster_database 修改为 TRUE,重新启用对集群的支持:
SQL> alter system set cluster_database=true scope=spfile sid=‘racdb1’;
6)关闭单实例数据库
关闭本地实例:
SQL> shutdown immediate
ORA-01109: database not open
Database dismounted.
ORACLE instance shut down.
7)启动集群数据库
以 oracle 帐户身份使用 srvctl 命令重启所有实例:
[oracle@rac1 ~]$ srvctl start database -d racdb
登录到本地实例,验证存档日志模式已启用:
[oracle@rac1 ~]$ sqlplus / as sysdba
SQL> archive log list
Database log mode Archive Mode
Automatic archival Enabled
Archive destination USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence 69
Next log sequence to archive 70
Current log sequence 70
启用存档日志模式后,RAC 配置中的每个实例都可以自动存档重做日志!