用 lsnrctl 优化 Ubuntu 上的 Oracle 监听器性能
一 基线检查与快速优化
二 listener.ora 关键参数与示例
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = your_host)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
)
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = your_sid)
(ORACLE_HOME = /u01/app/oracle/product/19.0.0/dbhome_1)
(GLOBAL_DBNAME = your_dbname)
(SERVER = SHARED)
)
)
# 并发与超时(示例值,按实际压测微调)
CONNECTIONS_MAX = 1024
CONNECTION_TIMEOUT = 30
RETRY_COUNT = 5
TIME_OUT = 20
三 Ubuntu 系统层面的集成与网络优化
[Unit]
Description=Oracle Listener
After=network.target
[Service]
Type=forking
ExecStart=/u01/app/oracle/product/19.0.0/dbhome_1/bin/lsnrctl start
ExecStop=/u01/app/oracle/product/19.0.0/dbhome_1/bin/lsnrctl stop
User=oracle
Group=oracle
Restart=on-failure
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable --now oracle-listener
四 监控 验证与回退