Migrate database by cold backup method
来源:互联网 发布:c盘数据备份 编辑:程序博客网 时间:2024/06/07 16:15
一.背景:
预计到不久之后可能会有一次大规模的数据库同平台迁移的任务。据目前掌握的信息:
1. windows IA 下的迁移。
2. 版本为10.2.0.5,且大部分都是非归档模式。(有没有备份,尚不清楚,这些并不是我们管理的环境)。
3. 会用到冷备迁移。
应该是很简单的事情,那么更应该准确,高效的完成。
二.首先了解数据库的文件布局:
包括数据文件,临时文件,在线日志文件,归档日志文件,参数文件 (在windows下,可以推断出SID与服务项的名称,多多少少能预估到实例名重名的问题)
select * from v$database;
select name from v$datafile;
select name from v$tempfile;
select member from v$logfile;
select * from v$archived_log
select * from v$parameter where name like '%name%' order by name;
select * from v$parameter where name like '%domain%' order by name;
select * from v$parameter where name like '%spfile%' --to check the SID and instance_name and "service item" in windows
DBCA建立数据库时:
第一行的意义是: db_name.db_domain (其中db_domain可不写) ,db_name 的值被sercive_names继承
第二行的意义是: SID ,其值被instance_name完整继承。 在win中此名称也完整体现在服务列表中。与spfile名称对应。 SID与instance_name是可以事后任意修改的。
编辑第一行时,UI会强制同步第二行字符。实际上第二行字符可以在编辑完第一行后,任意更改。
BONDSDFSDFSDFSDFSDFSDFSDFSDFSDFSDFSDFSDFDSFSDFSDFSDFSDFSDFSD1234 SID最长64个字符
***/
三. 步骤规划:
例如需要将A库迁移到B库,通常情况下只用关心数据文件目标路径,目前假定目录发生变化。当然目录不变的话,那就更简单了。
A库:
SQL> create pfile='c:\inittran1.ora' from spfile;
File created.
拷贝到B,删掉动态参数,修改 控制文件路径;并在B的ORACLE_BASE下建立admin目录与5个子目录
B库:
C:\Documents and Settings\Administrator>oradim -new -sid tran1
Instance created.
C:\Documents and Settings\Administrator>orapwd file=c:\oracle\product\10.2.0\db_2\database\PWDtran1.ora password=oracle entries=5
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = tran1)
(ORACLE_HOME = C:\oracle\product\10.2.0\db_2)
(SID_NAME = tran1)
)
)
此时可 startup nomount
再将A库shutdown,将control file,datafile,online redo 拷贝到B库路径下 (注意tempfile如果较大可以不拷贝)
使用脚本将控制文件中保存的数据文件、临时文件、在线日志文件路径转换,创建c:\renamelist.sql内容如下:
set serveroutput onset feedback off verify off trimspool offset heading offset pagesize 0set linesize 200define dir='C:\oracle\oradata2\tran1\' --need modify!! oradata2 was oradata1 in the past!define renamefile='C:\renamefile.sql' --need modify!!spool &renamefileSELECT 'alter database rename file '''||NAME||''' to '||'''&dir'|| substr(NAME,instr(NAME,'\',-1,1)+1,100)||''';' FROM v$datafile order by 1;select 'alter database rename file '''||member||''' to '||'''&dir'|| substr(member,instr(member,'\',-1,1)+1,100)||''';' from v$logfile order by 1;SELECT 'alter database rename file '''||NAME||''' to '||'''&dir'|| substr(NAME,instr(NAME,'\',-1,1)+1,100)||''';' FROM v$tempfile order by 1;spool off@&renamefileexec dbms_output.put_line('done! database is ready to open!');
alter database open
(tempfile会自动被创建:
Sun Apr 07 12:56:03 Pacific Daylight Time 2013
Re-creating tempfile C:\ORACLE\ORADATA2\TRAN1\TEMP01.DBF)
SQL> create spfile from pfile;
File created.
SQL> startup force
- Migrate database by cold backup method
- backup database
- BACKUP DATABASE
- Oracle RMAN Migrate Database to RAC from Netbackup Tape by LAN-FREE
- asp.net Backup DataBase
- backup & restore database~
- Powershell Database Backup Script
- BACKUP DATABASE PLUS ARCHIVELOG
- Step By Step Guide To Create Physical Standby Database Using RMAN Backup and Restore
- 热备份、温备份、冷备份(Hot/Warm/Cold Backup)
- Oracle EBS Instance冷备份的方法(Cold Backup)
- 热备份、温备份、冷备份(Hot/Warm/Cold Backup)
- 热备份、温备份、冷备份(Hot/Warm/Cold Backup)
- 热备份、温备份、冷备份(Hot/Warm/Cold Backup)
- South - 在 Django 中 Migrate Database
- Oracle Database backup: exp command
- MySQL Database backup and restore
- rman backup database force 功能
- java语句调用getprop和setprop命令来获得prop中的数据
- boost mpi编译2
- (转)【Android游戏开发十五】关于Android 游戏开发中 OnTouchEvent() 触屏事件的性能优化笔记!
- point pixel DPI
- 喷水装置(一)
- Migrate database by cold backup method
- 提高web性能之--高效使用HTML标签和CSS样式
- Linux平台下构建android环境
- c++代理模式
- Java内存模型(下)
- android 可以移动的悬浮框 一
- 软件测试面试题及解析(二) .
- C# winform 弹出输入框
- Android APK反编译详解(附图)