乐趣区

关于oracle:ORACLE19c新功能TXT格式listener-log自动Rotation

19c 之前的版本,ORACLE 数据库的 TXT 格局 listener log 不能被主动循环治理(Mos 1744876.1),给使用者造成了很大累赘。

19c 开始,导入了一下两个参数:

https://docs.oracle.com/en/database/oracle/oracle-database/19/netrf/oracle-net-listener-parameters-in-listener-ora.html#GUID-FF94A234-A29C-46AA-8770-4CA1BFB5C27C

#### 7.5.3 LOG_FILE_NUM_listener_name

The LOG_FILE_NUM_listener_name is a diagnostic parameter of the listener.ora file that specifies the number of log file segments.

Purpose

To specify the number of log file segments. At any point of time there can be only n log file segments where n is LOG_FILE_NUM_listener_name. If the log grows beyond this number, then the older segments are deleted.

Default

No default. If you don't specify a value, or set the value to zero, then the number of segments grows indefinitely.

Values

Any integer value.

Example 7-9

LOG_FILE_NUM_listener=3

#### 7.5.4 LOG_FILE_SIZE_listener_name

The LOG_FILE_SIZE_listener_name diagnostic parameter of thelistener.ora file specifies the size of each log file segment.

Purpose

To specify the size of each log file segment. The size is in MB.

Default

300 MB

Values

Any integer value.

Example 7-10 Example

LOG_FILE_SIZE_listener=10

通过下面的参数,TXT 格局的 listener log 和 XML 格局的 listener log 一样能够主动循环治理了。

例:

[oracle@db1903 ~]$ lsnrctl start
LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 20- 1 月 -2021 17:33:16
Copyright (c) 1991, 2019, Oracle.  All rights reserved.
/u01/app/oracle/product/19.3.0/dbhome_1/bin/tnslsnr を起動しています。お待ちください...
TNSLSNR for Linux: Version 19.0.0.0.0 - Production
システム・パラメータ・ファイルは /u01/app/oracle/product/19.3.0/dbhome_1/network/admin/listener.ora です。ログ・メッセージを /u01/app/oracle/diag/tnslsnr/db1903/listener/alert/log.xml に書き込みました。リスニングしています: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=db1903)(PORT=1521)))
リスニングしています: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=db1903)(PORT=1521))) に接続中
リスナーのステータス

------------------------

別名                      LISTENER
バージョン                TNSLSNR for Linux: Version 19.0.0.0.0 - Production
開始日                    20- 1 月 -2021 17:33:19
稼働時間                  0 日 0 時間 0 分 0 秒
トレース・レベル          off
セキュリティ              ON: Local OS Authentication
SNMP                      OFF
パラメータ・ファイル      /u01/app/oracle/product/19.3.0/dbhome_1/network/admin/listener.ora
ログ・ファイル            /u01/app/oracle/diag/tnslsnr/db1903/listener/alert/log.xml

リスニング・エンドポイントのサマリー...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=db1903)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
リスナーはサービスをサポートしていません。コマンドは失常に終了しました。

在 /u01/app/oracle/product/19.3.0/dbhome_1/network/admin/listener.ora 文件中设置上面两个参数。

LOG_FILE_NUM_LISTENER=8
LOG_FILE_SIZE_LISTENER=1

重启监听。

[oracle@db1903 ~]$ lsnrctl stop listener
[oracle@db1903 ~]$ lsnrctl start listener

测试一下。

$> vi connect.sh
#!/bin/bash
while (true); do
sqlplus -S -L test/test@localhost:1521/pdb << EOF
SELECT * FROM dual;
EXIT;
EOF
done

$> chmod +x connect.sh
$> ./connect.sh > /dev/null
$> ./connect.sh > /dev/null
$> ./connect.sh > /dev/null
$> ...

◆TXT 格局 listener log

[oracle@db1903 trace]$ pwd
/u01/app/oracle/diag/tnslsnr/db1903/listener/trace
[oracle@db1903 trace]$ ll
合計 720
-rw-r-----. 1 oracle oinstall  12251  1 月 20 17:59 listener.log
-rw-r-----. 1 oracle oinstall 482866  1 月 20 17:59 listener_1.log

◆XML 格局 listener log

[oracle@db1903 alert]$ pwd
/u01/app/oracle/diag/tnslsnr/db1903/listener/alert
[oracle@db1903 alert]$ ll
合計 1416
-rw-r-----. 1 oracle oinstall     962  1 月 20 17:59 log.xml
-rw-r-----. 1 oracle oinstall 1048912  1 月 20 17:59 log_1.xml

请留神下面的 XML 格局 listener log 的大小是 1MB,TXT 格局 listener log 却小于 1MB。起因是两种格局的 Log 文件须要记录雷同的接续记录,而每一条 TXT 格局的接续记录比 XML 格局应用的空间要小。

退出移动版