1. 在目标机器上 salplus / as sysdba
2.创建操作用目录
sql>create directory db_dir as 'D:\dbfile'
3.为用户授权改操作目录的读写权限
sql>grant read,write on directory db_dir to bigtail
4.退出sqlplus在系统cmd窗口里面执行导入命令
impdp bigtal/bigtail@mydatabse directory=db_dir dumpfile=db_bak.dmp table_exists_action=replace parallel=3 logfile=log.log
注:
导入到已经存在的库,table_exists_action=参数
当使用IMPDP完成数据库导入时,如遇到表已存在时,Oracle提供给我们如下四种处理方式:
SKIP:跳过已经存在的表,继续导入下一个对象,如果CONTENT设置了DATA_ONLY参数,则不能使用SKIP
APPEND:不会影响已存在的数据,在原有数据表的基础上继续增加数据
REPLACE:先删除drop掉表,然后创建create表,最后完成数据插入
TRUNCATE:删除已存在的行,然后插入所有的数据
注:
利用多核CPU的优势设置并行数以加速导入
parallel=4
一般不超过cpu核心数量的2倍
---------备库还原也可以先删除用户 删除表空间 再全部重新创建 这样导入会快点------
可能用到的语句:
查看用户拥有的权限
select * from dba_sys_privs where grantee='BIGTAIL' 用户名要大写
查看用户拥有的角色
select * from dba_role_privs where grantee='BIGTAIL' 大写用户名
查询用户的表空间
select default_tablespace from dba_users where username='EPUSER'; // 用户名大写
查询某个用户的临时表空间
select temporary_tablespace from dba_users where username='EPUSER'; // 用户名大写
删除表空间
DROP tablespace epuser including contents and datafiles;
删除临时表空间
DROP tablespace E8ITSM including contents and datafiles;
删除用户的表
delete tables
select 'drop table ' || table_name ||' from user_tables;
/*第1步:创建临时表空间(注意:D:\Project\OracleTableSpace\FHADMIN\ 手动创建路径) */
create temporary tablespace C##FHADMIN_TEMP tempfile 'D:\Project\OracleTableSpace\FHADMIN\C##FHADMIN_TEMP.dbf'
size 50m
autoextend on
next 50m maxsize 20480m
extent management local;
/*第2步:创建数据表空间 */
create tablespace C##FHADMIN_DATA
logging
datafile 'D:\Project\OracleTableSpace\FHADMIN\C##FHADMIN_DATA.dbf'
size 50m
autoextend on
next 50m maxsize 20480m
extent management local;
/*第3步:创建用户并指定表空间 密码是root */
create user C##FHADMIN identified by root default tablespace C##FHADMIN_DATA temporary tablespace C##FHADMIN_TEMP;
/*第4步:给用户授予权限 */
grant connect,resource,dba to C##FHADMIN;
第5步:创建目录
create or replace directory dp_dir as 'D:\test\';(手动创建)
PS:把要导入的DMP文件放入目录下。
第6步:授权用户cxdb读写目录文件
grant read, write on directory dp_dirC##FHADMIN;
第7步:导入DMP文件
impdp C##FHADMIN/root@orcl directory=dp_dir dumpfile=xx.dmp logfile=emp.log full=y;(在cmd执行)
PS:lodfile可以不加,不加系统自动创建。
本文由
bigwei08028 创作,除注明转载/出处外,均为本站原创,转载前请务必署名
最后编辑时间为: 2021-11-01 09:02 Monday