PLSQL Developer备份恢复oracle数据

PLSQL Developer备份恢复oracle数据


使用PL sql提供的功能可以快速的备份恢复oracle数据。

1  导出存储过程,触发器,序列等所有用户对象。(备份)

     在PL/SQL Developer的菜单Tools(工具) => Export User Objects(导出用户对象)中出来一个对话框界面


建议红色框住部分都不选,这样执行这个sql 时,就根据当前你的登录账户来进行创建。  在对象列表中ctrl+a 全选所有(如果你只导出部分,可单独选择)

设置 输出文件地址,文件名。 点击导出完成。

2  导出数据。(备份)

  在PL/SQL Developer的菜单Tools(工具) => 导出表 中出来一个对话框界面


如果 数据量较大,选择oracle导出,勾压缩选项,然后设置输出文件地址。 如果只导出部分数据,可以在Where 处添加条件。例如 rownum<=1000  ( 导出1000条记录),此种方式导出dmp 格式文件。

如果数据量较小,可以选择sql 插入,此种方式导出sql文件。

上图的选项,勾选 约束,索引,行数,触发器。

注意:如果表中包含clob 或nclob 字段,就只能用dmp格式进行导入,如果是少量表,不包含这种字段,可以用sql插入方式。

 

还原时,注意需要先还原dmp文件。

3 表数据还原 。

a. 如果dmp 文件,那么在PL/SQL Developer的菜单Tools(工具) => 导入表 中出来一个对话框界面


可以在 “到用户” 处 选择你登录的账户。

 

b 如果是sql 格式文件,一样在PLSQL中新建一个命令窗口 (command windows) , 粘贴(ctrl+v) 刚才负责的sql内容。然后就开始自动执行还原了。

4   还原其他对象(存储过程,触发器,序列,函数等)

a. 用PLSQL 登录要还原的Oracle。此时你登录的账号是什么,还原就在该账号下。

b.  把先前备份的表结构sql文件打开,全选内容。 然后在PLSQL中新建一个命令窗口 (command windows) , 粘贴(ctrl+v) 刚才负责的sql内容。然后就开始自动执行还原了。





以前导数据库信息的时候,总是会先开启sql窗口,把自己手写的建表文件复制进去,然后再导入数据信息。

今天突然懒得去找以前的建表文件,而想用SLSQL直接从一个数据库中导出信息,导入到另外一个数据库中,发现自己对PLSQL的导入导出完全不了解。下面详细记录一下。

先写一个正确的方法:

导出步骤:

1 tools ->export user object 选择选项,导出.sql文件

2 tools ->export tables-> Oracle Export 选择选项导出.dmp文件

导入步骤:

1 tools->import tables->SQL Inserts 导入.sql文件

2 tools->import talbes->Oracle Import然后再导入dmp文件

数据库的导入导出成功

 

Tools->Export User Objects导出的是建表语句(包括存储结构)

Tools->Export Tables里面包含三种导出方式:

三种方式都能导出表结构以及数据,网上说三种方法有区别,如下:

Oracle Export,Sql Insert,pl/sql developer
第一种是导出为.dmp的文件格式,.dmp文件是二进制的,可以跨平台,还能包含权限,效率也很不错,用得最广
第二种是导出为.sql文件的,可用文本编辑器查看,通用性比较好,但效率不如第一种,适合小数据量导入导出。尤其注意的是表中不能有大字段(blob,clob,long),如果有,会提示不能导出(提示如下:
table contains one or more LONG columns cannot export in sql format,user Pl/sql developer format instead),可以用第一种和第三种方式导出。
第三种是导出为.pde格式的,.pde为Pl/sql developer自有的文件格式,只能用Pl/sql developer自己导入导出;不能用编辑器查看。

个人比较中意第二种方法,毕竟是SQL文件嘛,自己还可以看,想改也方便

 

操作选项
一般一些选项选择看字面意思就可以了,重要的上面已经写了(主要include privilege只是包含一些建表信息,并不包括存储过程信息,话说我被这个选项骗了……还是忽略它吧……

选择drop tables信息中会包含删表语句(注意:选了drop tables就已经默认选了create tables 和 truncate tables),create tables是建表信息,truncate tables和delete tables都是再再插入数据前先删除原有的信息,这两个是二选一,但是truncate tables效率高很多。

where clause可以输入很多命令,比如rownum < 10000只导出每个表的前10000行,等等信息,具体在查信息。

命令形式的导入导出:




----------------------------------------------------------------------------------------------------------------




PLSQL导入导出数据库-1

如果只导出表的结构(建表语句),不导出表的数据,可用Tools--Export User Objects

选中要导出的表,设置好导出的路径和各个参数后,点击Export就OK

PS:这种方式只能导出属于这个用户的表,其他用户的表不能导出,建议用命令行导出(exp, imp)

如果想将表结构,表的数据,触发器,函数之类的全部导出,可用Tools--Export Tables

选中要导出的表(可选多个),导出方式有三种:

Oracle Export,Sql Insert,pl/sql developer
第一种是导出为.dmp的文件格式,.dmp文件是二进制的,可以跨平台,还能包含权限,效率也很不错,用得最广

第二种是导出为.sql文件的,可用文本编辑器查看,通用性比较好,但效率不如第一种,适合小数据量导入导出。尤其注意的是表中不能有大字段(blob,clob),如果有,会提示不能导出,可以用第一种和第三种方式导出。

第三种是导出为.pde格式的,.pde为Pl/sql developer自有的文件格式,只能用Pl/sql developer自己导入导出;不能用编辑器查看,效率不知道怎么样

PS:只有“Oracle Export”方式导出再导入后,表结构和索引结构没有发生变化,另两种方式都改变了索引类型。

导入的情况和导出一样


1.完整的导出整个数据库表结构即dmp文件方法:
Tools-->Export Tables ,选择Oracle Export 默认选项即可,在Output file选择一个输出目标 
点击Export,即可导出表结构


2.导出表中数据:
Tools-->Export Tables :选择SQL Inserts 遇到大字段(clob,blob)会出问题导不出来,在此可以 
选择需要导出的表,在Output file中选择导出的目标,点击Export即可导出,在此有几个选项 
可以去掉所有的可选项直接导出

3.导出数据库中所有的或是所选表的数据库建表脚本:
Tools-->Export User Objects去掉下面三个include *可选项,选择Single file)在Output file 
中选择输出目标,点击Export即可 


PLSQL导入导出数据库-2

导出步骤:

1 tools ->export user object 选择选项,导出.sql文件

2 tools ->export tables-> Oracle Export 选择选项导出.dmp文件

导入步骤:

1 tools->import tables->SQL Inserts 导入.sql文件

2 tools->import talbes->Oracle Import然后再导入dmp文件

数据库的导入导出成功

 

Tools->Export User Objects导出的是建表语句(包括存储结构)

Tools->Export Tables里面包含三种导出方式:

三种方式都能导出表结构以及数据,网上说三种方法有区别,如下:

Oracle Export,Sql Insert,pl/sql developer 
第一种是导出为.dmp的文件格式,.dmp文件是二进制的,可以跨平台,还能包含权限,效率也很不错,用得最广 
第二种是导出为.sql文件的,可用文本编辑器查看,通用性比较好,但效率不如第一种,适合小数据量导入导出。尤其注意的是表中不能有大字段(blob,clob,long),如果有,会提示不能导出(提示如下: 
table contains one or more LONG columns cannot export in sql format,user Pl/sql developer format instead),可以用第一种和第三种方式导出。 
第三种是导出为.pde格式的,.pde为Pl/sql developer自有的文件格式,只能用Pl/sql developer自己导入导出;不能用编辑器查看。

个人比较中意第二种方法,毕竟是SQL文件嘛,自己还可以看,想改也方便

 

操作选项
一般一些选项选择看字面意思就可以了,重要的上面已经写了(主要include privilege只是包含一些建表信息,并不包括存储过程信息,话说我被这个选项骗了……还是忽略它吧……

选择drop tables信息中会包含删表语句(注意:选了drop tables就已经默认选了create tables 和 truncate tables),create tables是建表信息,truncate tables和delete tables都是再再插入数据前先删除原有的信息,这两个是二选一,但是truncate tables效率高很多。

where clause可以输入很多命令,比如rownum < 10000只导出每个表的前10000行,等等信息,具体在查信息。

命令形式的导入导出:

暂未查信息……



PLSQL导入导出数据库-3

导出数据库

建议使用plsql6.0,这样可以在导出sql文件的时候不记录原有表空间的名字

步骤:

1 tools --export user object:去除 include storage 选项,点击"export"按钮

这里不要用export tables 这样就没法导出存储过程,只有表结构

2 tools --export tables 导出dmp文件

导入数据库

步骤:

1 tools--import tables 导入sql文件,然后再导入dmp文件
=================================
在plsql中如何导出dmp文件
tool - export tables 选中要导出的表点击第一个选项卡 oracle export 选择文件保存的路径,确认下导出所用的exp.exe应用程序和要导出的数据库的版本是一致的,才能正确导出,否则会报版本不一致的错误,默认导出文件的后缀是dmp

同理,导入dmp文件,tool - import tables 点击第一个选项卡 oracle import 选择导入文件的路径,确认下导入所用的imp.exe应用程序和要导入的数据库的版本是一致的,才能正确导出,否则会报版本不一致的错误
==================================



导出数据到excel文件:
  选中数据表--query data--选中要导出的数据--右键copy to excel
  excel数据导入到
数据库
  1.在Excel中准备好要导入的数据。具体操作:在Excel中,把第一列设置为空列,第二列以后的列应与要导入的数据表的字段相对应。
  2.登录PLSQL Developer,找到需要导入数据的数据库表后,点击右键--edit data,进入了编辑此表的数据对话框,并点击最左侧选中一空行。
  3.copy Excel表中的数据记录,将数据粘贴到上步中PLSQL Developer显示的表列中。
  4.点击PLSQL Developer中的对号按钮进行Post。
  注意:PLSQL Developer不认识“-” ?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值