Oracle数据库表备份导入导出dmp的方式及踩坑记录_oracle

来源:脚本之家  责任编辑:小易  
目录
一、备份导出前的注意事项二、导出的两种方式2.1.使用exp导出2.2.使用数据泵expdp导出三、在备份时遇到的坑附:Oracle导出指定用户下dmp文件总结

一、备份导出前的注意事项

1.导出导出的时候需要注意数据库的字符集是否一致,使用工具导入的话也需要确认工具的字符集

   --查询服务端的编码命令
SELECT * FROM Nls_Database_Parameters where parameter = 'NLS_CHARACTERSET';
   --查询客户端软件的编码命令
SELECT Userenv('language') FROM dual where parameter = 'NLS_CHARACTERSET';

2.导出时要确认导出文件的目录,使用oracle自带的逻辑目录或者自己创建逻辑目录,需要用到目录名称和目录路径,在导出时只需指定目录名称,导出的文件存放在目录路径下

   --2.1.查看oracle已有的目录,
select * from dba_directories;
   --2.2.自己创建逻辑目录
create directory 目录名称 as ‘目录路径';
   --2.3.如果是自己创建的目录,需要给用户添加读写此文件夹的权限
grant read,write on directory dir to scott;

3.需要确认要导出的目录中空间是否够用,空间不足时导入会停止

二、导出的两种方式

2.1.使用exp导出

    --2.1.1.导出命令
exp 用户名/密码@数据库IP:端口号/orcl file=导出的目标文件名称 tables=要导出的表名(多个表时用逗号隔开)
exp TJ_DATA/a123456@10.10.1.54:1521/orcl file=export.dmp tables=USER_INFO,POLICY_INFO;

   --2.1.2.导入命令
imp 用户名/密码@数据库IP:端口号/orcl file=导出的目标文件名称 tables=要导出的表名(多个表时用逗号隔开)
imp TJ_DATA/a123456@10.10.1.54:1521/orcl file=export.dmp tables=USER_INFO,POLICY_INFO;

2.2.使用数据泵expdp导出

   --2.2.1.导出命令
expdp 用户名/密码@数据库IP:端口号/orcl file=导出的目标文件名称 tables=要导出的表名(多个表时用逗号隔开)
expdp TJ_DATA/a123456@10.10.1.54:1521/orcl file=export.dmp tables=USER_INFO,POLICY_INFO;

   --2.2.2.导入命令
impdp 用户名/密码@数据库IP:端口号/orcl file=导出的目标文件名称 tables=要导出的表名(多个表时用逗号隔开)
impdp TJ_DATA/a123456@10.10.1.54:1521/orcl file=export.dmp tables=USER_INFO,POLICY_INFO

三、在备份时遇到的坑

   --3.1. 要备份的表如果是分区表,不能使用exp导出命令.只能使用数据泵导出方式.

   --3.2. dmp文件导入时,数据库中不能存在同名的表

   --3.3. 导入时,数据库表的表空间要一致,在命令中可以修改表空间,在导入导入命令后面加上 ‘remap_tablespace=原表空间名:新表空间名’
impdp TJ_DATA/a123456@10.10.1.54:1521/orcl file=export.dmp tables=USER_INFO remap_tablespace=OLD_SPACE:NEW_SPACE

   – 3.4. 导出时如果表空间不足,需要为当前表空间新增数据文件来扩容,数据文件可以设置初始大小,并设置自增,也可以限定最大值
ALTER TABLESPACE 表空间名 ADD DATAFILE ‘数据文件路径及名称’ size 文件初始大小 autoextend on (设置是否开启自增) MAXSIZE 文件最大值;

ALTER TABLESPACE TJ_DATA ADD DATAFILE '/oracle/oradata/ds.dbf' size 1024M autoextend on MAXSIZE 20480M;

   --3.5.导入导出有三种类型,分别是表方式(T方式),用户方式(U方式),全库方式(Full方式),这里只记录了表导出方式

附:Oracle导出指定用户下dmp文件

1.导出指定用户下的全部表

exp DEMO/DEMO@ORCL file=D:\dmp\DEMO_20220121.dmp owner=DEMO buffer=8192000 log=D:\dmp\DEMO_20220121_daochu.log

上述内容代表将用户DEMO的全部表导出为D盘dmp文件夹下的DEMO_20220121.dmp文件,导出日志为相同目录下的DEMO_20220121_daochu.log

2.导出指定表名的表

