• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

Linux同平台Oracle数据库整体物理迁移

mysql 搞代码 4年前 (2022-01-09) 10次浏览 已收录 0个评论

Linux同平台数据库整体物理迁移,需求:A机器不再使用,要将A机器的Oracle迁移到B机器。

Linux同平台数据库整体物理迁移
需求:A机器不再使用,要将A机器的Oracle迁移到B机器。
之前写过类似需求的文章:
本文这次旨在更多用到自动化通用的整合脚本去实现同平台的数据库整体迁移。
1.A机器操作

2.B机器操作

A机器操作

0.系统版本:
[root@DB-A tmp]# uname -a
Linux DB-A 2.6.32-358.el6.x86_64 #1 SMP Tue Jan 29 11:47:41 EST 2013 x86_64 x86_64 x86_64 GNU/Linux
[root@DB-A tmp]# cat /etc/issue
Red Hat Enterprise Linux Server release 6.4 (Santiago)
Kernel \r on an \m

1.A数据库当前信息
select status from v$instance union all
select open_mode from v$database union all
select * from v$version where rownum = 1;

2.确认参数文件、控制文件的位置
show parameter pfile
show parameter control_files

这里需要根据当前的spfile创建pfile文件,后面要用到。
create pfile from spfile;

3.数据文件、临时文件、重做日志文件的位置
set linesize 140 pagesize 100
se本文来源gaodaimacom搞#代%码@网-lect name from v$datafile union all
select name from v$tempfile union all
select member from v$logfile;

4.干净关闭数据库:
shutdown immediate;

5.确定ORACLE软件目录并打包传到B机器
echo $ORACLE_BASE
/ora/app/oracle
tar -zcvf /tmp/oracle.tar.gz /ora/app/oracle

将打包的Oracle软件目录以及所有的参数文件,控制文件,数据文件,临时文件,重做日志文件都拷贝到B机器。

B机器操作

0.系统版本:
[root@DB-B irnop]# uname -a
Linux DB-B 2.6.32-431.el6.x86_64 #1 SMP Sun Nov 10 22:19:54 EST 2013 x86_64 x86_64 x86_64 GNU/Linux
[root@DB-B irnop]# cat /etc/issue
Red Hat Enterprise Linux Server release 6.5 (Santiago)
Kernel \r on an \m

1.安装依赖包和调整系统参数

略。可参考:

2.解压ORACLE_HOME到B机器上规划的软件安装目录:/u01/app/oracle
tar zxvf oracle.tar.gz

解压后的oracle目录直接mv到/u01/app下

3.修改参数文件pfile并启动数据库到nomount

根据B机器实际情况修改数据库占用内存的值,,并确认参数文件中写的路径都是存在的。
startup nomount pfile=’$ORACLE_HOME/dbs/initirnop.ora’
SQL> startup nomount pfile=’$ORACLE_HOME/dbs/initirnop.ora’
ORACLE instance started.

Total System Global Area 2.3717E+10 bytes
Fixed Size 2239176 bytes
Variable Size1.3153E+10 bytes
Database Buffers 1.0536E+10 bytes
Redo Buffers 25612288 bytes

4.启动到mount
SQL> alter database mount;

Database altered.

5.数据文件,临时文件,日志文件的rename重定向
set linesize 140 pagesize 100
select ‘alter database rename file ”’||name||”’ to ”/xxx’||name||”’;’ from v$datafile union all
select ‘alter database rename file ”’||name||”’ to ”/xxx’||name||”’;’ from v$tempfile union all
select ‘alter database rename file ”’||member||”’ to ”/xxx’||member||”’;’ from v$logfile;

根据实际情况将old_name替换成new_name
old_name: /xxx/oradata
new_name: /new/oradata

然后执行重定向SQL,检查当前路径是否修改正确:
select name from v$datafile union all
select name from v$tempfile union all
select member from v$logfile;

修改系统的目录权限:
chown -R oracle:oinstall /new/oradata

6.打开数据库:
SQL> alter database open;

本文永久更新链接地址


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:Linux同平台Oracle数据库整体物理迁移

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址