您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

单实例数据库迁移到RAC环境

2024/4/5 1:33:03发布13次查看
从本节开始,将介绍下如何将单实例数据库迁移到rac环境。在生产环境中,随着业务和数据量的加大,这种需求和场景不可避免,一般来
从本节开始,将介绍下如何将单实例数据库迁移到rac环境。在生产环境中,随着业务和数据量的加大,这种需求和场景不可避免,一般来讲主要由以下四种方法实现迁移过程!
1:使用expdp/impdp数据泵导出导入,或者使用传统的exp/imp导入导出,后者效率低下;
2: 使用在线表空间迁移技术快速导出导入,前提是数据库的字符集要一致;
3:使用rman的备份进行异机恢复
4: 对单实例数据库构建基于rac的物理备库,进而切换备库为主库,这是生产环境中最为推荐的做法
本节中介绍使用expdp/impdp数据泵导出导入的方式实现迁移!
环境介绍:
数据库的版本均为10.2.0.5
操作系统的版本单实例数据库(源库)为rhel5.4 64 bit
rac(目标数据库)为ceontos4.8 64bit
一:查看源库的版本和表空间情况,同时在源库上建新的表空间和用户,插入数据,建立索引,,创建目录对象,使用expdp到出用户的schema等
sql> select * from v$version;
banner
----------------------------------------------------------------
oracle database 10g enterprise edition release 10.2.0.5.0 - 64bi
pl/sql release 10.2.0.5.0 - production
core    10.2.0.5.0      production
tns for linux: version 10.2.0.5.0 - production
nlsrtl version 10.2.0.5.0 - production
sql> show parameter compat;
name                                 type        value
------------------------------------ ----------- ------------------------------
compatible                           string      10.2.0.5.0
plsql_v2_compatibility               boolean     false
sql> select tablespace_name,file_name from dba_data_files;
tablespace_name      file_name
-------------------- --------------------------------------------------
users                /u01/app/oracle/oradata/orcl/users01.dbf
sysaux               /u01/app/oracle/oradata/orcl/sysaux01.dbf
undotbs1             /u01/app/oracle/oradata/orcl/undotbs01.dbf
system               /u01/app/oracle/oradata/orcl/system01.dbf
example              /u01/app/oracle/oradata/orcl/example01.dbf
sql> create tablespace exp_rac datafile
  2  '/u01/app/oracle/oradata/orcl/exp_rac01.dbf' size 300m
  3  autoextend  on next 10m maxsize unlimited
  4* extent management local
tablespace created.
sql> create tablespace exp_rac_index datafile
  2  '/u01/app/oracle/oradata/orcl/exp_rac_index01.dbf' size 300m
  3  autoextend  on next 10m maxsize unlimited
  4* extent management local
tablespace created.
sql> select tablespace_name,file_name from dba_data_files;
tablespace_name      file_name
-------------------- --------------------------------------------------
users                /u01/app/oracle/oradata/orcl/users01.dbf
sysaux               /u01/app/oracle/oradata/orcl/sysaux01.dbf
undotbs1             /u01/app/oracle/oradata/orcl/undotbs01.dbf
system               /u01/app/oracle/oradata/orcl/system01.dbf
example              /u01/app/oracle/oradata/orcl/example01.dbf
exp_rac              /u01/app/oracle/oradata/orcl/exp_rac01.dbf
exp_rac_index        /u01/app/oracle/oradata/orcl/exp_rac_index01.dbf
sql> create user test1 identified by oracle
  2  default tablespace exp_rac
  3  temporary tablespace temp
  4  quota unlimited on  exp_rac
  5* account unlock;
user created.
sql> grant connect,resource to test1;
grant succeeded.
sql> create table test1.source as select * from dba_source;
table created.
sql> insert into test1.source select * from test1.source;
295491 rows created.
sql> /
590982 rows created.
sql> /
1181964 rows created.
sql> commit;
commit complete.
sql> analyze table test1.source compute statistics;
table analyzed.
sql> select count(*) from test1.source;
  count(*)
----------
   2363928
sql> select sum(bytes/(1024*1024)) mb from dba_extents
  2  where segment_name='source'
  3  and owner='test1';
        mb
----------
       408
[oracle@server49 orcl]$ ll -h exp_rac01.dbf
-rw-r----- 1 oracle oinstall 411m jan  1 19:06 exp_rac01.dbf
sql> create index test1.i_source
  2  on test1.source(type)
  3  tablespace exp_rac_index;
index created.
sql> select table_name,tablespace_name from dba_indexes
  2  where owner='test1' and index_name='i_source';
table_name                     tablespace_name
------------------------------ --------------------
source                         exp_rac_index
sql> create directory expdp_dir as '/home/oracle/expdp_dir';
directory created.
sql> grant read,write on directory expdp_dir to test1;
grant succeeded.
sql> !mkdir -p /home/oracle/expdp_dir
[oracle@server49 ~]$ expdp test1/oracle directory=expdp_dir dumpfile=source.dmp logfile=source.log  schemas=test1
export: release 10.2.0.5.0 - 64bit production on sunday, 01 january, 2012 19:38:30
copyright (c) 2003, 2007, oracle.  all rights reserved.
connected to: oracle database 10g enterprise edition release 10.2.0.5.0 - 64bit production
with the partitioning, olap, data mining and real application testing options
starting test1.sys_export_schema_01:  test1/******** directory=expdp_dir dumpfile=source.dmp logfile=source.log schemas=test1
estimate in progress using blocks method...
processing object type schema_export/table/table_data
total estimation using blocks method: 408 mb
processing object type schema_export/pre_schema/procact_schema
processing object type schema_export/table/table
processing object type schema_export/table/index/index
processing object type schema_export/table/constraint/constraint
processing object type schema_export/table/index/statistics/index_statistics
processing object type schema_export/table/comment
processing object type schema_export/table/statistics/table_statistics
. . exported test1.source                            280.8 mb 2363928 rows
master table test1.sys_export_schema_01 successfully loaded/unloaded
******************************************************************************
dump file set for test1.sys_export_schema_01 is:
  /home/oracle/expdp_dir/source.dmp
job test1.sys_export_schema_01 successfully completed at 19:39:03
二:复制impdp导出的相关文件到目标库上,同时在目标库上创建相应的用户和表空间以及目录对象等
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product