oracle数据库在linux上的克隆(clone)和迁移
作者:陈海青 (joson) http://www.chq.name/
日期:2006。09。23
版权声明:转载或引用本网版权所有之内容须注明“转自(或引自)chq.name (Junit fans)”字样,并标明本网站网址http://www.chq.name
一、起因:
为搭建一个开发、测试环境,需要克隆一个现有的oracle数据库系统,于是记录了操作过程,供参照。
二、系统环境:
为搭建一个开发、测试环境,需要克隆一个现有的oracle数据库系统,于是记录了操作过程,供参照。
二、系统环境:
1)被克隆的主机(简称主机http://www.chq.name/):操作系统:redhat 企业版 REHL4.0,数据库:oracle9i
1)主、客机硬件配置要一致;
2)硬盘容量要一致
优点:不必进行操作系统和数据库安装
二)远程拷贝数据库程序和数据文件。
优点:不必安装数据库软件,不必恢复数据。
缺点:需要为运行数据库管理程序进行额外配置。
限制:要选择好合适的拷贝方式(rcp/rsync/cp等),才能高效易用
三)使用exp/imp或者其他数据库备份和恢复手段 优点:经典方法,安全可靠 缺点:
1)速度慢;
2)需要中间性数据存储空间
最后,考虑到效率和空间的因素,最后选择远程拷贝,使用rsync,配置简便、高效、易于管理。
最后,考虑到效率和空间的因素,最后选择远程拷贝,使用rsync,配置简便、高效、易于管理。
四、操作步骤:
一)下载并在主客机上安装rsync软件,略。
二)编辑主客机的hosts文件,加上对方主机
# vi /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 http://www.chq.name/ localhost.localdomain localhost
192.168.17.35 http://www.chq.name/ localhost.localdomain localhost
192.168.17.22 http://www.chq.name/
三)在主机上进行配置:
三)在主机上进行配置:
1:建立并编辑编辑rsyncd配置文件[
root@www.chq.name_22 ~]# vi /etc/rsyncd.conf
root@www.chq.name_22 ~]# vi /etc/rsyncd.conf
uid=oracle
gid=dbause
chroot=nomax
connections=4
use chroot=no
logfile=/var/log/rsyncd.log
pid file=/var/run/rsyncd.pid
lock file=/var/run/rsyncd.lock
auth users=root
secrets file=/etc/rsyncd.pwd
[opt_oracle]
[opt_oracle]
path=/opt/oracle
comment=backup oracle
ignore errors
read only=yes
list=no
auth users=root
。。。。。。
。。。。。。
2:建立并编辑编辑rsyncd配置文件
[http://www.chq.name/_22 ~]# vi /etc/rsyncd.pwd
oracle:www.chq.name
3:启动rsync服务器,检查是否运行
四)客户机上的操作
1:安装oracleserver的主版本
(我用的是9.2.0),不必打补丁,主要目的是通过安装来,避免进行其他设置。(由于没时间测试要如何配置,暂时使用这个简便办法)
1:安装oracleserver的主版本
(我用的是9.2.0),不必打补丁,主要目的是通过安装来,避免进行其他设置。(由于没时间测试要如何配置,暂时使用这个简便办法)
3:传送文件:
[http://www.chq.name/_35]# rsync -azv rsync:oracle@www.chq.name_22/oradata /oradata
Password:
receiving file list ... donedb/db2_cx_tmp01.dbf。。。db/db2_tmp01.dbf。。。
$ cd /opt/oracle/product/9.2.0/net*/admin[
$ vi listener.ora
$ vi listener.ora
4.2)更改数据库tns配置文件
# TNSNAMES.ORA Network Configuration File: /opt/oracle/product/9.2.0/network/admin/tnsnames.ora# Generated by Oracle configuration tools.
http://www.chq.name/ = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = http://www.chq.name)(port/ = 1521)) ) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = http://www.chq.name/) ) )
http://www.chq.name/ = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = http://www.chq.name)(port/ = 1521)) ) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = http://www.chq.name/) ) )
~ "tnsnames.ora" 101L, 1938C written
4.3)复制来创建数据库spfile配置文件[http://www.chq.name/_35]cd /opt/oracle/product/9.2.0/dbs/
http://www.chq.name/ = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = http://www.chq.name)(port/ = 1521)) ) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = http://www.chq.name/) ) )
http://www.chq.name/ = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = http://www.chq.name)(port/ = 1521)) ) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = http://www.chq.name/) ) )
~ "tnsnames.ora" 101L, 1938C written
4.3)复制来创建数据库spfile配置文件[http://www.chq.name/_35]cd /opt/oracle/product/9.2.0/dbs/
$ cp spfilewww.chq.name_22.ora spfilewww.chq.name_35.ora
4.4)复制来创建数据库管理口令文件
[http://www.chq.name/_35]$ mv orapwwww.chq.name_22 orapwwww.chq.name_35
4.4)复制来创建数据库管理口令文件
[http://www.chq.name/_35]$ mv orapwwww.chq.name_22 orapwwww.chq.name_35
4.5)启动数据库,
[http://www.chq.name/_35]$ sqlplus "/as sysdba"SQL> startupORACLE instance started.
。。。Database mounted.Database opened.
4.6)启动监听器服务
[http://www.chq.name/_35]$ lsnrctl start
五、几点说明:
1:rsync在rehl中默认已经安装。2:要拷贝数据库管理程序目录和数据文件目录,主机与客机路径要完全一致
==================================
参考资料:
用rsync对网站进行镜像备份(文章来源:http://xfocus.org/)
。。。Database mounted.Database opened.
4.6)启动监听器服务
[http://www.chq.name/_35]$ lsnrctl start
五、几点说明:
1:rsync在rehl中默认已经安装。2:要拷贝数据库管理程序目录和数据文件目录,主机与客机路径要完全一致
==================================
参考资料:
用rsync对网站进行镜像备份(文章来源:http://xfocus.org/)
No comments:
Post a Comment