Oracle数据库dump文件的导入与导出及创建表空间
在数据库服务器上执行impdp/expdp命令进行dump文件的导入导出
- 导出命令
expdp username//password@ip:端口/实例 directory=XXX_DIR dumpfile=XXX%U.dump parfile=xxx.par logfile=xxx.log
- 导入命令
impdp username//password@ip:端口/实例 directory=XXX_DIR dumpfile=XXX%U.dump table_exists_action=replace logfile=xxx.log
- 注意事项:
表空间是否充足,导入过程中如遇到表空间不足会发生循环报错等待,新增对应的表空间即可继续运行
-
建立dump文件存放目录,并授权给Oracle用户。
mkdir /data/sharedata/mydump
chown -R oracle:oinstall /data/sharedata/mydump
-
配置Oracle环境变量
ORACLE_HOME=/oralce/product/11.2.0.4/dbhome
PATH=$ORACLE_HOME:$PATH
-
启动Oracle监听器
打开监听器:lsnrctl start
查看监听器运行状态:lsnrctl status
-
启动Oracle实例
sqlplus / as sysdba
startup
-
建立共享目录
create directory mydump as '/data/sharedata/mydump';
select * from dba_directories;
建立Oracle表空间
第1步:创建临时表空间
复制代码 代码如下:
create temporary tablespace user_temp
tempfile 'D:\oracle\oradata\Oracle9i\user_temp.dbf'
size 50m
autoextend on
next 50m maxsize 20480m
extent management local;
第2步:创建数据表空间
复制代码 代码如下:
create tablespace user_data
logging
datafile 'D:\oracle\oradata\Oracle9i\user_data.dbf'
size 50m
autoextend on
next 50m maxsize 20480m
extent management local;
第3步:创建用户并指定表空间
复制代码 代码如下:
create user username identified by password
default tablespace user_data
temporary tablespace user_temp;
第4步:给用户授予权限
复制代码 代码如下:
grant connect,resource,dba to username;
oracle 创建表空间注意点:
1.如果在PL/SQL 等工具里打开的话,直接修改下面的代码中[斜体加粗部分]执行
2.确保路径存在,比如【D:\oracle\oradata\Oracle9i\】也就是你要保存文件的路径存在
-
dump导入命令(用户名/密码@服务名)
impdp '/ as sysdba' directory=mydump dumpfile=mydb.dmp table_exists_action=replace
-
dump导出命令(用户名/密码@服务名)
expdp '/ as sysdba' SCHEMAS=TEST directory=mydump dumpfile=mydb.dmp logfile=mydb.log