Oracle将数据从文件系统迁移至ASM
sql数据库迁移另一个硬盘一、要迁移的文件类型有三个,分别是:
1、数据文件
2、日志文件
3、控制文件
二、通过查询到控制文件
su – oracle
. oraenv
orcl
sqlplus / as sysdba
select * from v$controlfile;
select * from v$datafile;
这里可以看到,controlfile以及表空间文件的路径均在文件系统上
一般会先迁移日志文件,如果日志文件不存在了,那只能resetlogs了,换化身。
1、日志
每个数据文件头上有一个时间戳,这个时间戳必须和控制文件的时间戳必须一致,否则控制文件将拒绝打开数据库
日志文件是循环写入,日志组最少得有2个,这种叫非归档模式
日志文件会写到硬盘上以后,数据块才会做
日志组3种状态
INACTIVE 所有的数据块描述已经写回硬盘
CURRENT 正在写的状态
ACTIVE 有一些还没有写回硬盘在内存种的数据库
转移INACTIVE状态的日志组
1、删除1号日志组文件
alter database drop logfile group 1;
2、指定文件的路径,创建日志组冗余,分别在+DATA和+FRA上创建日志组
在sqlplus中操作
show parameter db_create_file_dest;
alter system set db_create_file_dest=’+data’;
show parameter db_recovery_file;
alter system set db_recovery_file=’+fra’;
3、建立1号日志组
alter database add logfile group 1 size 200M;
4、手工进行切换CURRENT状态的日志组
alter system switch logfile;
这时日志组处于active状态
select resetlogs_change#,checkpoint_change#,current_scn from v$database;
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论