[小e笔记]之一步一步学习备份恢复——第二篇 备份恢复原理

 小e随笔:小e把曾经的实验笔记拿了出来,在昨晚实验了一部分,结果出现了意想不到的错误,而错误就是让我们成长的基石,并又让我有所收获,所以笔记必须得记,而且也要经常复习和整理,学习是一个不断重复且前进的过程。

数据库环境   --以下的所有案例都是通过测试

OS:11gR2&linux5.8

1     介绍归档和非归档

1.1查看日志文件的几个常用视图

select * from v$log

select * from v$logfile

1.2 查看数据库归档模式    --sys用户

SQL> archive log list

Database log mode              No Archive Mode   --在建库的时候可以选择是否归档

Automatic archival             Disabled            我选择的不启用,所以默认非归档

Archive destination            USE_DB_RECOVERY_FILE_DEST归档日志路径

Oldest online log sequence     1 --这个地方为什么是1,那是因为。。。我刚才resetlogs了

Current log sequence           3 --当前使用的日志为序列3

SQL> select log_mode from v$database;

LOG_MODE

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

NOARCHIVELOG

SQL> select group#,sequence#,blocksize,archived,status from v$log;

    GROUP#  SEQUENCE#  BLOCKSIZE ARC STATUS

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

         1          1        512 YES INACTIVE

         2          2        512 YES INACTIVE

         3          3        512 NO  CURRENT

1.3  变为归档模式,但前提是数据库处于mount状态

SQL> shutdown immediate

Database closed.

Database dismounted.

ORACLE instance shut down.

SQL> startup mount;

ORACLE instance started.

Total System Global Area  845348864 bytes

Fixed Size                  1339796 bytes

Variable Size             494931564 bytes

Database Buffers          343932928 bytes

Redo Buffers                5144576 bytes

Database mounted.

SQL> alter database archivelog;

Database altered.

SQL> alter database open;

Database altered.

SQL> archive log list;

Database log mode              Archive Mode

Automatic archival            Enabled

Archive destination            USE_DB_RECOVERY_FILE_DEST

Oldest online log sequence     1

Next log sequence to archive   3

Current log sequence           3

注意:

Automatic archival             Enabled这个参数需要特别说明下

SQL> show parameter archive;

log_archive_start                    boolean     FALSE

这个参数需要特别说明一下,但从10g开始就废弃了,在9i之前,如果这个参数为false,光启动归档是不可以的,他不会为你自动归档。

这个地方就体现出了alter system switch logfile;和alter system archive log current的区别,他们两个只相差了归档这一项,在以前如果这个参数为false,那连续switch切换就会引起数据库挂起,因为日志没有归档。

1.4 查看归档日志文件存在哪里

SQL> show parameter db_recovery

NAME                                 TYPE        VALUE

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

db_recovery_file_dest                string      /u01/app/oracle/flash_recovery_area

db_recovery_file_dest_size           big integer    4977M

1.5 手动归档的方法

--alter system switch logfile;

--alter system archive log current;

2 介绍备份的另一个重要概念SCN:system change number

2.1 查询当前scn

SQL> select dbms_flashback.get_system_change_number from dual;  --大概每隔3S变化一次

GET_SYSTEM_CHANGE_NUMBER

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

                           898324

   10g以后又提供了一个查询scn的方式

SQL> select current_scn from v$database;

CURRENT_SCN

-----------

       898358  

2.2 查看归档归档日志文件的视图

SQL> select sequence#,first_change#,next_change# from v$archived_log;

 SEQUENCE# FIRST_CHANGE# NEXT_CHANGE#

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

        71        802120       803659

        72        803659       824346

        73        824346       850398       --悲剧啊!昨晚把74号归档日志文件玩丢了。。。

        75        856208       856561

        76        856561       856587

        77        856587       856597

        78        856597       856604

        79        856604       856685

         1        852915       872923

         2        872923       896073

10 rows selected.

综述:以上就是今天需要我们了解的备份恢复原理,SCN和归档在OLTP系统是非常非常重要的概念,当然如果在海量数据的情况下,就不一定了,根据业务和实际情况而定。

 

elvis
2012.10.1
知识共享~共同进步
转载请注明:

http://blog.csdn.net/elvis_dataguru/article/details/8044876

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值