Oracle数据库导入/导出

1、使用PL/SQL工具来进行导出/导入

(1)、导出,如图所示:用红色框框出来的两个是必须要有的,第一个框,即导出可执行文件,这个是可以通过最后面那个按钮来确定默认导出可执行文件的,但是本人这里,不知道是因为数据库是64位而PL/SQL是32位的原因还是安装的Oracle数据是精简版的,不是完全版的原因,去网上搜了一下,说的是:“在确保oracle客户端安装完整的情况下,出现这种情况的原因是安装目录下的exp.exe文件缺失。”具体原因没有找到,若读者有好的建议或方法,欢迎与我共同分享。

(2)、导入,如图:问题和上面导出的一样。

以上方法如果环境允许的话,操作起来还是非常简便的,但是如果遇到我这种情况,不妨换一下其他方式,毕竟重新安装Oracle或PL/SQL还是挺麻烦的。

2、利用CMD命令来进行导出/导入操作

(1)、数据的导出:找到目标数据库,根据个人所需,在DOS环境下执行相应语句,便可完成导出操作。

具体步骤:

<1>、因为是直接在DOS环境下进行操作,所以在正式执行导出:

操作之前,我们需要确定目标数据库是否存在和可连接

D:\Oracle\product\10.1.0\Client_1\NETWORK\ADMIN目录下有个tnsname.ora文件,内容如下:
CMSTAR =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 172.18.13.200)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = cmstar)
    )
  )

<2>、使用DOS命令,测试数据库是否可连接,输入:tnsping DatabaseName

<3>、数据的导出:

[1]、将数据库DatabaseNameA完全导出,用户名:UserName,密码:Password导出到D:\data.dmp中

exp UserName/Password@DatabaseNameA  file = D:\data.dmp full = y

expdp UserName/Password@DatabaseNameA  directory=VBM_data dumpfile=数据包名.DMP 

[2]、将数据库中UserA用户和UserB用户的表导出

exp UserA/Password@DatabaseNameA  file = D:\data.dmp owner=(UserA,UserB)

[3]、将数据库中的表Table1和Table2导出

exp UserName/Password@DatabaseNameA  file = D:\data.dmp tables=(table1,table2)

[4]、将数据库的表table1中的字段filed1以“00”开头的数据导出

exp UserName/Password@DatabaseNameA  file = D:\data.dmp tables=(table1) query =\ "where filed1 like '00%'\"

注:如果想导出的文件是压缩文件,在上面的命令后面加上compress=y即可。

(2)、数据的导入:在正式执行导入命令之前,为了一些实际情况,我们可以做一些处理,具体情况具体而论。比如:我现在要将库A的表导入到库B,但是在此之前,库B其实是有库A中所有的表的,但是因为库A经常维护,而库B就偶尔维护,所以,库A的表结构与最新要求更匹配,但是我现在又要用库B,所以需要维护一下库B,即将库A的的表重新导入到库B中(现目前只知道这种方法),所做处理如下:

<1>、删除库B中的用户A,并及时清理相应表空间。此操作在PL/SQL环境下进行。

--删除用户
drop user USERA cascade;

--删除表空间TABLESPACEA和TABLESPACEB及其包含的内容和数据文件
drop tablespace TABLESPACEA including contents and datafiles;

drop tablespace TABLESPACEB including contents and datafiles;


<2>、创建临时表空间和永久表空间。此操作在PL/SQL环境下进行。

--创建临时表空间(temporary tablespace TABLESPACEA)并指定存放地点(tempfile 'D:\oracle_data\data\TBS_FMIS_TEMP.dbf')、表空间数据文件的初始大小(size 50m)、表空间自动增长的大小(autoextend on  next 50m)、表空间最大的大小(maxsize 2048m)和管理方式(extent management local)

create temporary tablespace TABLESPACEA
tempfile 'D:\oracle_data\data\TBS_FMIS_TEMP.dbf'
size 50m  
autoextend on  
next 50m maxsize 2048m  
extent management local;
--创建表空间
create tablespace TABLESPACEB
logging  
datafile 'D:\oracle_data\data\TBS_FMIS_DATA1.dbf'
size 50m  
autoextend on  
next 50m maxsize 20480m  
extent management local;

<3>、创建目录‘、用户,并给用户设置默认表空间和授权。此操作在PL/SQL环境下进行。

--创建目录

create  directory  DirectoryName  as  'F:\oracle_data\VBM_data'

--创建用户并设置默认表空间

create user FMIS identified by 1  
default tablespace TABLESPACEB
temporary tablespace TABLESPACEA;
--给用户授权
grant connect,resource,dba to USERA;

<4>、数据导入。此操作在DOS环境下进行。

[1]、将”数据包名.DMP”中的数据导入到数据库DatabaseName中去

impdp User/Password@DatabaseName directory = DirectoryName  dumpfile =数据包名.DMP remap_schema = USERA:USERB

注:在导出时,数据包中有可能带出当时的用户名,例:USER.TABLEA,如果直接到入的话,会出现错误,所以remap_schema = USERA:USERB的功能就是将用户USERA的数据导入到用户USERB中去。

[2]、将“数据包名.DMP”中的表table1导入

imp User/Password@DatabaseName file =数据包名.DMP tables = (table1)


Python网络爬虫与推荐算法新闻推荐平台:网络爬虫:通过Python实现新浪新闻的爬取,可爬取新闻页面上的标题、文本、图片、视频链接(保留排版) 推荐算法:权重衰减+标签推荐+区域推荐+热点推荐.zip项目工程资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松复刻,拿到资料包后可轻松复现出一样的项目,本人系统开发经验充足(全领域),有任何使用问题欢迎随时与我联系,我会及时为您解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(如有)等。答辩评审平均分达到96分,放心下载使用!可轻松复现,设计报告也可借鉴此项目,该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的。 【提供帮助】:有任何使用问题欢迎随时与我联系,我会及时解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 下载后请首先打开README文件(如有),项目工程可直接复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值