oracle表的导入导出-命令
ORACLE导入导出表数据

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⽂件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导出表空间的创建语句、导入、导出dmp文件

Oracle导出表空间的创建语句、导⼊、导出dmp⽂件beginfor c in (select , as name2 from v$tablespace tinner join v$datafile don t."TS#"=d."TS#"where t."TS#">4)loopdbms_output.put_line( 'create tablespace '|| ||' DATAFILE '||''''||2||''''||' size 20MAUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED;' );end loop;end;结果如:create tablespace EXAMPLE DATAFILE 'D:\ORACLE\ORADATA\ORCL\EXAMPLE01.DBF' size 20MAUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED;create tablespace HCZZ_WEB_DATA DATAFILE 'D:\ORACLE\ORADATA\ORCL\DBF_HCZZ_WEB_DATA.DBF' size 20MAUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED;create tablespace HCZZ_WEB_INDEX DATAFILE 'D:\ORACLE\ORADATA\ORCL\DBF_HCZZ_WEB_INDEX.DBF' size 20MAUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED;数据库导出:--第⼀次新建数据库导⼊使⽤impdp hczz_web/password@localhost/orcl dumpfile=HCZZ_WEB_20170706.dmpimpdp hczz_web/password@221.234.25.77/orcl dumpfile=HCZZ_WEB_20180502.dmpimpdp hczz_web/password dumpfile=HCZZ_WEB_20170706.dmp--第⼆次导⼊使⽤impdp hczz_web/password dumpfile=HCZZ_WEB_20170706.dmp table_exists_action=replace--如果有替换还原新的数据库命,则执⾏----------------------impdp hczz_web_test1/password@localhost/orcl dumpfile=HCZZ_WEB_20170628.DMP table_exists_action=replace remap_schema=hczz_web:hczz_web_test1 impdp hczz_web_test1/password@localhost/orcl dumpfile=HCZZ_WEB_20170628.DMP table_exists_action=replace remap_schema=hczz_web:hczz_web_test1 impdp hczz_web_test1/password@localhost/orcl dumpfile=备份库.DMP table_exists_action=replace remap_schema=原库名:现库名创建表空间/*分为四步 *//*第1步:创建临时表空间 */create temporary tablespace yuhang_temptempfile 'D:\oracledata\yuhang_temp.dbf'size 50mautoextend onnext 50m maxsize 20480mextent management local;/*第2步:创建数据表空间 */create tablespace yuhang_dataloggingdatafile 'D:\oracledata\yuhang_data.dbf'size 50mautoextend onnext 50m maxsize 20480mextent management local;/*第3步:创建⽤户并指定表空间 */create user yuhang identified by yuhangdefault tablespace yuhang_datatemporary tablespace yuhang_temp;/*第4步:给⽤户授予权限 */grant connect,resource,dba to yuhang;创建⽤户DECLAREuser_name CONSTANT VARCHAR2 (64) :='hczz_web';user_password CONSTANT VARCHAR2 (64) :='password';data_tablespace_name CONSTANT VARCHAR2 (64) :='hczz_web_data';temp_tablespace_name CONSTANT VARCHAR2 (64) :='hczz_web_temp';PROCEDURE p_execcmd (v_cmd IN VARCHAR2)ASv_cursorid INTEGER;BEGINv_cursorid := DBMS_SQL.open_cursor;DBMS_SQL.parse (v_cursorid, v_cmd, DBMS_SQL.native);DBMS_SQL.close_cursor (v_cursorid);EXCEPTIONWHEN OTHERSTHENDBMS_SQL.close_cursor (v_cursorid);RAISE;END p_execcmd;BEGIN-------------------1.创建⽤户-----------------------------------------------p_execcmd ( 'CREATE USER '||user_name||' PROFILE DEFAULT IDENTIFIED BY '|| user_password||' DEFAULT TABLESPACE '|| data_tablespace_name||' TEMPORARY TABLESPACE '|| temp_tablespace_name||' ACCOUNT UNLOCK');-------------------2.授权---------------------------------------------------p_execcmd( 'GRANT CONNECT TO '||user_name||' WITH ADMIN OPTION' ); p_execcmd( 'GRANT RESOURCE TO '||user_name||' WITH ADMIN OPTION' ); ---以下慎⽤,权限过⼤p_execcmd( 'GRANT DBA TO '||user_name||' WITH ADMIN OPTION' ); END;。
Oracle中的导入导出表及数据

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导入与导出(即备份与恢复)

在没有警告的情况下成功终止导出。
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导入导出

若要导出其他用户的表,则:
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数据库导入导出语句

oracle数据库导⼊导出语句
oracle的exp/imp命令⽤于实现对数据库的导出/导⼊操作;exp命令⽤于把数据从远程数据库服务器导到本地,⽣成.dmp⽂件;imp命令⽤于把本地的数据库.dmp⽂件从本地导⼊到远程的oracle数据库中
1 将数据库test完全导出.⽤户名system/manager导出到D:daochu.dmp 代码如下:
exp file=d:daochu.dmp full=y
2.将数据库中system⽤户与sys⽤户的表导出代码如下:
exp file=d:daochu.dmp owner=(system,sys)
3.将数据库中的表table1 table2 导出代码如下:
exp file:= d:daochu.dmp tables=(table1,table2)
4.将数据库中的表table1中的字段filed1以"00"打头的数据导出代码如下;
exp file:=d:daochu.dmp tables=(table1) query="where filed1 like '00%'"
5.将D:daochu.dmp中的数据导⼊到test数据库中代码如下
imp file:=d:doachu.dmp (这样写的肯定会报错,因为数据库中已经存在表了,对该表就不能导⼊)
所以要在后⾯加上ignore=y就可以了
imp file:=d:daochu.dmp ignore=y 就可以了
6.将d:daochu.dmp中的表table1导⼊到test的数据库中
imp file:=d:daochu.dmp tables=(table1);。
Oracle数据库导入导出命令总结

Oracle数据库导入导出命令总结Oracle数据库导入导出命令总结执行环境:可以在SQLPLUS.EXE或者DOS(命令行)中执行,DOS中可以执行时由于在oracle中,安装目录\\ora9i\\BIN被设置为全局路径,该目录下有EXP.EXE与IMP.EXE文件被用来执行导入导出。
oracle用java编写,SQLPLUS.EXE、EXP.EXE、IMP.EXE这两个文件是被包装后的类文件。
SQLPLUS.EXE调用EXP.EXE、IMP.EXE所包裹的类,完成导入导出功能。
下面介绍的是导入导出的实例。
数据导出:1将数据库zxcc完全导出,用户名kf密码zx导出到D:\\zxcc.dmp中expkf/zx@zxccfile=d:\\zxcc.dmpfull=yfull=y表示全库导出。
full总共有2个可选项yes(y)/no(n),缺省情况下full=no,这时只会将该用户下的对象导出。
2将数据库zxcc中kf用户与cc用户的表导出expkf/zx@zxccfile=d:\\zxcc_ur.dmpowner=(kf,cc)full方式可以备份所有用户的数据库对象,包括表空间、用户信息等,owner=XX只能备份指定用户的对象,其他用户下的就不备份了,EXP中full=y和owner=XX是不能同时使用的。
3将数据库zxcc中的表kf_operator、kf_role导出expkf/zx@zxccfile=d:\\zxcc_tb.dmptables=(kf_operator,kf_role)tables=xx表示备份相关表,不能同时和owner、full使用。
4将数据库中的表kf_operator中的字段oper_id以"00"打头的数据导出expkf/zx@zxccfile=d:\\zxcc_t.dmptables=(kf_operator)query=\\"whereop er_idlike"00%"\\"query主要是导出合适条件的数据。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
oracle表的导入导出-命令.txt12思念是一首诗,让你在普通的日子里读出韵律来;思念是一阵雨,让你在枯燥的日子里湿润起来;思念是一片阳光,让你的阴郁的日子里明朗起来。
数据导出: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:datanewsmgnt.dmp tables=(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:datanewsmgnt.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:WorkOracle_Databackup>imp userid=test/test full=y file=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 - ProductionWith 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.dmp*************************************************************************************** ***********************************************常用命令1.创建表空间create tablespace 表空间名default ‘filename’/path’服务器端路径’[size integer [k | m]] [autoextend [off | on]]; size:制定文件的大小,autoextend:用来启动或禁用数据文件的自动扩展。
2.创建新用户create user 用户名identified by 密码[default tablespace 表空间][temporary tablespace 临时表空间];3.为用户授权grant 权限to 用户grant 权限on 表名to 用户4.修改用户密码alter user 用户名identified by 密码;5.删除用户drop user 用户名casaed;6.查看当前用户show user7.查看当前时间select sysdate from dual;8.查看当前用户下的所有表select table_name from user_tables;9.查看当前表的结构desc 表名10.修改上一条的内容edit;Oracle 数据库对象1.同义词a.创建同义词私有同义词create [or replace] synonym 同义词名for 对象名;共有同义词create [or replace] public synonym 同义词名for 对象名;drop synonym同义词名;2.序列a.创建序列create sequence 序列名[start with integer][increment by integer][maxvalue integer | nomaxvalue][minvalue integer | nominvalue][cycle | nocycle][cache integer | nocache];b.访问序列select 序列名.nextval from dual;select 序列名.currval from dual;c.根改序列alter sequence 序列名[increment by integer][maxvalue integer | nomaxvalue][minvalue integer | nominvalue][cycle | nocycle][cache integer | nocache];drop sequence序列名;Oracle 数据表管理(一)1.创建表create table 表名(字段名1 类型,字段名2 类型…);2.修改表命令更改现有列alter table 表名modify (column definition….);向表中添加新列alter table 表名add (column definition….);删除表中现有的列alter table 表名drop column 列名;3.删除表中的记录而不删除表结构truncate table 表名;4.删除与表的所有内容drop table 表名cascade;5.数据操作语言(DML)SELECTSelect * | {[distinct] 字段名| 表达式[列别名],…}From 表明[where 条件][order by 字段名];distinct:限制只返回不同的列CTASCreate table 新表名as select 字段名from 旧表名;//拷贝旧表的结构和记录,不拷贝约束INSERTInsert into 表名[(字段名)] values (值);IISInsert into 表名1(字段名1) select 字段名2 from 表名2;//表结构已存在,从另一个表中复制记录UPDATEUpdate 表名Set 字段名=新值[where 条件];DELETEDelete 表名[where 条件];6.事务控制语言COMMITCommit;//提交SAVEPOINTSavepoint 保存点;ROLLBACKRollback or Rollback work;7.数据控制语言GRANTgrant 权限on 表名to 用户;REVOKERevoke 权限on 表名from 用户;8.集合操作符UNION :合并查询结果,并删除重复的行Select 字段名1 from 表名1UnionSelect 字段名2 from 表名2;UNION ALL:合并查询结果,并包括重复的行Select 字段名1 from 表名1Union allSelect 字段名2 from 表名2;INTERSECT:返回两个查询都有的行Select 字段名1 from 表名1IntersectSelect 字段名2 from 表名2;MINUS:返回第一个查询有而第二个查询中没有的行Select 字段名1 from 表名1MinusSelect 字段名2 from 表名2;Oracle 数据表管理(二)9.锁和表分区A.锁行级锁select …for update[of 字段] [wait n | nowait];wait n :等待的秒数表级锁lock 表名in 锁定模式mode [nowait]表级锁的模式:行共享(row share,rs)行排他(row exclusive,rx)共享(share,s)共享行排他(share row exclusive,srx)排他(exclusive,x)B.表分区范围分区partition by range (column_name)(partition 分区名1 value less then(分区的边界值) [tablespace 表空间1], partition 分区名2 value less then(分区的边界值) [tablespace 表空间2] );散列分区partition by hash (column_name)partitions 散列分区的数目[store in (分区使用的表空间)];orpartition by hash (column_name)(partition 分区名1 [tablespace 表空间1],partition 分区名1 [tablespace 表空间1]);复合分区partition by range (column_name1)subpartition by hash (column_name2)subpartitions 散列分区的数目[store in (分区使用的表空间)];(partition 分区名1 value less then(分区的边界值),partition 分区名2 value less then(分区的边界值),partition 分区名N value less then(maxvalue));列表分区partition by list (column_name)(partition分区名1 values (分区键值的列表1),partition分区名2 values (分区键值的列表2),partition分区名N values (default));default:允许存储前面的分区不能存储的记录10.分区维护操作添加分区alter table 表名add partition 分区名values less then(分区的边界值); 删除分区alter table 表名drop partition 分区名;截断分区alter table 表名truncate partition 分区名;合并分区alter table 表名merge partitions 分区名1, 分区名2 into 分区名;拆分分区alter table 表名split partition 分区名at (value) into (partition分区名1,partition 分区名2);分区重命名alter table 表名rename partition 旧分区名to 新分区名;11.视图a.创建视图create [or replace] [force | noforce] view 视图名[列别名]as select 字段名from 表名[with check option [constraint 约束名]][with read only];with check option:指定只能插入或更新视图可以访问的行,with read only:确保不能在此视图上执行任何修改操作。