温馨提示×

怎样备份debian lsnrctl配置

小樊
37
2026-10-18 08:16:04
栏目: 智能运维

在 Debian 上,lsnrctl 是 Oracle Database Listener(通常来自 Oracle Instant Client 或完整 Oracle 数据库安装)的命令行工具,而不是 Debian 自带软件。它的配置主要来自 listener.ora 文件。

下面给你几种备份 Debian 上 lsnrctl 配置的常用方法。


一、确认 listener 配置文件位置

通常位于 Oracle 的 network/admin 目录,例如:

$ORACLE_HOME/network/admin/listener.ora

如果未设置环境变量,可以查找:

find / -name listener.ora 2>/dev/null

常见路径:

  • /u01/app/oracle/product/19.0.0/dbhome_1/network/admin/listener.ora
  • /opt/oracle/product/.../network/admin/listener.ora

二、最基本的备份方式(推荐)

1️⃣ 直接备份 listener.ora

cp $ORACLE_HOME/network/admin/listener.ora \
   $ORACLE_HOME/network/admin/listener.ora.bak

或带日期:

cp listener.ora listener.ora.$(date +%F)

2️⃣ 使用 tar 打包整个 network/admin 目录(最安全)

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

恢复时:

tar xzvf listener_backup_2026-01-15.tar.gz -C /

三、通过 lsnrctl 导出当前配置(辅助方式)

虽然 lsnrctl 不能“导出文件”,但可以查看当前运行配置:

lsnrctl status
lsnrctl show

你也可以把输出保存:

lsnrctl status > lsnrctl_status.txt

⚠️ 这只是运行信息,不是配置文件备份。


四、自动化备份(可选)

使用 cron 每天备份

crontab -e

添加:

0 2 * * * cp $ORACLE_HOME/network/admin/listener.ora \
  $ORACLE_HOME/network/admin/listener.ora.$(date +\%F)

五、恢复 listener 配置

停止 listener:

lsnrctl stop

恢复文件:

cp listener.ora.bak listener.ora

启动:

lsnrctl start

六、小结

✅ 推荐做法

  • 备份 listener.ora
  • 最好连同 tnsnames.ora、sqlnet.ora 一起备份
  • 用 tar 打包 network/admin 目录

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

  • Oracle 版本
  • $ORACLE_HOME 路径
  • 是否是 RAC / 单机

我可以给你一套更精确的备份脚本。

0 踩