ORACLE 19c数据库设置数据库自启动

Oracle19c数据库设置自动启动步骤详解
本文详细介绍了如何在Oracle19c数据库中设置自动启动,包括修改oratab、添加启动命令到rc.local、设置权限和修改dbstart脚本,以及开启PDB和重启操作来验证配置。

ORACLE 19c数据库设置数据库自启动

1、以root身份登录系统,修改oratab,如下图所示:

vi /etc/oratab
进入vi编辑器后,找到“ORCL:/u01/app/oracle/product/19.3.0/db_1::N”
将文件最后面的N,修改为Y,如下:
ORCL:/u01/app/oracle/product/19.3.0/db_1:Y
该语句表示的实体含义如下:
$ORACLE_SID:$ORACLE_HOME:<N|Y>:
N表示开启不自动启动,Y表示开机会启动

2.编辑vi /etc/rc.d/rc.local,在文件最后面增加以下内容(oracle安装路径修改为自己的安装路径)

su - oracle -c 'lsnrctl start'
su - oracle -c 'dbstart'

3.设置这两个文件的权限,为可执行文件

chmod 755 /etc/oratab
chmod 755 /etc/rc.d/rc.local

修改dbstart文件

[oracle@mematest ~]$ vim $ORACLE_HOME/bin/dbstart
修改以下参数
ORACLE_HOME_LISTNER=$ORACLE_HOME

4.如果想让pdb也默认打开
先将pdb打开,然后保存当前状态

alter pluggable database orclpdb open;
alter pluggable database orclpdb save state;

3
重启操作系统

[oracle@mematest ~]$ reboot
1
测试
[oracle@mematest ~]$ sqlplus / as sysdba
SQL> select instance_name,status from v$instance;

