网站首页 > 技术文章 正文
1、首先查看当前数据库是否处于归档模式
可使用如下两种方式查看
1.1
select name, log_mode from v$database;
log_mode的值为 NOARCHIVELOG 表示数据库处于非归档模式
log_mode的值为 ARCHIVELOG 表示数据库处于归档模式
1.2
archive log list; (此方法需要 as sysdba)
Database log mode 的值为 No Archive Mode
Automatic archival 的值为 Disabled
表示当前数据库处于非归档模式
Database log mode 的值为 Archive Mode
Automatic archival 的值为 Enabled
表示数据库已开启归档模式
2、非归档模式的数据库更改为归档模式
数据库从非归档模式更改为归档模式需要数据库处于mount状态下。
以下操作适用于oracle10g以上版本,对于oracle8i和9i不适用。
2.1 关闭数据库
shutdown immediate;
2.2 启动数据库到mount状态
startup mount;
2.3 修改数据库为归档模式
alter database archivelog;
2.4 打开数据库
alter database open;
2.5 查询数据库是否已处于归档模式
archive log list;
数据库已由非归档模式更改为归档模式
2.6 修改日志文件命名格式
alter system set log_archive_max_processes = 5;
alter system set log_archive_format = "archive_%t_%s_%r.log" scope=spfile;
此处修改后如果重启,则重启后归档的日志文件格式会更改为 archive_%t_%s_%r.log 格式,否则仍是默认的格式。
2.7 更改日志文件路径
alter system set log_archive_dest_1='location=/data/archivelog/orcl';
此时 Archive destination的值更改为 /data/archivelog/orcl
该语句含义是确定归档日志的路径,实际上Oracle 10g以后可以生成多份一样的日志,保存多个位置,以防不测
例如再添加一个日志位置可使用以下语句
SQL>alter system set log_archive_dest_2='location=/bak/orcl/archive_log';
2.8 归档当前重做日志
select name from v$archived_log;
alter system archive log current;
可以看出在归档当前重做日志后从v$archived_log中能查到当前被归档的重做日志,由于没有重启数据库,所以归档日志的文件格式仍然是默认的格式。
注:
<
alter system switch logfile 是强制日志切换,不一定就归档当前的重做日志文件(若自动归档打开,就归档前的重做日志,若自动归档没有打开,就不归档当前重做日志。)
alter system archive log current 是归档当前的重做日志文件,不管自动归档有没有打都归档。
主要的区别在于:
alter system switch logfile 对单实例数据库或RAC中的当前实例执行日志切换;
alter system archive log current 会对数据库中的所有实例执行日志切换。
>
2.9 重启数据库
shutdown immediate;
startup
2.10 查询归档信息
archive log list;
数据库由非归档模式更改为归档模式
3、归档模式的数据库更改为非归档模式
数据库从非归档模式更改为归档模式需要数据库处于mount状态下。
以下操作适用于oracle10g以上版本,对于oracle8i和9i不适用。
3.1 关闭数据库
如果数据库处于打开状态则需要先关闭数据库,如果数据库处于关闭状态,则直接执行3.2步即可。
关闭数据库之前归档当前重做日志
alter system archive log current;
shutdown immediate;
3.2 启动数据库到mount状态
startup mount;
3.3 查看的数据库的归档信息
archive log list;
或者
select name, log_mode from v$database;
3.4 更改归档模式为非归档模式
alter database noarchivelog;
3.4 查看的数据库的归档信息
archive log list;
或者
select name, log_mode from v$database;
3.5 打开数据库
alter database open;
猜你喜欢
- 2024-10-19 一文总结postgresql wal日志参数、归档、清理及常用命令
- 2024-10-19 Oracle数据库redo日志暴增,怎么查出是哪些sql语句影响导致?
- 2024-10-19 Oracle总体架构 oracle体系结构详解
- 2024-10-19 使用易备数据备份软件,简单快速地备份 Oracle 数据库
- 2024-10-19 分享一个定时清除前5天归档的脚本
- 2024-10-19 数据库容灾——Oracle DataGuard原理介绍
- 2024-10-19 Oracle Rman概述及最佳备份策略 oracle rman catalog
- 2024-10-19 RMAN-08137 主库无法删除归档文件
- 2024-10-19 详解mysql数据库binlog--机制、格式、相关参数等
- 2024-10-19 oracle体系结构概述 oracle 体系
你 发表评论:
欢迎- 593℃几个Oracle空值处理函数 oracle处理null值的函数
- 586℃Oracle分析函数之Lag和Lead()使用
- 574℃0497-如何将Kerberos的CDH6.1从Oracle JDK 1.8迁移至OpenJDK 1.8
- 571℃Oracle数据库的单、多行函数 oracle执行多个sql语句
- 567℃Oracle 12c PDB迁移(一) oracle迁移到oceanbase
- 559℃【数据统计分析】详解Oracle分组函数之CUBE
- 546℃最佳实践 | 提效 47 倍,制造业生产 Oracle 迁移替换
- 540℃Oracle有哪些常见的函数? oracle中常用的函数
- 最近发表
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端react (48)
- 前端aes加密 (58)
- 前端脚手架 (56)
- 前端md5加密 (54)
- 前端路由 (61)
- 前端数组 (73)
- 前端js面试题 (50)
- 前端定时器 (59)
- 前端懒加载 (49)
- 前端获取当前时间 (50)
- Oracle RAC (73)
- oracle恢复 (76)
- oracle 删除表 (48)
- oracle 用户名 (74)
- oracle 工具 (55)
- oracle 内存 (50)
- oracle 导出表 (57)
- oracle 中文 (51)
- oracle的函数 (57)
- 前端调试 (52)
本文暂时没有评论,来添加一个吧(●'◡'●)