exp DEMO/DEMO@ORCL file=D:\dmp\DEMO_20220121_ep.dmp tables=('EP_SYS_CQ_COND','EP_SYS_CONSIGN_REC','EP_SYS_CQ_COND_DEF') buffer=8192000 log=D:\dmp\DEMO_20220121_ep_daochu.log

表示导出指定的三个表('EP_SYS_CQ_COND','EP_SYS_CONSIGN_REC','EP_SYS_CQ_COND_DEF')

3.导出以**开头的表

exp DEMO/DEMO@ORCL_MDPC file=D:\dmp\DEMO_20220307_demo.dmp tables=(DEMO.DEMO_%) buffer=8192000 log=D:\dmp\DEMO_20220307_demo_daochu.log

表示导出DEMO用户下DEMO_开头的全部表

总结

到此这篇关于Oracle数据库表备份导入导出dmp的文章就介绍到这了,更多相关Oracle备份导入导出dmp内容请搜索真格学网以前的文章或继续浏览下面的相关文章希望大家以后多多支持真格学网!

您可能感兴趣的文章:Linux下Oracle如何导入导出dmp文件详解

  • 本文相关:
  • oracle处理锁表基本操作
  • oracle存储过程游标用法分析
  • sql查询包含下划线的字段内容操作
  • 使用imp和exp命令对oracle数据库进行导入导出操作详解
  • oracle join on 数据过滤问题
  • oracle随机函数之dbms_random使用详解
  • oracle自定义脱敏函数的代码详解
  • oracle ora-01114、ora-27067错误解决方法
  • oracle备库宕机启动的完美解决方案
  • oracle实现按天,周,月,季度,年查询排序方法
  • oracle 表数据 怎么远程导到另一个机器的数据库里
  • oracle数据库文件备份导入,从一个数据库的用户下导出所有的表...
  • 关于oracle数据库备份再导入到其它库时表名前增加了用户名
  • oracle导入数据库备份时某张表卡住了,有什么解决办法
  • 通过dos 备份oracle数据库表数据后,删除再导入后只有表结构没...
  • oracle导入数据库时出现表空间不存在怎么解决?
  • oracle数据库11g导出的数据库文件怎么导入到oracle12c中去,可...
  • 我把一台数据库oracle整个表导出来后,又整个表导入到另外一台...
  • Oracle数据库中 表中数据的导入导出
  • ORACLE数据库导出、导入表
  • 如何在oracle数据库中的数据导入到sqlserver数据库中???
  • oracle数据库导入出现回退的错误,备份出来的数据库我看了日志...
  • 将SQL Server2005数据库的表结构导入Oracle 10g?表太多了
  • 往oracle里导数据导入失败,报错IMP-00013只有DBA才能导入由...
  • 网站首页网页制作脚本下载服务器操作系统网站运营平面设计媒体动画电脑基础硬件教程网络安全mssqlmysqlmariadboracledb2mssql2008mssql2005sqlitepostgresqlmongodbredisaccess数据库文摘数据库其它首页oraclelinux下oracle如何导入导出dmp文件详解oracle处理锁表基本操作oracle存储过程游标用法分析sql查询包含下划线的字段内容操作使用imp和exp命令对oracle数据库进行导入导出操作详解oracle join on 数据过滤问题oracle随机函数之dbms_random使用详解oracle自定义脱敏函数的代码详解oracle ora-01114、ora-27067错误解决方法oracle备库宕机启动的完美解决方案oracle实现按天,周,月,季度,年查询排序方法oracle 查看表空间的大小及使用情况sql语句linux系统(x64)安装oracle11g完整安装图文教oracle数据库下载及安装图文操作步骤oracle存储过程基本语法介绍oracle 10g 安装教程[图文]oracle 如何查询被锁定表及如何解锁释放sessionoracle中to_date详细用法示例(oracle日期格基于ora-12170 tns 连接超时解决办法详解oracle数据库tns配置方法详解sqlplus登录\连接命令、sqlplus命令的使用大全oracle数据库中的级联查询、级联删除、级联更新操作教程关于expdp任务异常的处理案例详析查看oracle中是否有锁表的sqloracle数据库迁移方案全面解析oracle procedure 基本语法oracle rman快速入门指南oracle通过递归查询父子兄弟节点方法示例dba 在linux下安装oracle database11g数据库图文教程oracle数据库执行脚本常用命令小结oracle对字段的增删改方法分享
    免责声明 - 关于我们 - 联系我们 - 广告联系 - 友情链接 - 帮助中心 - 频道导航
    Copyright © 2017 www.zgxue.com All Rights Reserved