Oracle表的导入导出
ORACLE导入导出表数据
![ORACLE导入导出表数据](https://img.taocdn.com/s3/m/dc6f9748be1e650e52ea9973.png)
ORACLE导入导出表数据
1:导出——首先登录oracle,在左边的目录树上找到需要导出数据的表,右键"Export DATA",这时在右边的显示框中会显示这个数据库中的所有表,并且会自动选中需要导出数据的表,在右下角有一个"Output File",选择一个导出文件的存放地址,例如放在桌面"C:\Documents and Settings\user\桌面\mdm_prod_lob_rel_split_cfg.SQL",注意最好以"SQL"格式存在,点“Export”按钮,导出成功。
这时桌面上就有了一个名字为“mdm_prod_lob_rel_split_cfg.SQL”的文件。
2:导入——讲刚才的文件放入C盘下(主要考虑到时候路径会太长),选择文件的路径,例如"C:\wrk_mdm_ri_chk_rule_cfg.SQL",在oracle PL/SQL控制台上,FILE——NEW——Command Window,输入命令
@C:\wrk_mdm_ri_chk_rule_cfg.SQL 按Enter执行,导入即完成
命令解释: @C:\wrk_mdm_ri_chk_rule_cfg.SQL 即@+ 文件地址
3:导入数据之前,最好将原来的表备份一次
create table tmp_hbj_wrk_mdm_ri_ch_rl_c912 as select * from wrk_mdm_ri_chk_rule_cfg;。
Oracle导入导出.sql、.dmp文件
![Oracle导入导出.sql、.dmp文件](https://img.taocdn.com/s3/m/1324f5bbd0f34693daef5ef7ba0d4a7302766c8a.png)
Oracle导⼊导出.sql、.dmp⽂件Oracle导出导⼊表(.sql、.dmp⽂件)两种⽅法提⽰:在导⼊sql和dmp⽂件之前,先建⽴⽤户,指明表空间。
其中要注意⽤户名和表空间最好跟sql⽂件中的⼀样。
⽅法⼀:.sql⽂件的导出与导⼊导出步骤1. 使⽤PL/SQL Developer登录你需要备份的数据库;2. 选择⼯具->导出⽤户对象;3. 在对象列表中选择需要备份的对象,再选择⼀个sql类型的输出⽂件,点击【导出】,这只是导出数据结构;4. 选择⼯具->导出表;5. 在列表中选择需要导出数据的表,再选择【SQL插⼊】,选择⼀个sql类型的⽂件,点击【导出】,这⼀步是把数据导出数据库。
6. 这样就得到两个sql,分别是备份数据结构和备份数据的。
导⼊步骤在plsql⼯具⾥点击File-new-command window 将两个.sql⽂件语句分别粘贴进去执⾏两次⽅法⼆:.dmp⽂件的导出与导⼊1. 导出表结构:expdp system/admincss@WSYDBSPT directory=DATA_PUMP_DIR schemas=hx_xt dumpfile=WSYDBS.dmp 注:system/admincss@WSYDBSPT管理员⽤户名密码、数据库服务名,directory=DATA_PUMP_DIR(通过select * from dba_directories查询), schemas=hx_xt从该⽤户名下导出表结构数据2. 导⼊表结构1) Impdp system/admincss@WSYDBSPT directory=DATA_PUMP_DIR schemas=hx_xt dumpfile=WSYDBS.dmp2) Impdp system/admincss@xxbspt directory=DATA_PUMP_DIR dumpfile=xxbspt20180129.dmp full=y(全导)。
oracle 导出 导入数据 对比方法
![oracle 导出 导入数据 对比方法](https://img.taocdn.com/s3/m/0b9d213ab42acfc789eb172ded630b1c59ee9bc4.png)
(原创实用版4篇)编制人员:_______________审核人员:_______________审批人员:_______________编制单位:_______________编制时间:____年___月___日序言下面是本店铺为大家精心编写的4篇《oracle 导出导入数据对比方法》,供大家借鉴与参考。
下载后,可根据实际需要进行调整和使用,希望能够帮助到大家,谢射!(4篇)《oracle 导出导入数据对比方法》篇1Oracle数据库的导出和导入数据可以通过PL/SQL工具或SQL*PLUS命令行界面进行。
以下是一些常用的导出和导入方法:1. 使用PL/SQL工具导出和导入数据:导出数据:- 使用PL/SQL工具中的“导出用户对象”功能,选择要导出的表,并将其导出为SQL文件。
- 使用PL/SQL工具中的“导入表”功能,选择要导入的SQL文件,并将其导入到数据库中。
导入数据:- 使用PL/SQL工具中的“导入表”功能,选择要导入的SQL文件,并将其导入到数据库中。
- 在 SQL*PLUS 中使用“CREATE TABLE AS SELECT”语句将数据导入到新表中。
2. 使用 SQL*PLUS 命令行界面导出和导入数据:导出数据:- 使用 SQL*PLUS 命令行界面中的“EXP”命令,选择要导出的表,并将其导出为 SQL 文件。
- 使用 SQL*PLUS 命令行界面中的“EXP”命令,选择要导出的表,并将其导出为 CSV 文件。
导入数据:- 使用 SQL*PLUS 命令行界面中的“IMP”命令,选择要导入的 SQL 文件,并将其导入到数据库中。
- 在 SQL*PLUS 中使用“CREATE TABLE AS SELECT”语句将数据导入到新表中。
需要注意的是,在导入数据时,如果导入的表已经存在,则可以使用“APPEND”选项将数据追加到表中,而不是覆盖现有的数据。
《oracle 导出导入数据对比方法》篇2Oracle 数据库的导出和导入数据可以使用以下方法:1. 导出数据:使用PL/SQL工具,在tools目录下选择导出用户对象的功能,选择所有表导出为SQL文件,只有结构没有数据。
oracle 导出导入操作
![oracle 导出导入操作](https://img.taocdn.com/s3/m/0d8c432a770bf78a6429547c.png)
oracle 导出导入操作基础知识:一、数据导出(exp.exe)1、将数据库orcl完全导出,用户名system,密码accp,导出到d:\daochu.dmp文件中exp system/accp@orcl file=d:\daochu.dmp full=y2、将数据库orcl中scott用户的对象导出exp scott/accp@orcl file=d:\daochu.dmp owner=(scott)3、将数据库orcl中的scott用户的表emp、dept导出exp scott/accp@orcl file= d:\daochu.dmp tables=(emp,dept)4、将数据库orcl中的表空间testSpace导出exp system/accp@orcl file=d:\daochu.dmp tablespaces=(testSpace)二、数据导入(imp.exe)1、将d:\daochu.dmp 中的数据导入orcl数据库中。
imp system/accp@orcl file=d:\daochu.dmp full=y2、如果导入时,数据表已经存在,将报错,对该表不会进行导入;加上ignore=y即可,表示忽略现有表,在现有表上追加记录。
imp scott/accp@orcl file=d:\daochu.dmp full=y ignore=y3、将d:\daochu.dmp中的表emp导入imp scott/accp@orcl file=d:\daochu.dmp tables=(emp)ok,现在尝试导出数据首先查看字符集select userenv(‘language’) from dual;分别查看字符集是否相同,不相同的话更改一致,否则不能正常导入我在执行过程中出现错误error: ora-12712(解决办法)shutdown immediate;startup mount;ALTER SESSION SET SQL_TRACE=TRUE;ALTER SYSTEM ENABLE RESTRICTED SESSION;ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;ALTER SYSTEM SET AQ_TM_PROCESSES=0;ALTER DATABASE OPEN;set linesize 120;alter database character set zhs16gbk;RROR at line 1:ORA-12712: new character set must be a superset of old character setALTER DATABASE character set INTERNAL_USE zhs16gbk;ALTER SESSION SET SQL_TRACE=FALSE;shutdown immediate;STARTUP执行导出命令exp scott/cat@orcl wner=scott direct=y file=scott.dmp执行成功后将scott.dmp 拷贝至目标数据库执行导入命令imp scott/cat@orcl fromuser=scott touser=scott ignore=y file=d:\jzz.DMP。
Oracle中的导入导出表及数据
![Oracle中的导入导出表及数据](https://img.taocdn.com/s3/m/9ac6bf573b3567ec102d8a92.png)
Oracle中的导入导出表及数据Oracle数据导入导出imp/exp就相当于oracle数据还原与备份。
exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把dmp文件从本地导入到远处的数据库服务器中。
利用这个功能可以构建两个相同的数据库。
1.用plsql实现1.1使用plsql连接oracle,点击工具——导出表1.2选择要导出的表1.3可执行文件在C:\oracle\product\10.2.0\db_1\bin 目录下导出是exp 导入是imp导出的为dmp文件1.4导入文件:点击工具——导入表在导入文件中选择要导入的表确认后点击导入2.用dos命令实现2.1Windows——R——cmd2.2输入dos命令:exp youngtop_us/ail@192.168.0.46/orcl10g file=F:/fileSys.dmp log=F:/fileSys.logstatistics=none tables=file_attach,file_tree,file_permissionps:exp user/password@主机地址file=存储位置log=存储位置statistics=none tables=tablename3.将数据导出到excel表中及将excel表数据导入数据库3.1选中要导出数据的表右键——查询数据3.2选中表中的数据邮件——复制到excel3.3在excel中保存3.4可以不按照数据库中的字段存放顺序,编辑形成Excel表中的数据3.5选中要导入的数据后另存一份txt文档3.6在plsql中点击工具——文本导入器进入到文本导入器的页面后,先点击“来自文本文件的数据”选项卡,然后点击打开按钮,选择数据录入.txt文件3.7在配置中进行配置如果不将标题名勾选上,则会导致字段名也当做记录被导入到数据库中,影响正确录入3.8点击导入按钮将数据导入oracle数据库中。
Oracle导入与导出(即备份与恢复)
![Oracle导入与导出(即备份与恢复)](https://img.taocdn.com/s3/m/2ce4c169011ca300a6c390dd.png)
在没有警告的情况下成功终止导出。
IMP jwd/jwd@ps D:\DD\PHARMACY.DMP FULL=Y ****************
********************************
3. 导出工具exp非交互式命令行方式的例子
$exp scott/tiger tables=emp,dept file=/directory/scott.dmp grants=y
说明:把scott用户里两个表emp,dept导出到文件/directory/scott.dmp
$exp scott/tiger tables=emp query=\"where job=\'salesman\' and sal\<1600\" file=/directory/scott2.dmp
参数文件username.par内容
userid=username/userpassword
buffer=8192000
compress=n
grants=y
说明:username.par为导出工具exp用的参数文件,里面具体参数可以根据需要去修改
filesize指定生成的二进制备份文件的最大字节数
(可用来解决某些OS下2G物理文件的限制及加快压缩速度和方便刻历史数据光盘等)
4. 命令参数说明
关键字 说明(默认)
---------------------------------------------------
USERID 用户名/口令
FULL 导出整个文件 (N)
Oracle支持三种类型的输出:
oracle导入导出
![oracle导入导出](https://img.taocdn.com/s3/m/39dcf1fa910ef12d2af9e766.png)
若要导出其他用户的表,则:
exp userid=system/admin@orcl tables=(scott.emp) file=e:\Oracle资料\LearnOracleByMyself\emp.dmp 回车
------------------------------------------
若要导入表到其他用户,则:
imp userid=system/admin@orcl tables=(emp) file=e:\Oracle资料\LearnOracleByMyself\emp.dmp touser=scott
若只是要导入表的结构而不导入数据,则:
imp userid=scott/tigger@orcl tables=(emp) file=e:\Oracle资料\LearnOracleByMyself\emp.dmp rows=n
运行cmd进入控制台
E: 回车
cd E:\oracle\product\10.2.0\db_1\BIN回车
------------------------------------------
第二步:
------------------------------------------
imp userid=system/admin@orcl file=e:\Oracle资料\LearnOracleByMyself\emp.dmp touser=scott
------------------------------------------
导入数据库
------------------------------------------
在默认情况下,当导入数据库时,会导入所有对象结构和数据,案例如下:
Oracle导入导出xls
![Oracle导入导出xls](https://img.taocdn.com/s3/m/3bb6337201f69e31433294b0.png)
Oracle数据库导入导出Ecxel一、首先我们来说说如何导出oracle数据,如果我们只要导出一张表的数据,我可以按下面的方法,去实现我们的要求,步骤:1、打开 plsqldev2、进入数据库之后,打开我们需要导出的数据库表,如:3、点击中间那个绿色的图片也就是“导出查询结果”点开之后,选择 CSV选项,4、之后,出现了这个图标,他是要我们选择导出数据的位置,我们这里选择桌面就好了,便于管理。
最重要的一点是:我们还得给它取一个名称,并且以 .xls 结尾。
5、文件如图所示6、7、数据如上。
8、至此数据库导出xls已经完成Oracle数据库导入1、首先,我们得有个导入的对象,这里我们一txt格式的文件为对象来演示。
2、第二步,现在我们有了文件,事情就好办了。
不过,我们的文件必须得和数据库里的数据一致,也就是我们的第一列必须是数据库里的各个列名,如上图所示,下面的数据也必须的和上面的列对齐,不能多也不能少。
第三步,我们就得把上面我们准备好的数据送到数据库里的一个表里,我们这里用paly 表。
实现步骤:1.点击工具,然后在下拉框里选择“文本导入器”2.我们打开“文本导入器”之后,点击问号下面的一个图标(鼠标移上去会提示:“打开”)具体如下图:出现如下图:到了这里,我就该选择我们需要导入的数据文本(也就是需要导入的文件可以是txt,xls,csv,tsv),现在我们选择早已准备好了的文件,选中之后双击它,具体如下图:好了现在数据已经到了数据库里了,我们最后一步需要做的就是,把文件里的数据类型(如,number(int),char(string))对应数据库里表的列的类型修改好。
到了这一步,我们已经可以看到数据库最下面的导入按钮可以点了。
如图:If(如果)出现如下错误,这表示我们的数据库表的类型还没有校正,选择好列的类型左半边是列,右边是列的类型。
对着修改完成就好了。
如果你还不知道表里的是什么类型就右击你要导入数据那个表找到修改,就可以看到我们列的类型。
oracle的数据库的导入导出
![oracle的数据库的导入导出](https://img.taocdn.com/s3/m/7201cedcf71fb7360b4c2e3f5727a5e9856a27a1.png)
oracle的数据库的导入导出从一个用户expdp导出再impdp导入到另一个用户(示例:讲scott用户里面的表全部迁移到新建的test用户里面)如果想导入的用户已经存在:1.导出之前需要做的一些操作,进入数据库,默认为sys用户SQL> create directory dumpdir as '/home/oracle/test_bk ';(该备份路径是需要手动创建的)SQL> grant read,write on directory dumpdir to scott(scott为源用户);导出用户expdp user1/pass1 directory=dumpdir dumpfile=user1.dmp 示例:expdp scott/tiger directory=dumpdir dumpfile=scott.dmp2.导入之前需要做一些操作,进入数据库,默认为sys用户SQL> create directory dumpdir as '/home/oracle/test_bk ';(该备份路径是需要手动创建的)SQL> grant read,write on directory dumpdir to test(test为目标用户);导入用户impdp test/test directory=dumpdir dumpfile=scott.dmp REMAP_SCHEMA=scott:test full=y;如果想导入的用户不存在:1. 导出用户expdp user1/pass1 directory=dumpdirdumpfile=user1.dmp2. 导入用户impdp system/passsystem directory=dumpdirdumpfile=user1.dmp REMAP_SCHEMA=user1:user2 full=y;3. user2会自动建立,其权限和使用的表空间与user1相同,但此时用user2无法登录,必须修改user2的密码impdp遇到的错误C:\Documents and Settings\Administrator>impdp aaa/ccc directory=data_dump dumpfile=fromaaa.dmp logfile=IMP_DATA_20100618.LOG连接到: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - ProductionWith the Partitioning, OLAP and Data Mining optionsORA-39001: 参数值无效ORA-39000: 转储文件说明错误ORA-39143: 转储文件"F:\ora10G_expdp\ic_price_fromlufang.dmp" 可能是原始的导出转储文件可恶的提示让我一直以为是版本的的问题,因为是同事给的dmp文件,用的又都是10.2.0版本,自然以为用的是expdp,所以一直用impdp导入,其他的权限都没问题,所以最后怀疑同事用的是exp,所以试了下imp导入,成功执行了。
Oracle导入导出数据的几种方式
![Oracle导入导出数据的几种方式](https://img.taocdn.com/s3/m/df1f18e9760bf78a6529647d27284b73f242361c.png)
Oracle导⼊导出数据的⼏种⽅式oracle导⼊导出数据1.导出dmp格式⽂件--备份某⼏张表exp smsc/smsc file=/data/oracle_bak/dmp/bakup0209_2.dmp tables=\(send_msg_his,send_msg,recv_msg_his,recv_msg\)--备份整个数据库--⽅式1exp smsc/smsc file=/data/oracle_bak/dmp/bakupsmmc0209_2.dmp full=y--⽅式2exp cop/cop@133.96.84.39:1521/coprule file=/home/oracle/cop_20160902.dmp owner=cop log=/home/oracle/cop.log--本机上exp zop/zop@orcl file= D:\zop_bak.dmp owner=zop log=D:\zop_ba.log2.导⼊dmp格式⽂件--数据的导⼊--1 将D:\daochu.dmp 中的数据导⼊ TEST数据库中。
imp system/manager@TEST file=d:\daochu.dmpimp aichannel/aichannel@TEST full=y file=d:\datanewsmgnt.dmp ignore=y--上⾯可能有点问题,因为有的表已经存在,然后它就报错,对该表就不进⾏导⼊。
-- 在后⾯加上 ignore=y 就可以了。
--2 将d:daochu.dmp中的表table1 导⼊imp system/manager@TEST file=d:\daochu.dmp tables=(table1)--基本上上⾯的导⼊导出够⽤了。
不少情况要先是将表彻底删除,然后导⼊。
注意:操作者要有⾜够的权限,权限不够它会提⽰。
数据库时可以连上的。
可以⽤tnsping TEST 来获得数据库TEST能否连上。
oracle数据的导入导出(两种方法三种方式)
![oracle数据的导入导出(两种方法三种方式)](https://img.taocdn.com/s3/m/1d5eddd5ba4cf7ec4afe04a1b0717fd5360cb22e.png)
oracle数据的导⼊导出(两种⽅法三种⽅式)⼤概了解数据库中数据的导⼊导出。
在oracle中,导⼊导出数据的⽅法有两种,⼀种是使⽤cmd命令⾏的形式导⼊导出数据,另⼀种是使⽤PL/SQL⼯具导⼊导出数据。
1,使⽤cmd命令⾏导⼊导出数据 1.1整库导出 整库导出:exp 管理员账号/密码 full=y;//参数full表⽰整库导出。
导出后会在当前⽬录下⽣成⼀个EXPDAT.DMP的⽂件,此⽂件为备份⽂件。
如果想导出数据到指定位置,并且取个名字,需要添加file参数。
例如:exp system/123456 file= C:\person.dmp full=y。
1.2整库导⼊ 整库导⼊:imp 管理员账号/密码 full=y file=C:\person.dmp。
1.3使⽤cmd命令按⽤户导出导⼊ 1.3.1 按⽤户导出:exp 管理员账号/密码 owner=⽤户名 file=C:\person.dmp。
1.3.2 按⽤户导⼊:imp 管理员账号/密码 file=C:\person.dmp fromuser=⽤户名。
1.4使⽤cmd命令按表导出导⼊ 1.4.1按表导出:exp 管理员账号/密码 file=person.dmp tables=t_person,t_student。
1.4.2按表导⼊:imp 管理员账号/密码 file =person.dmp tables=t_person,t_student。
2.)使⽤PL/SQL 开发⼯具导出导⼊数据 pl/sql⼯具包含三种⽅式导出oracle表结构和表数据,分别为:oracle export,SQL inserts,pl/sql developer。
它们的含义如下: 第⼀种oracle export:导出的是.dmp格式的⽂件,.dmp⽂件是⼆进制⽂件,可以跨平台,包含权限等。
第⼆种SQL inserts :导出的是.sql格式的⽂件,可以⽤⽂本编辑器查看,通⽤性⽐较好,效率不如第⼀种,适合⼩数据量的导⼊导出。
ORACLE导出导入(exp和imp)总结
![ORACLE导出导入(exp和imp)总结](https://img.taocdn.com/s3/m/95a4bc63f242336c1eb95e98.png)
1.1 EXP AND IMP导入导出的模式a表模式的导入导出b用户模式的导入导出c全库模式的导入导出导出表模式exp system/jaguar@cfp00_cpzb2003 tables=(cp.misywt14,cp.misywt18) file=d:\t8.dmplog=d:\t14t18_exp.log feedback=10000 compress=n用户模式exp system/jaguar@cfp00_cpzb2003 owner=cp file=e:\cp.dmp log=e:\cp_exp.logfeedback=10000 compress=n全库模式exp system/jaguar@bkup full=y filesize=2000M file=(cpzb01.dmp,cpzb02.dmp)log=cpzb_exp.log feedback=10000 compress=n使用参数文件导出(需要在当前路径下执行)exp system/manager@bgd-11_yang1 parfile=t09_exp.part09_exp.par文件内容tables = (test1.misywt09) file=e:\yang\t09.dmp log=e:\yang\t09_exp.log feedback=10000 compress=n快速导出使用参数direct=y recordlength=65535exp system/jaguar@cfp00_cpzb2003 owner=cp file=e:\cp.dmp log=e:\cp_exp.log direct=y recordlength=65535 feedback=10000 compress=n有条件的导出,windowsexp system/ckdb5@ckdb5 tables = (cp962008.misywt40_1) file=t40_96.dmp log=t40_96_exp.log feedback=10000 QUERY='where substr(ckhwh,1,1)="5"'导入表模式imp system/jaguar@cfp99_cpzb fromuser=cp touser=cp tables= (misywt14,misywt18)file=e:\t14t18.dmp log=e:\t14t18_imp.log ignore=y buffer=5120000 commit=yfeedback=10000用户模式imp system/jaguar@cfp99_cpzb fromuser=cp touser=cp file=d:\cp.dmp log=d:\cp_imp.log ignore=y buffer=5120000 commit=y feedback=10000全库模式imp system/jaguar@cfp99_cpzb full=y file=d:\cp.dmp log=d:\cp_imp.log ignore=ybuffer=5120000 commit=y feedback=10000导入大于2G的文件imp system/jaguar@cfp10_cpzbbak filesize=2000M buffer=81920 commyit=y ignore=yfile=(cpzb01.dmp,cpzb02.dmp,cpzb03.dmp,cpzb04.dmp) log=cpzb_imp.log feedback=10000使用参数文件导入(需要在当前路径下执行)imp system/manager@bgd-11_yang1 parfile=t09_imp.part09_imp.par 文件的内容fromuser=test1 touser=test1 tables=(misywt09) file=e:\yang\t09.dmp log=e:\yang\t09_imp.log ignore=y buffer=5120000 commit=y feedback=10000imp步骤说明(1) create table (2) insert data (3) create index (4) create triggers,constraints导出导入常见问题及解决方法1) unix上导出导入,使用多个用户或多个文件时不使用()2) ORACLE不同版本之间的导出导入oracle8.0.4 netwareoracle8.1.5 win2000oracle8.1.7 unix ware 7.1.18.0.4――>8.1.7使用8.0.4从自己导出,使用8.1.5导入8.1.78.1.7――>8.0.4使用8.1.5从8.1.7 导出,使用8.1.5导入8.0.48.1.5――>8.1.7使用8.1.5从自己导出,使用8.1.5导入8.1.78.1.7――>8.1.5使用8.1.7从自己导出,使用8.1.7导入8.1.5oracle8-oracle10之间导入导出的关系1个表的测试oracle8->oracle10test 源数据库目的数据库导出的oracle版本导入的oracle版本文件大小时间结果备注test18 10 8 8 成功有垃圾表BIN$bEheaq87S/q9CiHem/Ty6Q==$0test28 10 8 10 成功test38 10 10 8 失败10无法连接8test48 10 10 10 失败10无法连接8 结论:oracle8->oracle10 导出使用8,导入使用10oracle10->oracle8test 源数据库目的数据库导出的oracle版本导入的oracle版本文件大小时间结果备注test510 8 8 8 成功test610 8 8 10 失败10无法连接8test710 8 10 8 失败8不能读取10得导出文件test810 8 10 10 失败10无法连接8 结论:oracle10->oracle8 导出使用8,导入使用8使用oracle8导出oracle10时,出现错误EXP-00003: 未找到段(10,585868) 的存储定义原因:不能用oracle8导出oracle10。
oracle的导出命令
![oracle的导出命令](https://img.taocdn.com/s3/m/8162f8d6ab00b52acfc789eb172ded630b1c98ee.png)
oracle的导出命令资料来⾃百度搜索,测试全库备份正常导出。
常⽤的oracle数据库备份(导⼊/导出)有两种,分别是exp/imp和expd/impd,前者是Orace早期版本带有的导⼊导出⼯具,后者是Oracle10g后出现的,下⾯进⾏分别介绍!1.exp/imp三种导⼊导出类型Oracle⽀持三种导⼊导出类型分别是表⽅式(T⽅式),⽤户⽅式(U⽅式),全库⽅式(Full⽅式)A: 表⽅式(T⽅式)备份(exp)某个⽤户模式下指定的对象(表),exp guwei/ai123456@10.21.19.63/orcl rows=y indexes=n compress=n buffer=50000000 file=exp_table.dmplog=exp_table.log tables=USER_INFO,POLICY_INFO恢复(imp)备份数据中的指定表,imp yuwen/ai123456@10.21.13.14/orcl fromuser=guwei touser=yuwen rows=y indexes=n commit=y buffer=50000000 ignore=nfile=exp_table.dmp log=exp_table.log tables=USER_INFO,POLICY_INFOB:⽤户⽅式(U⽅式)备份(exp)某个⽤户模式下的所有对象,exp jnth/thpassword@oracle owner=guwei rows=y indexes=n compress=n buffer=50000000 file=exp_table.dmp log=exp_table.log恢复(imp)备份数据的全部内容,imp yuwen/ai123456@10.21.13.14/orcl fromuser=guwei touser=yuwen rows=y indexes=n commit=y buffer=50000000 ignore=nfile=exp_table.dmp log=exp_table.log恢复(imp)备份数据中的指定表,imp yuwen/ai123456@10.21.13.14/orcl fromuser=guwei touser=yuwen rows=y indexes=n commit=y buffer=50000000 ignore=nfile=exp_table.dmp log=exp_table.log tables=USER_INFO,POLICY_INFOC:全库⽅式(Full⽅式)备份(exp)完整的数据库,exp system/systempassword@oracle rows=y indexes=n compress=n buffer=50000000 full=y file=exp_table.dmp log=exp_table.log导⼊(imp)完整数据库,imp system/systempassword@oracle rows=y indexes=n commit=y buffer=50000000 ignore=y full=y file=exp_table.dmp log=exp_table.log 导出导⼊的优缺点优点:简单易⾏;可靠性⾼;不影响数据库的正常运⾏。
oracle导入导出详解
![oracle导入导出详解](https://img.taocdn.com/s3/m/79ac02e9172ded630b1cb66b.png)
总结了oracle的导入导出,希望能帮助大家一. 导出工具exp1. 它是操作系统下一个可执行的文件存放目录/ORACLE_HOME/binexp导出工具将数据库中数据备份压缩成一个二进制系统文件.可以在不同OS间迁移它有三种模式:a. 用户模式:导出用户所有对象以及对象中的数据;b. 表模式:导出用户所有表或者指定的表;c. 整个数据库:导出数据库中所有对象。
2. 导出工具exp交互式命令行方式的使用的例子$exp test/test123@appdbEnter array fetch buffer size: 4096 > 回车Export file: expdat.dmp > m.dmp 生成导出的文件名(1)E(ntire database), (2)U(sers), or (3)T(ables): (2)U > 3Export table data (yes/no): yes > 回车Compress extents (yes/no): yes > 回车Export done in ZHS16GBK character set and ZHS16GBK NCHAR character setAbout to export specified tables via Conventional Path ...Table(T) or Partition(T:P) to be exported: (RETURN to quit) > cmamenu 要导出的表名. . exporting table CMAMENU 4336 rows exportedTable(T) or Partition(T:P) to be exported: (RETURN to quit) >要导出的表名nTable(T) or Partition(T:P) to be exported: (RETURN to quit) > 回车Export terminated successfully without warnings.3. 导出工具exp非交互式命令行方式的例子$exp scott/tiger tables=emp,dept file=/directory/scott.dmp grants=y说明:把scott用户里两个表emp,dept导出到文件/directory/scott.dmp$exp scott/tiger tables=emp query=\"where job=\'salesman\' and sal\<1600\" file=/directory/scott2.dmp说明:在exp里面加上导出emp的查询条件job='salesman' and sal<1600(但我个人很少这样用,还是把满足条件的记录生成临时表后,再exp会方便一些)$exp parfile=username.par file=/directory1/username_1.dmp,/directory1/username_2.dmp filesize=2000Mlog=/directory2/username_exp.log参数文件username.par内容userid=username/userpasswordbuffer=8192000compress=ngrants=y说明:username.par为导出工具exp用的参数文件,里面具体参数可以根据需要去修改filesize指定生成的二进制备份文件的最大字节数(可用来解决某些OS下2G物理文件的限制及加快压缩速度和方便刻历史数据光盘等) 4. 命令参数说明关键字说明(默认)---------------------------------------------------USERID 用户名/口令FULL 导出整个文件(N)BUFFER 数据缓冲区的大小OWNER 所有者用户名列表FILE 输出文件(EXPDAT.DMP)TABLES 表名列表COMPRESS 导入一个范围(Y)RECORDLENGTH IO 记录的长度GRANTS 导出权限(Y)INCTYPE 增量导出类型INDEXES 导出索引(Y)RECORD 跟踪增量导出(Y)ROWS 导出数据行(Y)PARFILE 参数文件名CONSTRAINTS 导出限制(Y)CONSISTENT 交叉表一致性LOG 屏幕输出的日志文件STA TISTICS 分析对象(ESTIMATE)DIRECT 直接路径(N)TRIGGERS 导出触发器(Y)FEEDBACK 显示每x 行(0) 的进度FILESIZE 各转储文件的最大尺寸QUERY 选定导出表子集的子句下列关键字仅用于可传输的表空间TRANSPORT_TABLESPACE 导出可传输的表空间元数据(N) TABLESPACES 将传输的表空间列表二.导入工具imp1. 它是操作系统下一个可执行的文件存放目录/ORACLE_HOME/binimp导入工具将EXP形成的二进制系统文件导入到数据库中.它有三种模式:a. 用户模式:导出用户所有对象以及对象中的数据;b. 表模式:导出用户所有表或者指定的表;c. 整个数据库:导出数据库中所有对象。
oracle导入导出参数,ORACLE数据导入导出里的EXPIMP命令参数
![oracle导入导出参数,ORACLE数据导入导出里的EXPIMP命令参数](https://img.taocdn.com/s3/m/51930e360622192e453610661ed9ad51f01d54c4.png)
oracle导⼊导出参数,ORACLE数据导⼊导出⾥的EXPIMP命令参数1、EXP:1、完全:EXP SYSTEM/MANAGER BUFFER=64000 FILE=C:/FULL.DMP FULL=Y如果要执⾏完全导出,必须具有特殊的权限2、⽤户模式:EXP SONIC/SONIC BUFFER=64000 FILE=C:/SONIC.DMP OWNER=SONIC这样⽤户SONIC的所有对象被输出到⽂件中。
3、表模式:EXP SONIC/SONIC BUFFER=64000 FILE=C:/SONIC.DMP OWNER=SONIC TABLES=(SONIC)这样⽤户SONIC的表SONIC就被导出exp参数:关键字 说明(默认)----------------------------------------------USERID ⽤户名/⼝令FULL 导出整个⽂件 (N)BUFFER 数据缓冲区的⼤⼩OWNER 所有者⽤户名列表FILE 输出⽂件 (EXPDAT.DMP)TABLES 表名列表COMPRESS 导⼊⼀个范围 (Y)RECORDLENGTH IO 记录的长度GRANTS 导出权限 (Y)INCTYPE 增量导出类型INDEXES 导出索引 (Y)RECORD 跟踪增量导出 (Y)ROWS 导出数据⾏ (Y)PARFILE 参数⽂件名CONSTRAINTS 导出限制 (Y)CONSISTENT 交叉表⼀致性LOG 屏幕输出的⽇志⽂件STATISTICS 分析对象 (ESTIMATE)DIRECT 直接路径 (N)TRIGGERS 导出触发器 (Y)FEEDBACK 显⽰每 x ⾏ (0) 的进度FILESIZE 各转储⽂件的最⼤尺⼨QUERY 选定导出表⼦集的⼦句2、IMP:具有三种模式(完全、⽤户、表)1、完全:IMP SYSTEM/MANAGER BUFFER=64000 FILE=C:/FULL.DMP FULL=Y2、⽤户模式:IMP SONIC/SONIC BUFFER=64000 FILE=C:/SONIC.DMP FROMUSER=SONIC TOUSER=SONIC 这样⽤户SONIC的所有对象被导⼊到⽂件中。
Oracle导入导出(imp,exp,impdp,expdp)详解
![Oracle导入导出(imp,exp,impdp,expdp)详解](https://img.taocdn.com/s3/m/bf7d36dd26fff705cc170a6e.png)
FILE 输入文件 (EXPDAT.DMP) TOUSER 用户名列表
SHOW 只列出文件内容 (N) TABLES 表名列表
IGNORE 忽略创建错误 (N) RECORDLENGTH IO 记录的长度
RESUMABLE_TIMEOUT RESUMABLE 的等待时间
COMPILE 编译过程, 程序包和函数 (Y)
STREAMS_CONFIGURATION 导入流的一般元数据 (Y)
STREAMS_INSTANTIATION 导入流实例化元数据 (N)
ROWS 导出数据行 (Y) PARFILE 参数文件名
CONSISTENT 交叉表的一致性 (N) CONSTRAINTS 导出的约束条件 (Y)
OBJECT_CONSISTENT 只在对象导出期间设置为只读的事务处理 (N)
FEEDBACK 每 x 行显示进度 (0)
USERID 必须是命令行中的第一个参数。
关键字 说明 (默认值) 关键字 说明 (默认值)
--------------------------------------------------------------------------
USERID 用户名/口令 FULL 导入整个文件 (N)
GRANTS 导入权限 (Y) INCTYPE 增量导入类型
INDEXES 导入索引 (Y) COMMIT 提交数组插入 (N)
ROWS 导入数据行 (Y) PARFILE 参数文件名
LOG 屏幕输出的日志文件 CONSTRAINTS 导入限制 (Y)
BUFFER 数据缓冲区大小 OWNER 所有者用户名列表
Oracle数据库三种备份方案
![Oracle数据库三种备份方案](https://img.taocdn.com/s3/m/5e9c1c1f6d175f0e7cd184254b35eefdc8d31571.png)
Oracle数据库三种备份⽅案Oracle数据库有三种标准的备份⽅法,它们分别是导出/导⼊(EXP/IMP)、热备份和冷备份。
导出备件是⼀种逻辑备份,冷备份和热备份是物理备份。
⼀、导出/导⼊(Export/Import)利⽤Export可将数据从数据库中提取出来,利⽤Import则可将提取出来的数据送回到Oracle数据库中去。
1、简单导出数据(Export)和导⼊数据(Import)Oracle⽀持三种⽅式类型的输出:(1)、表⽅式(T⽅式),将指定表的数据导出。
(2)、⽤户⽅式(U⽅式),将指定⽤户的所有对象及数据导出。
(3)、全库⽅式(Full⽅式),瘵数据库中的所有对象导出。
数据导⼊(Import)的过程是数据导出(Export)的逆过程,分别将数据⽂件导⼊数据库和将数据库数据导出到数据⽂件。
2、增量导出/导⼊增量导出是⼀种常⽤的数据备份⽅法,它只能对整个数据库来实施,并且必须作为SYSTEM来导出。
在进⾏此种导出时,系统不要求回答任何问题。
导出⽂件名缺省为export.dmp,如果不希望⾃⼰的输出⽂件定名为export.dmp,必须在命令⾏中指出要⽤的⽂件名。
增量导出包括三种类型:(1)、“完全”增量导出(Complete)即备份三个数据库,⽐如:exp system/manager inctype=complete file=040731.dmp(2)、“增量型”增量导出备份上⼀次备份后改变的数据,⽐如:exp system/manager inctype=incremental file=040731.dmp(3)、“累积型”增量导出累计型导出⽅式是导出⾃上次“完全”导出之后数据库中变化了的信息。
⽐如:exp system/manager inctype=cumulative file=040731.dmp数据库管理员可以排定⼀个备份⽇程表,⽤数据导出的三个不同⽅式合理⾼效的完成。
oracle导入导出参数
![oracle导入导出参数](https://img.taocdn.com/s3/m/85aa10cdf80f76c66137ee06eff9aef8941e48ec.png)
oracle导入导出参数Oracle导入导出参数详解概述:Oracle数据库是一种关系型数据库管理系统,支持各种数据导入和导出操作。
本文将详细介绍Oracle数据库导入导出的相关参数和用法,帮助读者更好地理解和使用这些功能。
1. expdp/impdp命令Oracle提供了expdp和impdp命令用于导出和导入数据。
expdp命令用于导出数据,impdp命令用于导入数据。
下面将详细介绍这两个命令的常用参数。
2. expdp参数expdp命令的常用参数如下:- userid:指定连接数据库的用户名和密码。
- directory:指定数据导出的目录。
- dumpfile:指定导出数据的文件名。
- logfile:指定导出日志的文件名。
- tables:指定要导出的表名。
- exclude:指定要排除导出的对象。
- compression:指定导出文件是否进行压缩。
- parallel:指定导出操作的并行度。
3. impdp参数impdp命令的常用参数如下:- userid:指定连接数据库的用户名和密码。
- directory:指定数据导入的目录。
- dumpfile:指定导入数据的文件名。
- logfile:指定导入日志的文件名。
- tables:指定要导入的表名。
- remap_schema:指定将导入数据重新映射到的目标用户。
- remap_tablespace:指定将导入数据重新映射到的目标表空间。
- transform:指定导入数据的转换规则。
4. 导出参数实例下面以一个实际的例子来演示如何使用expdp命令导出数据。
例子:expdp system/password@orcl directory=EXPORT_DIR dumpfile=expdp.dmp logfile=expdp.log tables=EMP,DEPT解析:- system/password@orcl:使用用户名system和密码password连接到数据库实例orcl。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Oracle数据导入导出imp/exp就相当于oracle数据还原与备份。
exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把dmp文件从本地导入到远处的数据库服务器中。
利用这个功能可以构建两个相同的数据库,一个用来测试,一个用来正式使用。
执行环境:可以在SQLPLUS.EXE或者DOS(命令行)中执行,DOS中可以执行时由于在oracle 8i 中安装目录\ora81\BIN被设置为全局路径,该目录下有EXP.EXE与IMP.EXE文件被用来执行导入导出。
oracle用java编写,SQLPLUS.EXE、EXP.EXE、IMP.EXE这两个文件有可能是被包装后的类文件。
SQLPLUS.EXE调用EXP.EXE、IMP.EXE所包裹的类,完成导入导出功能。
下面介绍的是导入导出的实例。
数据导出:1 将数据库TEST完全导出,用户名system 密码manager 导出到D:\daochu.dmp 中exp system/manager@TEST file=d:\daochu.dmp full=y2 将数据库中system用户与sys用户的表导出exp system/manager@TEST file=d:\daochu.dmp owner=(system,sys)3 将数据库中的表inner_notify、notify_staff_relat导出exp aichannel/aichannel@TESTDB2 file= d:\data\newsmgnt.dmptables=(inner_notify,notify_staff_relat)4 将数据库中的表table1中的字段filed1以"00"打头的数据导出exp system/manager@TEST file=d:\daochu.dmp tables=(table1) query=\" where filed1 like '00%'\" 上面是常用的导出,对于压缩,既用winzip把dmp文件可以很好的压缩。
也可以在上面命令后面加上 compress=y 来实现。
数据的导入:1 将D:\daochu.dmp 中的数据导入 TEST数据库中。
imp system/manager@TEST file=d:\daochu.dmpimp aichannel/aichannel@HUST full=y file=file= d:\data\newsmgnt.dmp ignore=y上面可能有点问题,因为有的表已经存在,然后它就报错,对该表就不进行导入。
在后面加上 ignore=y 就可以了。
2 将d:\daochu.dmp中的表table1 导入imp system/manager@TEST file=d:\daochu.dmp tables=(table1)基本上上面的导入导出够用了。
不少情况要先是将表彻底删除,然后导入。
注意:操作者要有足够的权限,权限不够它会提示。
数据库时可以连上的。
可以用tnsping TEST 来获得数据库TEST能否连上。
附录一:给用户增加导入数据权限的操作第一,启动sql*puls第二,以system/manager登陆第三,create user 用户名 IDENTIFIED BY 密码(如果已经创建过用户,这步可以省略)第四,GRANT CREATE USER,DROP USER,ALTER USER ,CREATE ANY VIEW ,DROP ANY VIEW,EXP_FULL_DATABASE,IMP_FULL_DATABASE,DBA,CONNECT,RESOURCE,CREATE SESSION TO 用户名字第五, 运行-cmd-进入dmp文件所在的目录,imp userid=system/manager full=y file=*.dmp或者 imp userid=system/manager full=y file=filename.dmp执行示例:F:\Work\Oracle_Data\backup>imp userid=test/test full=yfile=inner_notify.dmp屏幕显示Import: Release 8.1.7.0.0 - Production on 星期四 2月 16 16:50:05 2006(c) Copyright 2000 Oracle Corporation. All rights reserved.连接到: Oracle8i Enterprise Edition Release 8.1.7.0.0 - Production With the Partitioning optionJServer Release 8.1.7.0.0 - Production经由常规路径导出由EXPORT:V08.01.07创建的文件已经完成ZHS16GBK字符集和ZHS16GBK NCHAR 字符集中的导入导出服务器使用UTF8 NCHAR 字符集 (可能的ncharset转换). 正在将AICHANNEL的对象导入到 AICHANNEL. . 正在导入表 "INNER_NOTIFY" 4行被导入准备启用约束条件...成功终止导入,但出现警告。
附录二:Oracle 不允许直接改变表的拥有者, 利用Export/Import可以达到这一目的.先建立import9.par,然后,使用时命令如下:imp parfile=/filepath/import9.par例 import9.par 内容如下:FROMUSER=TGPMSTOUSER=TGPMS2(注:把表的拥有者由FROMUSER改为TOUSER,FROMUSER和TOUSER 的用户可以不同)ROWS=YINDEXES=YGRANTS=YCONSTRAINTS=YBUFFER=409600file==/backup/ctgpc_20030623.dmplog==/backup/import_20030623.log---------------------------------------------------------------------------------------------exp/imp工具:带参数:rows=y ——带数据导出导入;rows=n ——不带数据的导出导入,只移植结构。
例:只导出3张表的结构:exp user/pasword@dbServerName owner=user tables=(tb1,tb2,tb3) rows=n file=c:\1.dmp连带数据导出:exp user/pasword@dbServerName owner=user tables=(tb1,tb2,tb3) rows=y file=c:\2.dmpimp user2/pasword@dbServerName2 fromuser=user touser=user2file=c:\1.dmp或者imp user2/pasword@dbServerName2 fromuser=user touser=user2file=c:\2.dmp导出一个用户下的所有表数据常用的命令Exp user/password@instance file=file.dmp rows=y log=log_name其中username/password为导出用户的用户名和密码Instance为导出的实例名导出一个用户下的表结构为sql文件使用命令好像导出的都是dmp文件可以使用plsql软件在tools-- export user object如果不要到处table space ,不要勾include storage选择导出的路径文件名,export可以直接导出了导入一个用户下的所有表数据常用命令Imp username/password file=file.dmp fromuser=user1 touser=user2 rows=y 其中username/password为导入到数据库的用户名和密码Fromuser为备份数据库时的用户Touser为导入数据库的用户,一般和username同-----------------------------------------------------------------------------------------------------------------------正文:Oracle数据导出:如果是导出本机的Oracle数据库:exp pcisv62/11@ORCL file="d:\pcisv62081226.dmp" full=y(ORCL为本地数据库监听)如果是导出服务器端的Oracle数据:exp pcisv62/11@tnsname file="d:\pcisv62081226.dmp" full=y(tnsname为COREV6_DBSERVER,SID为COREV6,主机为DBSERVER。
)注意:必须是 DBA 才能执行完整数据库或表空间导出操作。
Oracle数据导入,分以下步骤:1.先在Oracle9i的Enterprise Manager Console下,以sys/sys及sysdba身份登陆,在“存储”-->“表空间”下创建表空间COREV6,同时给其分配合适的空间。
2.在“安全性”-->“用户”下创建用户pcisv62,使用户默认的表空间为COREV6,同时在“角色”里授予CONNECT、DBA、EXP_FULL_DATABASE、IMP_FULL_DATABASE、RESOURCE。
3.导入.dmp文件,开始-->运行cmd,导入命令:imp pcisv62/11@ORCL file="d:\pcisv62081226.dmp" ignore=y注意:如果备份的.dmp文件是以用户pcisv62导出COREV6空间的数据,那么1.新建的用户最好是pcisv62,否则命令为:imp pcisv62/11@ORCL file="pcisv62081226.dmp" fromuser=pcisv62 touser=新建用户 ignore=y2.与新建用户关联的新建空间名必须为COREV6,否则Oracle报找不到COREV6空间的错误。
数据成功导入以后,下一步就是配置Tomcat的server.xml文件:1.如果用到的是本机上的数据,本地数据源里的部分配置为:username="pcisv62" password="11"url="jdbc:oracle:thin:@localhost:1521:orcl"2.如果用到的是服务器上的数据,则数据源里的部分配置为:username="pcisv62" password="11"url="jdbc:oracle:thin:@dbserver:1521:corev6"(dbserver为服务器的名字,corev6为服务器上Oracle的SID)oracle的安装目录E:\oracle\ora92\network\admin下的tnsnames.ora:本地配置:ORCL =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 主机名)(PORT = 1521)))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = ORCL)))或服务器配置:COREV6_DBSERVER =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = dbserver)(PORT = 1521)))(CONNECT_DATA =(SID = COREV6)(SERVER = DEDICATED)))以下转载:几种导入导出的命令方法,以备以后查阅。