EXP/IMP迁移数据

2014-11-24 18:00:46 · 作者: · 浏览: 0

原来的数据库服务器运行在HP DL388G7服务器上面,内存32G,由于业务增长,内存吃紧,加上时不时出现服务器硬件故障,由于是单实例单服务器,存在单点发现,于是打算采取一些措施改善一下:


1)升级服务器内存


2)并搭建服务器操作系统级别的双机


3)迁移数据库数据到新服务器


——————————————————————————————————————————————————————————



EXP/IMP对于小数据量的数据库,是一个不错的迁移工具。 迁移数据过程如下,分两大步,导出和导入。



more / exp20130118/exp.sh


date


expdp bv/bv32EBAI2 DIRECTORY=DATA_PUMP_DIR2 DUMPFILE=exp_2013-1-19.dmp LOGFILE=exp_2013-1-19.log SCHEMAS=bv


date



exp目标目录放在本地还是存储,放哪个目录?是否创建directory


SQL> select * from dba_directories;


OWNER DIRECTORY_NAME DIRECTORY_PATH


SYS DATA_PUMP_DIR1 /exp


SYS ORACLE_OCM_CONFIG_DIR /oracle/product/10.2/db/ccr/state



create directory data_pump_dir2 as ' /exp20130118';


找一个业务不繁忙的时间,执行导出脚本即可。



说明:


1google网上大多数文章都说,如果用exp/imp方式迁移数据,在新服务器上,只需要创建一个用户用于导入就可以,但是我第一次导入时只创建一个用户,就会报一大堆错,最后还是创建所有用户,知道的同学告诉我一声,谢谢。


2)我这里偷点懒,直接用toad拷贝创建用户的语句,连加密的密码也有了,方便。



Toad里边拷贝创建表空间和用户的脚本,直接粘贴进行初始化准备工作。表空间主要是看看和用户相关的都有哪些表空间,可以用sql语句查询;用户就得一个一个看。



11创建一个参数文件


CREATE PROFILE LIMIT_SESSION LIMIT


SESSIONS_PER_USER 30


CPU_PER_SESSION DEFAULT


CPU_PER_CALL DEFAULT


CONNECT_TIME DEFAULT


IDLE_TIME DEFAULT


LOGICAL_READS_PER_SESSION DEFAULT


LOGICAL_READS_PER_CALL DEFAULT


COMPOSITE_LIMIT DEFAULT


PRIVATE_SGA DEFAULT


FAILED_LOGIN_ATTEMPTS DEFAULT


PASSWORD_LIFE_TIME DEFAULT


PASSWORD_REUSE_TIME DEFAULT


PASSWORD_REUSE_MAX DEFAULT


PASSWORD_LOCK_TIME DEFAULT


PASSWORD_GRACE_TIME DEFAULT


PASSWORD_VERIFY_FUNCTION DEFAULT;