首页 >数据库 >mysql教程 >错误 ORA-26040: 使用 NOLOGGING 选项加载数据块

错误 ORA-26040: 使用 NOLOGGING 选项加载数据块

WBOY
WBOY原创
2016-06-07 16:45:471438浏览

我们知道通过设置nologging选项,可以加快oracle的某些操作的执行速度,这在执行某些维护任务时是非常有用的,但是该选项也很危险

我们知道通过设置nologging选项,可以加快Oracle的某些操作的执行速度,这在执行某些维护任务时是非常有用的,但是该选项也很危险,如果使用不当,就可能导致数据库发生ORA-26040错误。

首先,构造使用环境,

SQL> select tablespace_name,logging,force_logging from dba_tablespaces;

TABLESPACE_NAME         LOGGING  FOR
------------------------------ --------- ---
SYSTEM          LOGGING  NO
UNDOTBS1        LOGGING  NO
SYSAUX          LOGGING  NO
TEMP          NOLOGGING NO
USERS          LOGGING  NO
LOGGING         LOGGING  NO

6 rows selected.

SQL> show user
USER is "LOGGING"
SQL> select table_name,logging from user_tables;

TABLE_NAME        LOG
------------------------------ ---
SOURCE          YES
NOLOG          NO
NOLOG1          NO

我们使用create table table_name nologging as select * from user_tables创建了表nolog和nolog1。在创建表之前,先使用rman进行全库的备份,表创建完成后,关闭数据库,并使用备份来恢复,结果如下:

[oraten@yue bdump]$ rman target /

Recovery Manager: Release 10.2.0.5.0 - Production on 星期四 11月 13 17:21:02 2014

Copyright (c) 1982, 2007, Oracle.  All rights reserved.

connected to target database: ORATEN (DBID=3658365464, not open)

RMAN> list backup;

using target database control file instead of recovery catalog

List of Backup Sets
===================

BS Key  Type LV Size      Device Type Elapsed Time Completion Time   
------- ---- -- ---------- ----------- ------------ -------------------
97      Full    565.31M    DISK        00:00:41    2014-11-12 09:34:45
        BP Key: 65  Status: AVAILABLE  Compressed: NO  Tag: TAG20141112T093404
        Piece Name: /home/app/oraten/flash_recovery_area/ORATEN/backupset/2014_11_12/o1_mf_nnndf_TAG20141112T093404_b65g8fc3_.bkp
  List of Datafiles in backup set 97
  File LV Type Ckp SCN    Ckp Time            Name
  ---- -- ---- ---------- ------------------- ----
  1      Full 1276159    2014-11-12 09:34:04 /home/app/oraten/oradata/oraten/system01.dbf
  2      Full 1276159    2014-11-12 09:34:04 /home/app/oraten/oradata/oraten/undotbs01.dbf
  3      Full 1276159    2014-11-12 09:34:04 /home/app/oraten/oradata/oraten/sysaux01.dbf
  4      Full 1276159    2014-11-12 09:34:04 /home/app/oraten/oradata/oraten/users01.dbf
  5      Full 1276159    2014-11-12 09:34:04 /home/app/oraten/oradata/oraten/logging01.dbf

BS Key  Type LV Size      Device Type Elapsed Time Completion Time   
------- ---- -- ---------- ----------- ------------ -------------------
98      Full    6.86M      DISK        00:00:02    2014-11-12 09:34:52
        BP Key: 66  Status: AVAILABLE  Compressed: NO  Tag: TAG20141112T093404
        Piece Name: /home/app/oraten/flash_recovery_area/ORATEN/backupset/2014_11_12/o1_mf_ncsnf_TAG20141112T093404_b65g9vx2_.bkp
  Control File Included: Ckp SCN: 1276545      Ckp time: 2014-11-12 09:34:50
  SPFILE Included: Modification time: 2014-11-12 09:14:00

RMAN> restore database;

Starting restore at 2014-11-13 17:21:19
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=155 devtype=DISK

通道 ORA_DISK_1:开始数据文件备份集恢复
通道 ORA_DISK_1:指定要从备份集恢复的数据文件
将数据文件 00001 恢复到 /home/app/oraten/oradata/oraten/system01.dbf
将数据文件 00002 恢复到 /home/app/oraten/oradata/oraten/undotbs01.dbf
将数据文件 00003 恢复到 /home/app/oraten/oradata/oraten/sysaux01​​.dbf
将数据文件 00004 恢复到 /home/app /oraten/oradata/oraten/users01.dbf
将数据文件 00005 恢复到 /home/app/oraten/oradata/oraten/logging01.dbf
通道 ORA_DISK_1:从备份片 /home/app/oraten/flash_recovery_area/ 读取ORATEN/backupset/2014_11_12/o1_mf_nnndf_TAG20141112T093404_b65g8fc3_.bkp
通道 ORA_DISK_1:恢复备份片 1
片句柄=/home/app/oraten/flash_recovery_area/ORATEN/backupset/2014_11_1 2/o1_mf_nnndf_TAG20141112T093404_b65g8fc3_.bkp 标签=TAG20141112T093404
频道ORA_DISK_1: 恢复完成,已用时间: 00:00:25
于2014-11-13 17:21:45完成恢复

RMAN>恢复数据库;

于 2014-11-13 17:21:50 开始恢复
使用通道 ORA_DISK_1

开始媒体恢复

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn