一、NO ARCHIVELOG
数据库有联机重做日志,这个日志是记录对数据库所做的修改,比如插入,删除,更新数据等,对这些操作都会记录在联机重做日志里。一般数据库至少要有2个联机重做日志组。当一个联机重做日志组被写满的时候,就会发生日志切换,这时联机重做日志组2成为当前使用的日志,当联机重做日志组2写满的时候,又会发生日志切换,去写联机重做日志组1,就这样反复进行。
二、ARCHIVELOG
基本情况和上面是一致的,唯一不同在于,当发生日志切换的时候,被切换的日志会进行归档。比如,当前在使用联机重做日志1,当1写满的时候,发生日志切换,开始写联机重做日志2,这时联机重做日志1的内容会被拷贝到另外一个指定的目录下。这个目录叫做归档目录,拷贝的文件叫归档重做日志。
他们的区别在于一个归档,一个不归档。数据库使用归档方式运行时才可以进行灾难性恢复。
首先查看数据库现有模式可使用以下语句
select name,log_mode from v$database;
也可以用下面的语句
archive log list;(该方法需要as sysdba)
对于非归档模式的数据库该为归档模式(主要以Oracle 10g为参考)使用以下步骤:
1. SQL> alter system set log_archive_dest_1='location=/oracle/oracle10g/log/archive_log';
该语句含义是确定归档日志的路径,实际上Oracle 10g可以生成多份一样的日志,保存多个位置,以防不测
例如再添加一个日志位置可使用以下语句
SQL>alter system set log_archive_dest_2='location=/oracle/oracle10g/log2/archive_log';
2.关闭数据库
SQL> shutdown immediate
3.启动数据mount状态:
SQL> startup mount;
4、修改数据库为归档模式:
SQL> alter database archivelog;
5、打开数据库,查询:
SQL> alter database open;
修改日志文件命名格式:
SQL> alter system set log_archive_max_processes = 5;
SQL> alter system set log_archive_format = "archive_%t_%s_%r.log" scope=spfile;
修改完成后可以查看日志模式是否修改成功!
特别指出的是在Oracle 9i中还要修改参数log_archive_start = true才能生效,oracle 10g中已经废除了该参数,所以不需要设置该参数。
ingress gzip 注解 archiveslog注解
转载本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
@Retryable注解,标记的注解不生效??spring
-
注解@RequiredArgsConstructor注解
的书写,我们在写controller或者Service层的时候,需要注入很多的mapper接口或者另外的service接口
java mybatis spring 当前版本 后台管理框架 -
k82 ingress rule和注解对应 enablescheduling注解
定时任务的作用?定时任务相当于闹钟在什么时间做什么事情(执行什么命令/脚本)举例说明1、pom.xml中导入必要的依赖:<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</arti
SpringBoot定时任务 @EnableScheduling注解 取值 spring 定时任务 -
ingress 开启gzip压缩
目录 一、名称空间二、Pod三、 Deployment四、Service 五、ingress六、存储抽象PV&PVCConfigMap Secret 一、名称空间 资源隔离、但是网络不隔离# 创建kubectl create ns test#删除kubectl delete ns
ingress 开启gzip压缩 kubernetes nginx docker IP