什么是oracle 日志文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么是oracle 日志文件相关的知识,希望对你有一定的参考价值。
oracle的日志文件是记录数据库变化的一个凭证. oracle的文件可以分为 数据文件、控制文件和重做日志文件(也就是咱们平时说的redo), oracle的日志文件时分组存放的, 一个oracle数据库最少使用3个日志文件存放这些信息, 以防写满之后的溢出, 为了防止数据库的灾难性宕机, 日志文件可以提供一个支持, 可以把数据库恢复到宕机之前的某个时间点, 我们也经常对日志文件做一些操作, 常用的操作如下:1.查询系统使用的是哪一组日志文件:
select * from v$log;
2.查询正在使用的组所对应的日志文件:
select * from v$logfile;
3.强制日志切换:
alter system switch logfile;
4.查询历史日志:
select * from v$log_history;
5.查询日志的归档模式:
select dbid,name,created,log_mode from v$database;
6.查询归档日志的信息:
select recid,stamp,thread#,sequence#,name from v$archived_log;
7.增加与删除日志文件组
alter database add logfile group 1 ('/home1/oracle/oradata/ora8i/log1a.log'),'/home2/oracle/oradata/ora8i/log1b.log') size 100M;
alter database drop logfile group 1;
8.增加与删除日志成员
alter database add logfile member '/home1/oracle/oradata/ora8i/log1a.log' to group 1,'/home1/oracle/oradata/ora8i/log2a.log' to group 2;
alter database drop logfile member '/home1/oracle/oradata/ora8i/log1a.log' ;
9.日志文件移动
alter database rename file '/home1/oracle/oradata/ora8i/log1a.log' to '/home2/oracle/oradata/ora8i/log1a.log';
执行该命令之前必须保证该日志文件物理上已经移动到新目录
10.清除日志文件
alter database clear logfile '/home1/oracle/oradata/ora8i/log1a.log';
该命令不能用删除组及组成员命令删除日志时使用 参考技术A 就是ORACLE 对于一切数据库的操作的记录 方便以后查找分析错误。有可以恢复数据等作用。
Oracle日志文件
1.查询系统使用的是哪一组日志文件:
select * from v$log;
2.查询正在使用的组所对应的日志文件:
select * from v$logfile;
3.强制日志切换:
alter system switch logfile;
4.查询历史日志:
select * from v$log_history;
5.查询日志的归档模式:
select dbid,name,created,log_mode from v$database;
6.查询归档日志的信息:
select recid,stamp,thread#,sequence#,name from v$archived_log;
7.增加与删除日志文件组
alter database add logfile group 1 ('/home1/oracle/oradata/ora8i/log1a.log'),'/home2/oracle/oradata/ora8i/log1b.log') size 100M;
alter database drop logfile group 1;
8.增加与删除日志成员
alter database add logfile member '/home1/oracle/oradata/ora8i/log1a.log' to group 1,'/home1/oracle/oradata/ora8i/log2a.log' to group 2;
alter database drop logfile member '/home1/oracle/oradata/ora8i/log1a.log' ;
9.日志文件移动
alter database rename file '/home1/oracle/oradata/ora8i/log1a.log' to '/home2/oracle/oradata/ora8i/log1a.log';
执行该命令之前必须保证该日志文件物理上已经移动到新目录
10.清除日志文件
alter database clear logfile '/home1/oracle/oradata/ora8i/log1a.log';
该命令用于不能用删除组及组成员命令删除日志时使用 参考技术B 日志文件按时间记录数据库发生的重大事件,比如新建表空间,新建用户,数据库启动关闭等等。
oracle之归档日志是个什么鬼?
我们的oracle数据库默认采用的是非归档模式,假如说一共有三个重做日志组,当三个日志组全部写满之后将从第一个日志组开始循环记录,并且第一个日志组中的内容将被彻底覆盖,这样,如果数据库崩溃了,想要恢复很早之前的数据,那就坑比了。
怎么办?
你问我啊,我告诉你。切换数据库日志模式为归档模式就OK了,这样写入日志循环的时候,会先把日志组中的数据写入到归档日志中,然后才会被覆盖。你看,问题解决了吧?
有人可能会问:哎,那究竟什么时候应该采用归档模式呢?
这要看数据库对应的应用系统是什么样的要求了,如果数据绝对不允许丢失则必须使用归档模式。
如果只强调系统的运行效率,至于数据丢失没有那么重要的话,可以采取非归档模式。但是还是建议管理员经常定时的进行数据库完整备份。
切换日志模式:
① 查看日志模式
② 关闭数据库,重新启动并加载数据库但不打开数据库
③ 改变日志模式
④ 打开数据库
OK,可以在PLSQL developer工具里通过select log_mode from v$database;语句查看归档模式,也可以通过在SQL*plus里输入archive log list进行查看。
a.
b.
如果你还想知道点别的,请自行百度吧!
本文出自 “康哥的IT世界” 博客,请务必保留此出处http://zhengkangkang.blog.51cto.com/12015643/1953567
以上是关于什么是oracle 日志文件的主要内容,如果未能解决你的问题,请参考以下文章