ORACLE 本地冷迁移
需求:把oracle数据库的数据文件,redo文件,控制文件迁移到本地的其它目录。
1.测试环境:
操作系统redhat 6.3,数据库oracle 11.2.0.1.0
[root@dbtest1 ~]# uname -a
Linux dbtest1 2.6.-.el6.x86_64 # SMP Wed Jun :: EDT x86_64 x86_64 x86_64 GNU/Linux SQL> select * from v$version; BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.1. - 64bit Production
PL/SQL Release 11.2.0.1. - Production
CORE 11.2.0.1. Production
TNS for Linux: Version 11.2.0.1. - Production
NLSRTL Version 11.2.0.1. - Production
源数据文件位置:/home/data/oracle/dbtest/
目标数据文件位置:/oracle_data/
2.关闭数据库监听,禁止外部访问数据库
-bash-4.1$ lsnrctl stop LSNRCTL for Linux: Version 11.2.0.1. - Production on -DEC- :: Copyright (c) , , Oracle. All rights reserved. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=dbtest)))
The command completed successfully
3.关闭oracle数据库
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
4.备份pfile,spfile,控制文件(至少备份一个)
-bash-4.1$ cd /$ORACLE_HOME/dbs
-bash-4.1$ cp initdbtest.ora initdbtest.ora.
-bash-4.1$ cp spfiledbtest.ora spfiledbtest.ora.
-bash-4.1$ cd /home/data/oracle/dbtest/
-bash-4.1$ cp control01.ctl control01.ctl.
5.更新pfile,从spfile创建pfile
SQL> create pfile='$ORACLE_HOME/dbs/initdbtest.ora' from spfile='$ORACLE_HOME/dbs/spfiledbtest.ora';
注:默认位置的话,可以直接使用create pfile from spfile来创建的,创建后检查一下时间戳来确认。
6.修改pfile中的控制文件的位置
把/home/data/oracle/dbtest/control01.ctl修改为/oracle_data/control01.ctl
-bash-4.1$ cd /$ORACLE_HOME/dbs/
-bash-4.1$ ls
hc_dbtest.dat initdbtest.ora initdbtest.ora. init.ora lkDBTEST orapwdbtest spfiledbtest.ora spfiledbtest.ora.
-bash-4.1$ cat initdbtest.ora |grep control
*.control_files='/home/data/oracle/dbtest/control01.ctl','/home/app/ora11g/flash_recovery_area/dbtest/control02.ctl'
使用vi编辑该文件
-bash-4.1$ cat initdbtest.ora |grep control
*.control_files='/oracle_data/control01.ctl','/home/app/ora11g/flash_recovery_area/dbtest/control02.ctl'
注:如果有多个要修改的话,方法是一样的。
7.复制源数据目录下的文件,包括控制文件,数据文件和redo文件
-bash-4.1$ cp /home/data/oracle/dbtest/* /oracle_data/
8.使用pfile来启动数据库到mount状态
SQL> startup pfile='$ORACLE_HOME/dbs/initdbtest.ora' mount
ORACLE instance started. Total System Global Area bytes
Fixed Size bytes
Variable Size bytes
Database Buffers bytes
Redo Buffers bytes
Database mounted.
9.重命名数据文件,redo文件的位置
SQL> ALTER DATABASE RENAME FILE '/home/data/oracle/dbtest/redo01.log' to '/oracle_data/redo01.log'; Database altered. SQL>ALTER DATABASE RENAME FILE '/home/data/oracle/dbtest/system01.dbf' to '/oracle_data/system01.dbf'; Database altered. ......
10. 打开数据库
SQL> alter database open; Database altered.
11.检查数据文件,redo等文件位置是否正确
SQL> select file_name from dba_data_files; FILE_NAME
--------------------------------------------------------------------------------
/oracle_data/users01.dbf
/oracle_data/undotbs01.dbf
/oracle_data/sysaux01.dbf
/oracle_data/system01.dbf
/oracle_data/laputa_dat.dbf
/oracle_data/laputa_idx_01.dbf rows selected. SQL> select file_name from dba_temp_files; FILE_NAME
--------------------------------------------------------------------------------
/oracle_data/temp01.dbf SQL> select name from v$controlfile; NAME
--------------------------------------------------------------------------------
/oracle_data/control01.ctl
/home/app/ora11g/flash_recovery_area/dbtest/control02.ctl SQL> select member from v$logfile; MEMBER
--------------------------------------------------------------------------------
/oracle_data/redo03.log
/oracle_data/redo02.log
/oracle_data/redo01.log
12.同步spfile到新的文件(简化写法)
SQL> create spfile from pfile; File created.
13.重启一次数据库确认一切正常
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down. SQL> startup
ORACLE instance started. Total System Global Area bytes
Fixed Size bytes
Variable Size bytes
Database Buffers bytes
Redo Buffers bytes
Database mounted.
Database opened.
SQL>
14.开启数据库监听
-bash-4.1$ lsnrctl start
注意问题:
1.在rename文件的时候,如果涉及到的文件比较多,建议把语句放在一个sql文件中,然后再在sqlplus中执行,否则可能会导致语句在中间断裂(一条语句被命令行看成2行,会报错)。如果发生了语句的断裂,重新把语句放在sql文件中执行即可,这些rename语句重复执行会报错,但是不影响最终的结果。
2.迁移redo文件可以在线执行,用添加redo group,删除redo group的办法。
3.非系统表空间可以在不关闭数据库的方法迁移,对表空间进行offline,移动对应数据文件,rename数据文件,online表空间。
ORACLE 本地冷迁移的更多相关文章
- 数据迁移_把RAC环境备份的数据,恢复到另一台单机Oracle本地文件系统下
数据迁移_把RAC环境备份的数据,恢复到另一台单机Oracle本地文件系统下 作者:Eric 微信:loveoracle11g 1.创建pfile文件 # su - ora11g # cd $ORAC ...
- OpenStack虚拟机冷迁移与热迁移
一.虚拟机迁移分析 openstacvk虚拟机迁移分为冷迁移和热迁移两种方式. 1.1冷迁移: 冷迁移(cold migration),也叫静态迁移.关闭电源的虚拟机进行迁移.通过冷迁移,可以选择将关 ...
- vsphere 虚拟机的迁移,冷迁移,vmotion(热迁移)
备注:(理论部分参考王春海老师的课程) 一.概述 1.vsphere数据中心当处于某种目的进行维护时,需要将某台主机上运行或关闭的虚拟机,迁移到其他主机上,这个时候就需要使用迁移 2.可以使用冷迁移或 ...
- openstack热迁移和冷迁移
转自: http://www.cnblogs.com/pycode/p/6494848.html 迁移类型: *非在线迁移 (有时也称之为‘迁移’).也就是在迁移到另外的计算节点时的这段时间虚拟机实例 ...
- 使用SSMS 2014将本地数据库迁移到Azure SQL Database
使用SQL Server Management Studio 2014将本地数据库迁移到Azure SQL Database的过程比较简单,在SSMS2014中,有一个任务选项为“将数据库部署到Win ...
- OpenStack的Resize和冷迁移代码解析及改进
原文:http://www.hengtianyun.com/download-show-id-79.html OpenStack的Resize(升级)功能,我们可以改变虚拟机的CPU核数.内存及磁盘大 ...
- MS SQL到Oracle的数据迁移笔记
MS SQL到Oracle的数据迁移笔记 一.任务背景 旧系统使用MS SQL Server数据库,新系统使用Oracle数据库,现在需要将旧系统中的数据迁移到新系统中,旧数据按照约定的规则转换后,能 ...
- oracle 数据库数据迁移解决方案
大部分系统由于平台和版本的原因,做的是逻辑迁移,少部分做的是物理迁移,接下来把心得与大家分享一下 去年年底做了不少系统的数据迁移,大部分系统由于平台和版本的原因,做的是逻辑迁移,少部分做的是物理迁 ...
- 【openstack N版】——云主机调整大小\冷迁移
一.先决条件 云主机冷迁移,即:将一台云主机从一个计算节点上,迁移到另外一个计算节点上.因为环境原因,所以我们需要准备两个计算节点. 1.1准备环境 在控制节点上,安装一个计算节点 #在控制节点安装n ...
随机推荐
- Struts2中Action接收参数的方法
详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt112 Struts2中Action接收参数的方法主要有以下三种: 1.使用A ...
- 一,ESP8266下载和刷固件
用自己的小板测试...... 安排上呢 一, ESP8266下载和刷固件(Lua开发----体验一下lua开发的魅力所在) 二, 控制一个灯亮灭 三, TCP服务器 四, TCP客户端 五, UDP ...
- VB与C#语言部分不用的地方Part1
1. 数据类型: ① 日期型(Date) 表示日期和时间用两个“#”符号把日期和时间的值括起来,如:#08/20/2001#.#2001-08-20#. ② 变体型(Variant) ...
- yum的初步了解与使用
什么是yum Yum(Yellow dog Updater,Modified)是一个基于RPM包管理的字符前端软件包管理器.能够从指定的服务器自动下载RPM包并且安装,可解决软件包相关依赖性,并且一次 ...
- vmware 遇到 “无法打开内核设备 \\.\Global\vmx86” 解决
问题描述:vmware没有正常关闭,再次打开使用时蓝屏,在安全模式下再次打开不会蓝屏,但提示"无法打开内核设备 \.\Global\vmx86: 系统找不到指定的文件,你想要安装VMware ...
- 结对实验---基于GUI的四则运算
详细代码:https://git.coding.net/wangluo24/NO.2.git 结对伙伴:吕志哲(201421123021) &本人.许明涛 201421123024 一.题目要 ...
- 团队作业9——Beta版本展示博客
一. 骆杰宁(组长) 风格:少说话,多做事. 擅长技术:Jsp 编程兴趣:GUI 希望角色:PM 一句话宣言:年轻是本钱,不努力就不值钱. 胡丹丹 风格:不断沉淀自己 擅长技术:擅长TCP/IP协议模 ...
- 201521123006 《Java程序设计》第5周学习总结
1. 本周学习总结 1.1 尝试使用思维导图总结有关多态与接口的知识点. 1.2 可选:使用常规方法总结其他上课内容. 接口与抽象类拥有相同之处:(1)都代表系统的抽象层. (2)都不能被实例化(不能 ...
- 201521123095 《Java程序设计》第5周学习总结
1. 本周学习总结 1.1 尝试使用思维导图总结有关多态与接口的知识点. 2. 书面作业 1.1 com.parent包中Child.java文件能否编译通过?哪句会出现错误?试改正该错误.并分析输出 ...
- 201521123039《Java程序设计》 第二周学习总结
1.本周学习总结 答:上课老师介绍了Java基本的数据类型,需要注意的地方有:**java的整型数都为带符号数**,**byte类型范围(-127,128)太小,所以我们一般不使用byte型,byte ...