ITPub博客

首页 > 数据库 > Oracle > 管理日志文件

管理日志文件

原创 Oracle 作者:skyin_1603 时间:2016-10-15 12:35:52 0 删除 编辑
一、日志文件管理:
日志文件也是数据库非常关键的文件之一,日志文件相当是数据库的数据操作的记录员。
以下是一些日志文件的管理,包括日志文件组或成员的添加,切换日志文件,归档日志文件等等。

1、查看日志文件组或者成员:

QL> select group#,member from v$logfile;

    GROUP# MEMBER

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

         1 /u01/app/oracle/oradata/PROD/redo01.log

         2 /u01/app/oracle/oradata/PROD/redo02.log

         3 /u01/app/oracle/oradata/PROD/redo03.log


 2、添加两个成员:

SQL> alter database add logfile group 4

  2  ('/u01/app/FRA/redo05.log',

  3  '/u01/app/FRA/redo06.log')

  4  size 10M;

Database altered.


3、再次查看:

SQL> select group#,member from v$logfile;

    GROUP# MEMBER

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

         1 /u01/app/oracle/oradata/PROD/redo01.log

         2 /u01/app/oracle/oradata/PROD/redo02.log

         3 /u01/app/oracle/oradata/PROD/redo03.log

         4 /u01/app/FRA/redo05.log

         4 /u01/app/FRA/redo06.log

4、查看系统目录:

[oracle@enmo FRA]$ ls

ora_control4.ctl  redo05.log  redo06.log


5、查看日志文件:

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

    GROUP# STATUS

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

         1 INACTIVE

         4 UNUSED

         3 CURRENT

         2 INACTIVE

 

6、切换日志组:

SQL> alter system switch logfile;

System altered.


7、再次查看日志文件:

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

    GROUP# STATUS

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

         1 INACTIVE

         2 INACTIVE

         3 ACTIVE

         4 CURRENT

拓展:

日志组的四种状态:

1>unused:表明该日志组从来没有被使用过,我们可以看到重建的日志组就是这个状态。

2>current:是oracle当前正在使用的日志组,即后台进程LGWR正在写的日志组。

3>active:当发生日志切换的时候,状态为current的日志组就会变成active状态,表明记录在这个日志组的事务提交所造成的数据块改变,
还没有完全从
database buffer cache 写入到data file中。当数据库处于archivelog mode时,ARCn就会归档这个日志组。所以处在这个状态
的日志组是不允许被覆盖的。崩溃恢复需要该状态,可用于块恢复,可能归档也可能未归档。

4>inactive:处于这个状态的日志组,表明记录在这个日志组的事务提交所造成的数据块的改变,已经完全从database buffer cache写入到
 
data file中了,实例恢复不再需要这个状态的日志组了,所以这个日志组是可以被覆盖的。

5>修改日志文件名或路径的语法:alter database rename file file_name to new_file_name;

修改日志文件的操作步骤:

1 关闭数据库
2
启动实例到mount状态

3 在操作系统修改所修改的日志文件额路径或名称---然后使用alter语句修改。

4 开启数据库到 open状态。


二、数据库的归档模式:


1、查看数据库是否为归档模式:

SQL> archive log list;

Database log mode              No Archive Mode

Automatic archival             Disabled

Archive destination            /u01/app/oracle/product/11.2.0/dbhome_1/dbs/arch

Oldest online log sequence     64

Current log sequence           66

非归档模式 。

2、关闭数据库:

SQL> shutdown immediate;

Database closed.

Database dismounted.

ORACLE instance shut down.

 
3、开启到mount状态:

SQL> startup mount;

ORACLE instance started.

 

Total System Global Area  835104768 bytes

Fixed Size                  2257840 bytes

Variable Size             541068368 bytes

Database Buffers          289406976 bytes

Redo Buffers                2371584 bytes

Database mounted.

SQL>
查看实例的状态:

SQL> select status from v$instance;

STATUS

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

MOUNTED


4、切换数据库到归档模式:

SQL>  alter database archivelog;

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     64

Next log sequence to archive   66

Current log sequence           66


 一般情况下,都会把归档日志文件放到快速恢复区,便于管理。这样,就需要对快速恢复区进项参数设置,如下:

5、修改归档文件的存放目录:

SQL> alter system set db_recovery_file_dest =' /u01/app/FRA/';       --- 设置快速恢复区的路径,也即归档文件的存放路径
SQL> alter system set db_recovery_file_dest_size = '3G';                 ----设置快速恢复区的大小


6、查看快速恢复区的参数:
SQL> show parameter DB_RECOVERY_FILE_DEST

NAME                                 TYPE        VALUE

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

db_recovery_file_dest                string      /u01/app/FRA/

db_recovery_file_dest_size           big integer 3G


当然,归档日志文件还可以自己设置它的存放路径:

设置归档目标的语法:

Alter system set log_archive_dest-N=’{location|server}=directory ‘;

例如:

alter system set log_archive_dest_1=’location=/u01/app/oracle/oradata/myarchive’;

通过log_archive_format 可以设置归档日志文件的名称格式语法如下:

Alter system set log_archive_format = ‘fix_name%S_%R.%T ‘ scope=spfile;



来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/31392094/viewspace-2126427/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: 创建分区表一
请登录后发表评论 登录
全部评论

注册时间:2016-09-06

  • 博文量
    231
  • 访问量
    215112