Tuesday, June 28, 2011

Truncate listener log file

One of the DBA responsibility is checking listener log file size. If your Oracle is running 7 x 24 you can`t rename online log file as alert.log. It means that if you try "moving" hot listener.log file is useless - ORACLE will still write into the moved file. I faced with problem, my listener.log file was to big size. After reading some blog and searching OTN forum I found guide and now I am going to demonstrate it :

[oracle@localhost log]$ ls -lh
total 298M
-rw-r--r-- 1 oracle oinstall 298M Jul  6 15:59 listener.log
-rw-r--r-- 1 oracle oinstall  682 Jul  6 11:51 sqlnet.log


[oracle@localhost admin]$ lsnrctl

LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 06-JUL-2011 16:05:36

Copyright (c) 1991, 2005, Oracle.  All rights reserved.

Welcome to LSNRCTL, type "help" for information.

LSNRCTL> set current_listener listener
Current Listener is listener
LSNRCTL> show log_file
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost.localdomain)(PORT=1521)))
listener parameter "log_file" set to listener.log
The command completed successfully
LSNRCTL> set log_file new_listener.log
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost.localdomain)(PORT=1521)))
listener parameter "log_file" set to new_listener.log
The command completed successfully
LSNRCTL> show log_file
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost.localdomain)(PORT=1521)))
listener parameter "log_file" set to new_listener.log
The command completed successfully
LSNRCTL>


Now, above command created new listener log file, let`s check:

[oracle@localhost log]$ ls -lrt
total 304976
-rw-r--r-- 1 oracle oinstall       682 Jul  6 11:51 sqlnet.log
-rw-r--r-- 1 oracle oinstall 311973339 Jul  6 16:05 listener.log
-rw-r--r-- 1 oracle oinstall       606 Jul  6 16:06 new_listener.log
[oracle@localhost log]$


So, old one we are going to compress

[oracle@localhost log]$ gzip listener.log
[oracle@localhost log]$ ls -lrt
total 2116
-rw-r--r-- 1 oracle oinstall     682 Jul  6 11:51 sqlnet.log
-rw-r--r-- 1 oracle oinstall 2153490 Jul  6 16:05 listener.log.gz
-rw-r--r-- 1 oracle oinstall     657 Jul  6 16:08 new_listener.log

[oracle@localhost log]$ ls -lh
total 2.1M
-rw-r--r-- 1 oracle oinstall 2.1M Jul  6 16:05 listener.log.gz
-rw-r--r-- 1 oracle oinstall  657 Jul  6 16:08 new_listener.log
-rw-r--r-- 1 oracle oinstall  682 Jul  6 11:51 sqlnet.log
[oracle@localhost log]$

After gzip our log file locates few space

Now, going to back...

LSNRCTL> set log_file listener.log
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost.localdomain)(PORT=1521)))
listener parameter "log_file" set to listener.log
The command completed successfully
LSNRCTL> show log_file
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost.localdomain)(PORT=1521)))
listener parameter "log_file" set to listener.log
The command completed successfully
LSNRCTL>

New listener.log file was created and our log of listener will write to listener.log

[oracle@localhost log]$ ls -lrt
total 2120
-rw-r--r-- 1 oracle oinstall     682 Jul  6 11:51 sqlnet.log
-rw-r--r-- 1 oracle oinstall 2153490 Jul  6 16:05 listener.log.gz
-rw-r--r-- 1 oracle oinstall     708 Jul  6 16:09 new_listener.log
-rw-r--r-- 1 oracle oinstall      72 Jul  6 16:11 listener.log
[oracle@localhost log]$

No comments:

Post a Comment

Cannot access dba_directories inside procedure

 Recently I faced one of familiar Oracle error ORA -00942 : table or view does not exist   I got it in while compiling procedure, becaus...