科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道如何利用DBMS_FILE_TRANSFER复制Oracle ASM文件

如何利用DBMS_FILE_TRANSFER复制Oracle ASM文件

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

作为原磁盘设备的替换方式,Oracle 10g中引入了自动存储管理(ASM)来保存与Oracle相关的文件。同原磁盘一样,ASM分区(称为磁盘组)也没有文件系统,不能在操作系统级别上进行直接的文件浏览。

作者:开发者在线 来源:开发者在线 2007年7月30日

关键字: ORACLE

  • 评论
  • 分享微博
  • 分享邮件

在本页阅读全文(共3页)

Listing B

set serverout on

DECLARE

   v_archivedir         VARCHAR2(30)    := 'ARCHDIR';
   v_tempdir            VARCHAR2(30)    := 'TEMPDIR';

   v_asm_logname        VARCHAR2(100);
   v_win_logname        VARCHAR2(100);

   v_first_log_seq      NUMBER          := 12;
   v_last_log_seq       NUMBER          := 14;
   v_log_seq            VARCHAR2(5);

   CURSOR c_logs IS
      SELECT name
      FROM v$archived_log
      WHERE sequence# BETWEEN v_first_log_seq AND v_last_log_seq
      ORDER BY sequence#;

BEGIN
     FOR i IN c_logs LOOP
        v_asm_logname := SUBSTR(i.name, 16);
        v_log_seq     := SUBSTR(v_asm_logname,4,5);
        v_win_logname := 'orcl_arc'||v_log_seq||'.log';

        DBMS_FILE_TRANSFER.COPY_FILE(v_archivedir,
                                     v_asm_logname,
                                     v_tempdir,
                                     v_win_logname);

        DBMS_OUTPUT.PUT_LINE(v_asm_logname||' copied to '||
             v_win_logname||'.');

     END LOOP;
END;
/

SQL> @copyasm_b
arc00012_0578762891.001 copied to orcl_arc00012.log.                            
arc00013_0578762891.001 copied to orcl_arc00013.log.                            
arc00014_0578762891.001 copied to orcl_arc00014.log.                            

PL/SQL procedure successfully completed.

SQL>
    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章