需求:把原系统Oracle 9205数据库迁移到一台新的服务器和阵列上,原系统有250GB的数据量,需要停止原来系统的业务,做冷备份和恢复。
解决方法如下:
◆1.在新的服务器和阵列上装好一个oracle 9206数据库;
◆2.停止原系统oracle 9205;
◆3.把原系统的数据冷拷贝到新的服务器上,然后按照以下步骤来进行恢复:
(1)、获取数据库相关信息
首先要查看一下数据库的文件内容:
select * from v$datafile;
select * from v$controlfile
select * from v$logfile;
数据文件:
G:ORADATAWEBOASYSTEM01.DBF
G:ORADATAWEBOAUNDOTBS01.DBF
G:ORADATAWEBOACWMLITE01.DBF
G:ORADATAWEBOADRSYS01.DBF
G:ORADATAWEBOAEXAMPLE01.DBF
G:ORADATAWEBOAINDX01.DBF
G:ORADATAWEBOAODM01.DBF
G:ORADATAWEBOATOOLS01.DBF
G:ORADATAWEBOAUSERS01.DBF
G:ORADATAWEBOAXDB01.DBF
控制文件:
G:ORADATAWEBOACONTROL01.CTL
G:ORADATAWEBOACONTROL02.CTL
G:ORADATAWEBOACONTROL03.CTL
重做日志文件:
G:ORADATAWEBOAREDO03.LOG
G:ORADATAWEBOAREDO02.LOG
G:ORADATAWEBOAREDO01.LOG
(2)、移动应用数据文件
关闭数据库,拷贝数据文件到另外一个目录下。需要copy 的文件有:
system01.dbf
indx01.dbf
temp01.dbf
users01.dbf
应用数据文件
(3)、修改数据库文件的位置
启动MOUNT模式
startup mount;
alter database rename file ’g:oradataweboaSYSTEM01.DBF’ to ’d:oradataweboaSYSTEM01.DBF’;
注意只能进行更改移动的数据库文件,不包括控制文件与日志文件,TEMP文件。
移动控制文件
(1)备份SPFILE中的内容:
再重新启动数据库:
startup;
create pfile=’c:init.ora’ from spfile;
(2)修改init.ora文件中的内容:
*.control_files=’oradataocpcontrol01.ctl’,’oradataocpcontrol02.ctl’,’oradataocpcontrol03.ctl’
进行更改已经复制的目录位置。
Shutdown 数据库
(3)将控制文件复制过去
将三个控制文件移动到上面所修改的的目录下。
(4)倒入参数文件
以init.ora参数方式启动:
startup pfile=’oracleinit.ora’;
create spfile from pfile=’oracleinit.ora’;
shutdown immediate;
startup; 从spfile中进行启动。
这样控制文件移动工作就结束了。
重建或重定位LOG文件
解决日志文件的移动方式有两种,一种是移动(rename方式)另一种是重新创建。
(1)移动LOG文件
重新移动数据库文件与移动系统数据库文件是一样的方法,只是要求数据库必须是“startup mount”方式进行。
startup mount
alter database rename file ’g:oradataweboaREDO01.LOG’ to ’d:oradataweboaREDO01.LOG’;
alter database rename file ’g:oradataweboaREDO02.LOG’ to ’d:oradataweboaREDO02.LOG’;
alter database rename file ’g:oradataweboaREDO03.LOG’ to ’d:oradataweboaREDO03.LOG’;
四、重建系统监时(temp)文件系统
在移动数据表空间时,TEMP文件是不能被移动的,这里要求可以进行重建一个TEMP表空间,并设置为系统默认的TEMP文件系统。
然后再册除原来的TEMP表空间,达到移动表空间的过程。
迁移临时表空间
◆1.startup –启动数据库
◆2. create temporary tablespace “temp02” tempfile ’d:oradataweboatemp02.dbf’ size 500m extent management local uniform size 10m; –创建中转临时表空间
◆3.alter database default temporary tablespace temp2; –改变缺省临时表空间 为刚刚创建的新临时表空间temp2
◆4.drop tablespace temp including contents and datafiles;–删除原来临时表空间
◆5 然后再删除原来的TEMP文件就可以了。
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
相关推荐
-
OpenWorld18大会:Ellison宣布数据库的搜寻和破坏任务
在旧金山举行的甲骨文OpenWorld 2018大会中,甲骨文首席技术官(CTO)兼创始人Larry Elli […]
-
甲骨文自治数据库亮相 带来云计算新希望
早前甲骨文还不在云计算公司之列,而现在该公司正在迅速弥补其失去的时间。甲骨文的云计算核心是甲骨文自治数据库(O […]
-
ObjectRocket着力发展Azure MongoDB服务
MongoDB吸引了微软公司的注意力,微软公司计划针对运行于该公司2017年发布的Azure Cosmos D […]
-
2017年12月数据库流行度排行榜 定格岁末排名瞬间
数据库知识网站DB-engines最近更新的2017年12月份数据库流行度排名情况是否能提供更多的看点呢?TechTarget数据库网站将与您分享12月份的榜单排名情况,让我们拭目以待。