[精华] 请教关于裸设备备份, 如果从一台机器备份到另外一台机器. |
|
| http://www.chinaunix.net 作者:lordshand 发表于:2008-06-28 22:25:03 |
|
【发表评论】
【查看原文】
【AIX讨论区】【关闭】
|
[size=5]我的是Aix系统+oracle 9i, 数据库文件用的都是裸设备, 现在从新装了一台机器, 装同样的数据库软件, 依照原来的系统存储结构建立了同样的存储设备, 各位有什么好办法, 能把数据库的裸设备复制到新装的机器上, 好像只能用dd,
用dd的话, 先把数据库的裸设备写到文件, 在传到新机器上, 再写到新机器上的裸设备上, 各位有没有什么更方便的方法, 因为裸设备文件比较多, 400来个, 大概4G一个...
望资深者不吝指教!!!!!!!!!!!!!!!!![/size]
herowangzj 回复于:2007-10-22 16:38:20
建好基本库, 然后直接exp imp来导数据.
zx0724xin 回复于:2007-10-22 17:12:07
用cplv应该也可以吧~
jnwwww 回复于:2007-10-22 17:12:11
应该是在盘阵上吧,那不就简单死了?
lordshand 回复于:2007-10-22 17:18:42
两个系统硬件不一样, 原系统是p550+DS4300, 新系统是p630+7133.
lordshand 回复于:2007-10-22 17:19:24
太慢..
zlg88 回复于:2007-10-22 18:35:02
两套系统迁移oracle还不好办么?
先在旧系统上做exp
然后在新系统上做imp
如果是在同一系统里还可以做table space联机迁移啊!
chinadns 回复于:2007-10-22 20:45:18
rman备份,恢复;
mirrorvg,拔盘unmirror;
splitvg;
[ 本帖最后由 chinadns 于 2007-10-22 20:46 编辑 ]
herowangzj 回复于:2007-10-23 21:42:22
"太慢"? , 首先你就没描述清楚你的具体环境, 当然认为你是异机迁移, 你认为exp\ imp慢? ORACLE自己的工具本来就是干这个的, 你非要用AIX操作系统的dd\cplv或者mklvcopy吗? 你试试吧. 这些命令当然可以,但那是主机系统不变的情况下做数据迁移优先考虑的,你连数据库软件都换机器了,你说直接装个oracle软件,然后把原来的LV dd过来,你的数据库能用吗?乖乖用exp/imp比什么都好.
lordshand 回复于:2007-10-24 10:16:16
[font=黑体][size=5][color=Blue]原系统是一个HA结构, 由于DS4300要升级微码, 怕有数据丢失, 我们做的是逻辑备份, 如果恢复数据的话, 由于数据量大, 1T多, 时间太长, 因为这个生产系统不能停机时间长了. 所以从新装一台机器, 如果升级微码数据有损失, 就用备用机器先顶上用
我的数据文件, 控制文件都, log文件都是建立在裸设备上的, 用exp倒出的话, 一是时间估计比较慢, 二是 本地系统没有空间存放倒出大文件, 在网上查了一下用dd if=lvname |rsh bakhost "dd of=lvname"这种方式, 请问哪位高手这么做过, 不吝赐教, 感激不尽..>!!!!![/color][/size][/font]
jtw 回复于:2007-10-24 13:47:52
dd if=lvname |rsh bakhost "dd of=lvname"
这种方式没做过。不过,我觉得应该没什么问题。但你得保证两边的oracle参数一致。
banker 回复于:2007-10-24 15:20:38
cplv或者按照vg来说可能也比较大,更慢
dd的话能稍好,也差不多
从数据库操作的方式最好,我认为
lordshand 回复于:2007-11-01 16:47:10
搞定了, 谢谢关注。。。。
chinadns 回复于:2007-11-01 19:43:56
哥们搞定了 也共享下过程嘛
lordshand 回复于:2007-11-02 10:05:10
[size=4][font=黑体]先在备机上建立相同的裸设备, 在备机上设置信任关系, 使得生产系统oracle用户可以rlogin到备份机器。
然后用下面的教本备份
sqlplus /nolog <<EOF
conn / as sysdba
alter tablespace tbsname begin backup;
!dd ibs=4096 skip=1 if=/dev/rawdevice|rsh backuphost dd obs=4096 seek=1 of=/dev/rawdevice;
alter tablespace tbsname end backup;
EOF
注意的一点是, 备份裸设备的时候, 不要把备份机器上lvcb覆盖了, oracle默认空出前面4k开始写数据, 所以在目标设备上要开头要空出4k。[/font][/size]
lordshand 回复于:2007-11-02 10:06:12
忘了说[size=4][font=黑体][color=Blue]一句, 备份期间的事务通过归档日志在同步数据。[/size][/color][/font]
feiaix 回复于:2007-11-02 10:57:37
楼主强,学习了.
lj_cd 回复于:2007-11-02 11:16:19
LZ是很强哟
yanbing 回复于:2007-11-07 00:13:11
请教一下楼主:
这么做实际上是通过网络在逐个DD每个tablespace咯,算上每个tablespace DD以及全部完成后使用归档日志同步备份期间数据的时间,总体的执行效率是如何的呢?
排除掉没有额外空间存放dmp文件的前提下,这样的方法执行效率和exp/imp差距会有多大呢?
不管如何,这是个实际案例下的非常规解决方法,建议加精!
gigo521 回复于:2007-11-07 08:43:37
UP
lordshand 回复于:2007-11-07 09:54:28
[color=Blue][font=黑体][size=4]我从来没有用exp/imp备份过1T的数据, 而且系统是生产系统, 每天事务非常多, 每天大概归档30G左右, 数据变化频繁, exp/imp我不知道怎么保持数据同步。
这样通过网络备份, 大概是每秒7Mbyte, 100M的网络, 恢复归档比较慢, 一天左右, dd备份大概用了三十多小时。
这样方案 还比较顺利, 希望大家以碰到类似情况, 用的上。[/size][/font][/color]
lordshand 回复于:2007-11-07 10:02:38
[color=Blue][font=黑体][size=4]如果用exp/imp还需要建库, 建表空间一些数据结构操作, 相对要麻烦一些。
用dd这样在线物理备份能满足我们不停业务的需求, 而且绝对保证数据同步。[/size][/font][/color]
psc2001 回复于:2007-11-07 10:05:23
1. 原生产系统就是单纯升级DS4300微码?
那还要主机备份干嘛 直接搞个raid做 vg mirror
2 本地没有空间导出大文件
借台raid做新vg fs backup 之后
exportvg
新主机importvg mount fs
重定向restore db
zoukewin 回复于:2008-06-28 13:59:12
用RMAN先转出来,再恢复到备份机器上。
应该和楼主的结果一样的。
yddll 回复于:2008-06-28 22:25:03
这方法,还不如直接rman呢
没有磁带库之类的备份设备吗?这么多数据难道没有备份方案?
|
 |
原文链接:http://bbs.chinaunix.net/viewthread.php?tid=1005758
转载请注明作者名及原文出处
|
|
|