ホームページ >データベース >mysql チュートリアル >sqlplus spool 到动态日志文件名

sqlplus spool 到动态日志文件名

WBOY
WBOYオリジナル
2016-06-07 16:46:521398ブラウズ

通过sqlplus的spool功能我们将数据库日常运维的结果输出到日志文件,而有时候则需要定时输出,为避免日志文件名的重复,我们可以

通过sqlplus的spool功能我们将数据库日常运维的结果输出到日志文件,而有时候则需要定时输出,为避免日志文件名的重复,,我们可以将输出的日志文件名采用动态命名方式来实现。本文则是针对这个问题给出一个示例,供大家参考。

1、生成动态日志文件的脚本

robin@SZDB:~> more dynamic_logfile_name.sql
--+ ================================================================+
--| Filename:dynamic_logfile_name.sql                              |
--| Desc:                                                          |
--|        This is only a sapmle to generate dynamic log file name |
--| Author: Robinson                                                |
--| Blog:                         |
--+ ================================================================+
SET TERMOUT OFF ECHO OFF VERIFY OFF
SET FEEDBACK OFF
VARIABLE dt VARCHAR2(13);
COL dt FORMAT a15
COL report_name FORMAT a35

BEGIN
  SELECT TO_CHAR (SYSDATE, 'yyyymmdd_hh24mi') INTO :dt FROM DUAL;
END;
/

PRINT dt;
COL report_name NEW_VALUE rpt_name

SELECT 'dynamic_logfile_' || :dt || '.log' AS report_name FROM DUAL;

PROMPT "variable rpt_name value is &rpt_name"
SPOOL &rpt_name
ALTER SESSION SET nls_date_format='yyyymmdd hh24:mi:ss';

SELECT SYSDATE FROM DUAL;

SPOOL OFF;
SET TERMOUT ON  ECHO ON VERIFY ON;
SET FEEDBACK ON;
UNDEFINE rpt_name
EXIT;

 

linux

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。