归档逐步应用辅助数据库迁移(适用大数据库)

啦啦啦

  1. 确定源数据库信息,主要是查询源数据库归档情况,确认归档日志;

    select name from v$archived_log;

    NAME

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

    +FLASH/orcl/onlinelog/group_1.257.856384971

    +DATA/orcl/onlinelog/group_2.262.856384971

    +FLASH/orcl/onlinelog/group_2.258.856384971

    +DATA/orcl/onlinelog/group_3.263.856384971

    +FLASH/orcl/onlinelog/group_3.259.856384973

    +FLASH/orcl/archivelog/2014_08_25/thread_1_seq_5.276.856492209

    +FLASH/orcl/archivelog/2014_08_25/thread_1_seq_3.286.856492209

    +FLASH/orcl/archivelog/2014_08_25/thread_1_seq_4.287.856492209

    ?

    41 rows selected.

    ?

    SQL> alter system switch logfile;

  2. 备份数据库,对源数据库进行热备份,脚本如下:

    alter tablespace system begin backup;

    host copy E:\ORACLE\ORADATA\MARK\SYSTEM01.DBF

    alter tablespace system end backup;

    .....

  3. 更改数据并归档部分日志,未测试目的,修改部分数据,并继续归档,数据库继续对外提供服务。

    begin

    for i in 1 .. 4 loop

    insert into mark values(i,sysdate,dbms_flashback.get_system_change_number);

    execute immediate ‘alter system switch logfile‘;

    dbms_lock.sleep(15);

    end loop;

    end;

    /

    Commit;

  4. 执行恢复,在迁移过程中,可以将备份文件传输至目标主机,在目标主机恢复备份的数据文件,启动数据库。

    sql>startup mount;

    sql>recover database using backup controlfile until cancel;

    应用了所有的归档日志文件之后,可以将数据库只读打开;

    sql>alter database open read only;

    ?

    因为原数据库的修改还在继续,关闭数据库,启动到mount状态,然后从源数据库拷贝归档日志,继续应用归档。通过不断应用归档日志,建议数据库和源数据库就处于同步状态。当到达迁移指定的时间时,将源数据库归档,然后停机,拷贝在线日志。然后再迁移数据库应用日志。

    这种方法和DAGAGUARD类似,但是更为可控。

时间: 2024-07-30 03:27:50

归档逐步应用辅助数据库迁移(适用大数据库)的相关文章

MYSQL数据库迁移到POSTGRESQL数据库(人工迁移)

产品即将上线,可项目经理说要换数据库,要把mysql数据库的内容全部搬到Postgresql中去. 有一个python的工具可以实现迁移(但是存储过程无法迁移.数据类型也无法灵活对应,还要改程序),为了节约时间采用人工迁移的方式,闲话少说,以下是迁移过程,没图,对不起. 利用Navicat for Mysql工具(其它工具也可以,比如mysqldump)将数据库模式导出(只导表结构不含数据)方法略,生成的文件名为mysql.sql 利用linux sed工具把导出的脚本中的所有COMMENT及m

从oracle数据库迁移到mysql数据库

to_date ---->> date_format select * from dual ---->> select '*' from dual rownum ---->> limit 表名全部改成大写的. 修改方言,mysql默认方言中没有BigDecimal,Long,Text 引用需要自定义方言 package com.yourcompany;import java.sql.Types;import org.hibernate.Hibernate;import

ABP Migration(数据库迁移)

今天准备说说EntityFramework 6.0+,它与我之前所学的4.0有所区别,自从4.1发布以来,code first 被许多人所钟爱,Dbcontext API也由此时而生.早在学校的时候就听老师说过Db first,Model first 和 Code first ,没怎么去注意,最近我直接从Db first 跳到了 Code first,去了解了下,个人觉得Model first 和 Code first 没多大区别,英文好的人看以看看http://stackoverflow.co

Laravel 5.2 数据库迁移和数据填充

一.数据库迁移 Laravel 的数据库迁移提供了对数据库.表.字段.索引的一系列相关操作. 1. 创建迁移 使用 Artisan 命令  php artisan make:migration create_links_table 这将在 database/migrations 目录下生成一个名为 2017_05_06_151645_create_links_table.php 的友情链接迁移类.其中,名字的前半段 "2017_05_06_151645_" 是 Laravel 增加的时

EF6 学习笔记(五):数据库迁移及部署

EF6学习笔记总目录:ASP.NET MVC5 及 EF6 学习笔记 - (目录整理) 原文地址:Code First Migrations and Deployment 原文主要讲两部分:开发环境下数据库迁移到其他数据库服务器:以及在Azure上如何部署应用: 原文前面讲一堆内容,主要就是说数据库在开发过程中,如果数据模型经常需要调整,那么数据库每次都删除重建有点不太现实:尤其是对于已部署的正式环境,需要的仅仅是数据库升级,而不可能直接Drop掉,再重新Create. 所以,需要启用EF的数据

EFCodeFirst Migrations数据库迁移

EFCodeFirst Migrations数据库迁移 数据库迁移 1.生成数据库 修改类文件PortalContext.cs的静态构造函数,取消当数据库模型发生改变时删除当前数据库重建新数据库的设置. static PortalContext() {  Database.SetInitializer<PortalContext>(null);  }  添加Migrations文件夹,并生成类文件Configuration.cs. namespace Portal.Migrations { 

oracle 的一个大数据表 快速迁移到 Sqlserver2008数据库

"-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> oracle 的一个大数据表 快速迁移到 Sqlserver2008数据库 - HappyBinhaer的专栏 - 博客频道 - CSDN.NET HappyBinhaer的专栏 目录视图 摘要视图 订阅 [活动]2017 CSDN博客专栏评选 &nbsp [5月书讯

MySQL数据库如何解决大数据量存储问题

利用MySQL数据库如何解决大数据量存储问题? 各位高手您们好,我最近接手公司里一个比较棘手的问题,关于如何利用MySQL存储大数据量的问题,主要是数据库中的两张历史数据表,一张模拟量历史数据和一张开关量历史数据表,这两张表字段设计的很简单(OrderNo,Value,DataTime).基本上每张表每天可以增加几千万条数据,我想问如何存储数据才能不影响检索速度呢?需不需要换oracle数据库呢?因为我是数据库方面的新手,希望可以说的详细一点,万分感谢!!?-0-#暂时可以先考虑用infobri

通过rman实现单实例到rac环境数据库迁移

环境 迁移准备 开启数据库归档模式 检查数据库是否已经开启归档模式 SQL>select log_mode from v$database; LOG_MODE ------------ ARCHIVELOG (如果为非归档模式需要开启归档模式) 在源库中创建backup表并插入一条数据,以便确认迁移是否成功 SQL>create table backup(id number,name varchar2(100)); Tablecreated. SQL>insert into backup