【Oracle】删除 Oracle 19c 的监听器和数据库实例同时保留数据库软件

要删除 Oracle 19c 的监听器和数据库实例,同时保留数据库软件,请按以下步骤操作:

1.停止监听器

复制代码
lsnrctl stop

2.删除监听器配置

手动删除配置文件:

复制代码
cd $ORACLE_HOME/network/admin
rm listener.ora sqlnet.ora tnsnames.ora  # 删除网络配置文件

或使用 netca 工具:

复制代码
netca

选择 "Listener configuration" → "Delete" → 选择要删除的监听器。

3.停止数据库实例

复制代码
sqlplus / as sysdba <<EOF
shutdown immediate;
exit;
EOF

4.删除数据库实例

使用 dbca(Database Configuration Assistant)删除数据库:

复制代码
dbca -silent -deleteDatabase -sourceDB <your_database_name> -sysDBAUserName sys -sysDBAPassword <sys_password>

替换参数:

<your_database_name>:数据库实例名(如 ORCLCDB)

<sys_password>:sys 用户的密码

示例:

复制代码
dbca -silent -deleteDatabase -sourceDB ORCLCDB -sysDBAUserName sys -sysDBAPassword MyPassword

注意:此操作会永久删除数据库文件(数据文件、控制文件、重做日志等)。

5.清理残留文件

删除数据库相关文件:

复制代码
rm $ORACLE_HOME/dbs/init<sid>.ora     # 初始化参数文件
rm $ORACLE_HOME/dbs/spfile<sid>.ora   # 服务器参数文件
rm $ORACLE_HOME/dbs/orapw<sid>        # 密码文件

替换 为数据库实例名(如 rm $ORACLE_HOME/dbs/initORCLCDB.ora)。

删除数据文件目录(默认在 $ORACLE_BASE/oradata/<database_name>):

复制代码
rm -rf $ORACLE_BASE/oradata/<your_database_name>

删除快速恢复区(FRA)(如果存在):

复制代码
rm -rf $ORACLE_BASE/fast_recovery_area/<your_database_name>

6.可选清理

删除监听日志:

复制代码
rm $ORACLE_BASE/diag/tnslsnr/<hostname>/listener/alert/log.xml

移除 /etc/oratab 中的条目:

复制代码
sed -i '/^<your_database_name>:/d' /etc/oratab

验证结果

检查监听状态(应提示无监听器):

复制代码
lsnrctl status

检查数据库实例(应提示实例不存在):

复制代码
ps -ef | grep pmon

关键说明

保留的软件:$ORACLE_HOME 目录(包含 Oracle 二进制文件)未被删除,可重用。

备份建议:删除前确保已备份重要数据。

依赖项:如果数据库被其他应用使用,更新相关配置(如连接字符串)。

执行后,Oracle 软件仍可用于创建新数据库或监听器,但原数据库实例和监听配置已被彻底移除。

相关推荐
做运维的阿瑞7 分钟前
mysql数据库视图笔记:创建、修改、删除与适用场景
数据库·笔记·mysql
Seraphina3616 分钟前
DVWA(SQL Injection-High,XSS Reflected-Medium,XSS Stored-Medium)
数据库·经验分享·sql·网络安全·xss
@Mike@17 分钟前
12-数据库学习笔记(五种连接算法)
数据库·笔记·学习
Omics Pro29 分钟前
之江实验室NAR|虚拟细胞3阶段训练范式
数据库·人工智能·算法·机器学习·自然语言处理
龙亘川34 分钟前
探索智慧文化服务:建设初衷、整体架构、技术支撑、发展现状与实践影响
大数据·数据库·架构
风早爽太38 分钟前
Python 学习笔记:数据库迁移工具 ‌Alembic
数据库·python·fastapi·alembic
java1234_小锋1 小时前
【技术专题】Mysql8 数据库 - Mysql8 数据库基本操作
数据库·mysql
其实防守也摸鱼1 小时前
DeepSeek Harness 开源贡献手记:从 Issue 到 Merge 的完整旅程
android·数据库·学习·ai·oracle·自动化
jason.zeng@15022072 小时前
canal做mysql的异步传输工具
数据库·mysql·linq
Ivanqhz2 小时前
BURG(自底向上重写生成器)
服务器·数据库·人工智能·深度学习·算法