温馨提示×

debian怎么备份lsnrctl配置

小樊
47
2026-07-22 09:52:02
栏目: 智能运维

在 Debian(以及大多数 Linux)上,lsnrctlOracle Database Listener 的管理工具,其配置主要保存在 listener.ora 文件中。备份 lsnrctl 配置,实际上就是备份 listener 相关的配置文件。

下面按常见情况说明。


一、确认 listener 配置文件位置

Oracle 的配置文件通常在以下目录之一(取决于你的安装方式):

$ORACLE_HOME/network/admin

常见路径示例:

/u01/app/oracle/product/19.3.0/dbhome_1/network/admin

如果你不确定 ORACLE_HOME,可以先执行:

echo $ORACLE_HOME

或:

which lsnrctl

输出类似:

/u01/app/oracle/product/19.3.0/dbhome_1/bin/lsnrctl

那么配置文件就在:

/u01/app/oracle/product/19.3.0/dbhome_1/network/admin

二、需要备份的关键文件

重点备份以下文件(存在哪些就备份哪些):

listener.ora
tnsnames.ora
sqlnet.ora

其中 listener.ora 是 lsnrctl 的核心配置


三、备份方法(推荐)

✅ 方法 1:直接复制备份(最常用)

cd $ORACLE_HOME/network/admin
cp listener.ora listener.ora.bak
cp tnsnames.ora tnsnames.ora.bak
cp sqlnet.ora sqlnet.ora.bak

或一次性备份:

cp -p listener.ora tnsnames.ora sqlnet.ora /backup/oracle/network/

-p 保留权限和时间戳


✅ 方法 2:打包备份(推荐用于迁移或长期保存)

cd $ORACLE_HOME/network
tar czvf listener_backup_$(date +%F).tar.gz admin/

示例:

listener_backup_2026-01-21.tar.gz

四、查看当前 listener 配置(辅助确认)

lsnrctl status

或:

lsnrctl status LISTENER_NAME

查看当前监听配置内容:

lsnrctl services

五、如果是 Oracle RAC 或 Grid 环境

在 RAC / Grid 中,listener 配置可能在:

$GRID_HOME/network/admin

或:

$ORACLE_BASE/diag/tnslsnr

此时建议同时备份:

crsctl stat res -t

和 Grid 的 listener 配置。


六、恢复方法(备用)

恢复时直接覆盖即可:

cp listener.ora.bak listener.ora

然后重启 listener:

lsnrctl stop
lsnrctl start

七、总结(最简版)

# 备份 listener 配置
cp $ORACLE_HOME/network/admin/listener.ora \
   $ORACLE_HOME/network/admin/listener.ora.bak

如果你愿意,可以告诉我:

  • Oracle 版本(11g / 12c / 19c / 21c)
  • 是否 RAC
  • Debian 版本

我可以给你更精确的备份方案。

0