INSTANCE_NAME	 STATUS
---------------- ------------
mema		 OPEN
[oracle@mematest ~]$ lsnrctl status
<think>首先,用户的问题是:如何配置 Oracle 19c RAC 数据库使其随集群自动启动。这涉及到 Oracle RAC(Real Application Clusters)的配置。 我从系统级指令中知道,我需要使用中文回答,并确保数学表达式使用正确的 LaTeX 格式,但这个问题似乎不涉及数学表达式,所以可能不需要。但如果有任何数学相关内容,我会应用规则。 用户提供了几个引用: - 引用[1]:关于在备库增加静态监听。 - 引用[2]:显示 AUTO_START=restore,这可能与数据库启动相关。 - 引用[3]:关于安装 Oracle 19c RAC 的注意事项。 用户的问题核心是配置数据库随集群自动启动。在 Oracle RAC 中,数据库实例的启动通常由 Clusterware 管理。引用[2] 提到 AUTO_START=restore,这可能是关键。 在 Oracle Clusterware 中,资源(如数据库实例)有一个属性叫 AUTO_START,它控制资源在集群启动时的行为。常见的值包括: - always:总是启动。 - restore:恢复到之前的状态(如果之前是运行的,则启动;如果停止,则停止)。 - never:从不自动启动。 用户想确保数据库随集群自动启动,所以可能需要设置 AUTO_START 为 always。 步骤可能包括: 1. 检查当前设置。 2. 修改 AUTO_START 属性。 3. 验证配置。 使用命令如 crsctl 来管理资源。 从引用[2]:`crsctl status resource ora.test.db -p | grep AUTO_START` 显示 AUTO_START=restore。用户可能想改成 always。 所以,回答应该包括: - 解释 AUTO_START 属性。 - 如何检查和修改它。 - 确保配置正确。 回答结构: 1. 介绍问题:解释如何配置数据库随集群自动启动。 2. 步骤:清晰列出命令和操作。 3. 验证:如何测试配置。 4. 生成相关问题(根据指令)。 指令说:生成相关问题。在回答末尾添加相关问题。 另外,回答中引用的段落末尾自然地添加引用标识。用户提供了引用,所以我应该在相关内容后添加引用标识。 例如,如果提到 AUTO_START,引用[2]。 最终回答用中文。 大纲: 1. 理解需求:简要重述问题。 2. 配置 AUTO_START 属性: - 检查当前设置:使用 `crsctl status resource`。 - 修改设置:使用 `crsctl modify resource` 设置 AUTO_START=always。 3. 确保集群管理:讨论其他相关配置,如监听器等(引用[1]提到监听器)。 4. 验证:重启集群或测试自动启动。 5. 总结。 6. 相关问题。 相关问题生成: - 如何检查 Oracle RAC 资源的状态? - 如果数据库不自动启动,如何诊断? - Oracle RAC 中其他资源如何配置自动启动? 确保回答真实可靠:基于 Oracle 文档知识。引用用户提供的引用。 开始构建回答。</think>### 配置 Oracle 19c RAC 数据库随集群自动启动 在 Oracle 19c RAC 环境中,确保数据库实例随集群自动启动是常见需求。这主要通过配置 Clusterware 资源属性实现,特别是 `AUTO_START` 参数。以下是详细步骤,基于 Oracle 官方最佳实践和常见配置方法。操作需以 root 用户或 grid 用户权限执行(根据命令要求),并确保集群状态正常。 #### 步骤 1: 检查当前 AUTO_START 设置 首先,验证数据库资源的当前 `AUTO_START` 属性值。默认值可能为 `restore`,表示数据库不会在集群启动时自动启动,而是恢复到上次状态。 - 使用 `crsctl` 命令检查资源属性(替换 `ora.<db_name>.db` 为实际资源名,如 `ora.test.db`): ```bash crsctl status resource ora.<db_name>.db -p | grep AUTO_START ``` 输出示例:`AUTO_START=restore`,表示需要手动干预[^2]。 #### 步骤 2: 修改 AUTO_START 属性为 always 将 `AUTO_START` 设置为 `always`,确保数据库在集群启动时自动启动。 - 执行修改命令: ```bash crsctl modify resource ora.<db_name>.db -attr AUTO_START=always ``` 参数说明: - `-attr AUTO_START=always`: 强制资源在集群启动时自动启动。 - 确认修改后,重启集群或资源使更改生效: ```bash crsctl stop cluster -all # 停止整个集群 crsctl start cluster -all # 启动整个集群,数据库应自动启动 ``` #### 步骤 3: 验证监听器和相关配置 数据库自动启动依赖监听器和其他资源。确保静态监听器配置正确(如引用[1]所示),避免启动失败。 - 检查监听器配置文件(`listener.ora`),确认 SID 和 ORACLE_HOME 路径正确: ```bash su - grid cd $ORACLE_HOME/network/admin vi listener.ora ``` 确保包含类似内容(调整 `bbdb` 为实际数据库名): ```ini SID_LIST_LISTENER= (SID_LIST= (SID_DESC= (GLOBAL_DBNAME=<db_name>) (SID_NAME=<db_name>1) # 节点1的SID (ORACLE_HOME=/oracle/app/oracle/product/19.0.0/db) ) ) ``` 重启监听器: ```bash srvctl stop listener srvctl start listener ``` #### 步骤 4: 整体验证和测试 - **验证 AUTO_START 设置**: ```bash crsctl status resource ora.<db_name>.db -p | grep AUTO_START ``` 预期输出:`AUTO_START=always`。 - **测试自动启动**: 模拟集群重启: ```bash crsctl stop cluster -all crsctl start cluster -all ``` 检查数据库状态: ```bash srvctl status database -d <db_name> ``` 输出应显示所有实例正在运行(如 `Instance <db_name>1 is running on node node1`)。 #### 注意事项 - **权限要求**:所有 `crsctl` 命令需以 root 用户执行,`srvctl` 命令以 grid 或 oracle 用户执行。 - **错误处理**:如果修改后数据库仍不启动,检查集群日志(`$GRID_HOME/log/<hostname>/agent/ohasd/oraagent_grid/oraagent_grid.log`)或使用 `crsctl check cluster -all` 诊断资源依赖问题。 - **备份配置**:修改前备份关键文件(如 `listener.ora`),防止配置错误。 - **引用说明**:本配置基于 Oracle 19c RAC 标准管理方法,修改 `AUTO_START` 是核心步骤[^2],监听器配置确保连通性[^1],安装时需严格遵循命名规范以避免失败[^3]。 通过以上步骤,Oracle 19c RAC 数据库将随集群自动启动,提升系统可用性。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值