windows下的Oracle怎么迁移到Linux平台下
这篇文章主要介绍“windows下的Oracle怎么迁移到Linux平台下”,在日常操作中,相信很多人在windows下的Oracle怎么迁移到Linux平台下问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”windows下的Oracle怎么迁移到Linux平台下”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
环境:
源库为win平台下的11.2.0.1
目标库为redhat6.10下的11.2.0.4
步骤:
先在目标服务器创建好系统,安装好数据库软件,然后在源库这边做个全备,创建个pfile文件,传送到目标服务器上
先编辑Pfile,因为我目标环境和源环境的硬件设置差不多,就没改pfile的,生产环境根据实际情况做调整
然后进去sql下,根据修改后的pfile启动到nomout
--alter session set nls_language=american;
SYS@orcl>startup nomount pfile='/xie/INITorcl.ORA';
启动好后再去rman里恢复控制文件
RMAN>restore controlfile from '/xie/C-1534390551-20190426-01';
恢复完成后启动到Mount
RMAN>sql 'alter database mount';
因为源库环境有记录着备份,目标环境没有,就做个检查
RMAN>crosscheck backup;
RMAN>delete expired backup;
然后把拷贝来的备份注册到rman里
RMAN>catalog start with '/xie/';
然后恢复:
RMAN>run{
RMAN>set newname for database to '/u01/app/oracle/oradata/orcl/dbf_%U';
RMAN>restore database;
RMAN>}
switch来将新的路径写到控制文件
RMAN>switch database to copy;
然后recover
RMAN>recover database;
开启数据库,使用resetlogs upgrade参数来重建redo文件
SQL> alter database open resetlogs upgrade;
顺便生成一下spfile
SQL> create spfile from pfile='/xie/INITorcl.ORA';
temp数据文件因为不被RMAN所保护,需要检查tempfile:
SQL> col name for a50;
SQL> select a.ts# "TAB_NUM" ,t.name "TAB_NAME" ,a.name "TAB_DIR" from gv_$tempfile a,v$tablespace t where t.ts#=a.ts#
SQL> create temporary tablespace temp1 tempfile '/u01/app/oracle/oradata/orcl/temp001.dbf' size 1024M;
SQL> alter database default temporary tablespace temp1;
SQL> drop tablespace 查出来的无效的 including contents;
SQL> select * from dba_temp_files;
重新编译下:
SQL> @?/rdbms/admin/utlrp.sql;
更新下数据字典
SQL> @?/rdbms/admin/catupgrd.sql
然后启动
完成
到此,关于“windows下的Oracle怎么迁移到Linux平台下”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341