数据库操作之导入导出dmp

一导入dmp

相关语句均为oracle数据库使用语句,快捷键win+R 在cmd中使用

一导入全部数据

在导入前,看下表空间是否自动增长,如果数据量大,就要先设置表空间自动增长,方法在下面有提到

imp 用户名/密码@实例名 file=导入的dmp文件路径 full=y
实例:imp NGUSER/9003@ngtest full=y file=G:\ngqjzk2008201356最终备份.dmp ignore=y;

二导入某个表

log 文件可有可无 ,frouser和touser填同一个名

imp 用户名/密码@数据库 file=文件地址 log=日志位置 fromuser=导入数据用户名 TABLES=表名,buffer=10000000 statistics=none  touser=导入到用户名,ignore=Y;
实例:imp nguser/9003@ngtest file=D:\nggxxk1701161525.dmp log=C:\Users\hhh\Desktop\nggxxk1701161525.log fromuser=nguser TABLES=(td_kmdm,t_yhxxb),buffer=10000000 statistics=none  touser=nguser,ignore=Y;

三各个名词解释

暂无

四导入过程中问题

4.1表空间不足

具体问题代号忘了,遇到这种问题。两步执行
第一步执行sql查询表空间sql

select tablespace_name,file_name,autoextensible from dba_data_files;

查询结果如下图
在这里插入图片描述

第二部根据查询出的表空间地址,执行下面sql使其自动增长,上图全部是yes,已经是自动增长。

alter database datafile '表空间地址' autoextend on;
实例:alter database datafile 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\NGTEST\USERS02.DBF' autoextend on;

4.2"***值太大,无法执行"

描述:大体意思是字段值最大值为100,导入数据为102,一般数据库字符集设置的不是gbk,导入的数据含有中文时会报该错误
操作:打开sqlplus,登录后先确定连接的数据库,然后登录有dba权限(最高权限)的用户(system.),我是用sys创建用户赋予dna权限,依次执行以下命令语句

conn /as sysdba; 
shutdown immediate;
startup mount;
alter system enable restricted session;
alter system set JOB_QUEUE_PROCESSES=0;
alter system set AQ_TM_PROCESSES=0;
alter database open;
alter database character set internal_use ZHS16GBK;
alter database character set ZHS16GBK
shutdown immediate;
startup;

执行完成之后再次进行导入dmp文件

二导出dmp

一导出数据dmp

方法一:利用PL/SQL Developer工具导出
菜单栏----> Tools---->Export Tables,如下图,设置相关参数即可:在这里插入图片描述
方法二:利用cmd的操作命令导出,进入sqlplus,连接数据库(未用过,一般开发者都有数据库工具)
a: 将数据库Oracle完全导出,用户名system密码manager导出到 c:\daochu.dmp中

exp system/manager@Oracle file=c:\daochu.dmp full=y

b: 将数据库中RFD用户与,JYZGCX用户的表导出

exp system/manager@ORACLE  file=d:\daochu.dmp owner=(RFD,JYZGCX)

c: 将数据库中的表T_USER,T_ROLE导出

ystem为用户名,manager为密码,ORACLE为数据库实例名,其实不一定非的用system用户,只要是拥有管理员权限的用户都可以

exp JYZGCX/JYZGCX@Oracle file = d:\data\newsmgnt.dmp tables = (T_USER,T_ROLE) 

二导出dmp出现问题

暂无

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值