如何逻辑迁移Oracle数据库

日期: 2008-12-22 作者:蒙昭良 来源:TechTarget中国 英文

环境:

OS:Windows Server2003

Oracle:Oracle10.2.0.1.0

目前临时的数据库为IP1,需要把该数据库中的数据迁移到另数据库(IP2)中

1.1    在数据库中(IP2)增加监听信息

在数据库(IP2)中E:oracleproduct10.2.0db_1NETWORKADMINtnsnames.ora文件中增加上临时数据库(IP1)的监听信息。增加内容如下:


XBOMS_IP1 =
 (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST =IP1)(PORT = 1521))
    (CONNECT_DATA =
    (SID=XBOMS)
      (SERVER = DEDICATED)
     )
)

  1.2 导出临时数据库(IP1)脚本

在数据库(IP2)的DOS命令窗口中运行:


expxbomswas/password@XBOMS_IP1  file=F:InstallOracleImage20081217XiBu.dump log=F:InstallOracleImage20081217XiBu.log

1.3在数据库中创建需要的表空间

1、在临时数据库(IP1)中查看共有多少个表空间,然后在数据库(IP2)中创建相应的表空间

查看数据库(IP1)表空间,在SQLPLUS查看:


SQL> select * from dba_tablespaces;

查看创建表空间的SQL语句:


SQL>select dbms_metadata.get_ddl(‘TABLESPACE’,’PUB_NORM_SPACE’) from dual;

2、在数据库(IP2)中创建对应的表空间

查看数据文件的位置:


SQL> select * from v$datafile;

创建相应的表空间:


SQL> create tablespace RMAN_SPACE
datafile ‘E:ORACLEPRODUCT10.2.0ORADATAXBOMSRMAN_SPACE.DBF’
size 20M AUTOEXTEND ON;       (数据文件自动扩展)

把临时数据库中的表空间相应的创建好!

1.4在数据库创建相应的用户,相关权限

1、在临时数据库(IP1)中查找相关的用户


SQL>select * from dba_users
where account_status=’OPEN’; 

 2、在临时数据库(IP1)中查看每个用户的角色:


SQL>select * from dba_role_privs
where grantee in (‘XBDT’,’XBOMSWAS’,’XBOMSREAD’);

  3、创建相关的用户,并赋予相关权限:


SQL> create user xbomswas
identified by xibu0995xbmima;

SQL> grant connect,resource,dba to xbomswas;

SQL> create user XBDT
identified by XBDT;

SQL>grant connect,resource to XBDT;

SQL>create user XBOMSREAD
identified by XBOMSREAD;
SQL>grant connect to XBOMSREAD;

1.5在数据库中导入数据

在数据库(IP2)的DOS命令窗口中运行:

      


imp  xbomswas/password@xboms   full=y   rows=y    ignore=yes  file=F:InstallOracleImage20081217XiBu.dump   log=F:InstallOracleImageImp20081217XiBu.log

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

相关推荐