oracle 数据库迁移

Oracle 数据库迁移 操作
1. 创建表空间
i. 在plsql以sysdba登陆
命令窗口:
plsql conn / as sysdba


ii. 删除表空间,如果存在
--删除表空间
drop tablespace EMCS_66_DATA including contents and datafiles cascade constraints;

drop tablespace EMCS_66_TEMP including contents and datafiles cascade constraints;


iii. 打开一个”SQL window”,执行一下脚本创建表空间

--oracl 的默认路径为app\Administrator\oradata\orcl
--创建临时表空间
create temporary tablespace EMCS_66_TEMP 
tempfile 'D:\oracle\oradata\emcs\emcs_66_temp.dbf' 
size 100m 
autoextend on 
next 50m 
maxsize 2048M              --注意最大空间
extent management local;


--创建数据表空间
create tablespace EMCS_66_DATA 
logging datafile 'D:\oracle\oradata\emcs\emcs_66_data.dbf' 
size 100m 
autoextend on 
next 32m 
maxsize 2048m 
extent management local;

2. 创建用户
i. 执行一下脚本创建用户

--创建用户并指定表空间 
create user emcs 
identified by emcs 
default tablespace EMCS_66_DATA 
temporary tablespace EMCS_66_TEMP;

ii. 给用户赋予权限
--给用户授予权限

grant connect,resource,dba to emcs;  --(dba指定所有权限)
grant connect,resource, EXP_FULL_DATABASE,IMP_FULL_DATABASE  to  emcs;

3. 导出数据库
i. 在数据来源数据库导出数据库,导出脚本
 (由DBA用户导出的数据在导入时也必须使用DBA用户才能导入)

--导出用户emcs的内容
exp emcs/emcs@orcl file=d:\emcs_62_20130528_bak.dmp owner=(emcs)


4. 导入数据库
i. 目标数据库执行一下脚本导入dmp文件

imp emcs/emcs@orcl full=y file= d:\emcs_62_20130528_bak.dmp ignore=y


ii. 如果用户权限不够,可以给用户赋予足够权限。也可以暂时赋予dbaJ角色,然后在取消DBA用户角色

GRANT EXP_FULL_DATABASE,IMP_FULL_DATABASE  to  emcs;

猜你喜欢

转载自yuxiatongzhi.iteye.com/blog/1881466