ORACLE 11g数据导入导出
oracle使用数据泵导出和导入
使用数据泵导出和导入几乎所有DBA都熟悉oracle的导出和导入实用程序,它们将数据装载进或卸载出数据库,在oracle database 10g和11g中,你必须使用更通用更强大的数据泵导出和导入(Data Pump Export and Import)实用程序导出和导入数据。
以前的导出和导入实用程序在oracle database 11g中仍然可以使用,但是Oracle强烈建议使用数据泵(Data Pump)技术,因为它提供了更多的高级特性。
例如,你可以中断导出/导入作业,然后恢复它们;可以重新启动已失败的导出和导入作业;可以重映射对象属性以修改对象;可以容易地从另一个会话中监控数据泵的作业,甚至可以在作业过程中修改其属性;使用并行技术很容易快速移动大量的数据;因为oracle提供了针对数据泵技术的API,所以可以容易地在PL/SQL 程序中包含导出/导入作业;可以使用更强大的可移植表空间特性来快速移植大量的数据,甚至可在不同操作系统平台之间移动。
与旧的导出和导入实用程序不同,数据泵程序有一组可以在命令行中使用的参数以及一组只能以交互方式使用的特殊命令,你可以通过在命令行中输入expdp help = y 或者impdp help = y快速获取所有数据泵参数及命令的概述。
一.数据泵技术的优点原有的导出和导入技术基于客户机,而数据泵技术基于服务器。
默认所有的转储,日志和其他文件都建立在服务器上。
以下是数据泵技术的主要优点:1.改进了性能2.重新启动作业的能力3.并行执行的能力4.关联运行作业的能力5.估算空间需求的能力6.操作的网格方式7.细粒度数据导入功能8.重映射能力二.数据泵导出和导入的用途1.将数据从开发环境转到测试环境或产品环境2.在不同的操作系统平台上的oracle数据库直接的传递数据3.在修改重要表之前进行备份4.备份数据库5.把数据库对象从一个表空间移动到另一个表空间6.在数据库直接移植表空间7.提取表或其他对象的DDL注意:数据库不建立完备的备份,因为在导出文件中没有灾难发生时的最新数据。
Oracle11g--使用PLSQL进行excel、csv、txt文件的数据导入
Oracle11g--使⽤PLSQL进⾏excel、csv、txt⽂件的数据导⼊Oracle 11g -- 使⽤PLSQL进⾏excel、csv、txt⽂件的数据导⼊1、导⼊ txt/csv ⽂件 (使⽤ Text Importer)创建表结构:create table student(id int,name varchar(255),birthday varchar(255),sex varchar(255))创建表数据-student.txt(分隔符为’\t’):01 赵雷 1990-01-01 男02 钱电 1990-12-21 男03 孙风 1990-05-20 男04 李云 1990-08-06 男05 周梅 1991-12-01 ⼥06 吴兰 1992-03-01 ⼥07 郑⽵ 1989-07-01 ⼥08 王菊 1990-01-20 ⼥使⽤Text Importer导⼊⼯具:然后点击下⽅的import进⾏导⼊。
遇到问题:解决⽅法:原始数据的⽇期是⽤”-”分隔开的,并不是默认的⽇期数字的形式,这⾥可以不使⽤to_date()进⾏转换,保留原来的格式即可。
再次import即可导⼊成功,查询数据如下:注:如果有主键约束会⾃动覆盖掉相同键的记录2、导⼊excel⽂件(excel转csv)准备的excel⽂件如下:清空Oracle中表student的数据:truncate table student;1)尝试导⼊⼀:使⽤ODBC Importer导⼊⼯具User/System DSN中没有选项,并且出现问题:解决过程(fail了):⾃⼰电脑是64位系统,⽽ODBC数据源管理程序是32位的,需要⼿动添加新excel数据源DSN驱动:运⾏C:\Windows\SysWOW64\odbcad32.exe点击添加,选择如下图所⽰Microsoft Excel Driver(*.xls)但是重启PLSQL或是服务之后还是识别不到新增的驱动。
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数据库中。
oracleg数据库导入导出方法教程
oracleg数据库导入导出方法教程Oracle 11g 是一种关系型数据库管理系统,它具有很多强大的功能,包括数据导入和导出。
在本教程中,我们将介绍 Oracle 11g 数据库的导入和导出方法。
导出数据的方法有两种,一种是使用 exp 工具,另一种是使用expdp 工具。
exp 工具是在 Oracle 11g 之前版本中使用的,而 expdp工具是在 Oracle 11g 之后版本中引入的。
在这个教程中,我们将使用expdp 工具来导出数据。
导出数据的步骤如下:1. 打开终端或命令提示符,并登录到您的 Oracle 数据库。
2.使用以下命令导出整个数据库:```sql```其中,username 是数据库用户名,password 是密码,connect_string 是连接字符串,directory_name 是要导出数据的目录名称,dumpfile_name 是要导出数据的文件名称。
例如,如果要导出一个用户的数据,可以使用以下命令:```sql```这将导出 hr 用户的数据到 datapump 目录,并生成一个 hr.dmp 文件。
3.数据导出完成后,您可以在指定目录下找到生成的导出文件。
导入数据的方法也有两种,一种是使用 imp 工具,另一种是使用impdp 工具。
在这个教程中,我们将使用 impdp 工具来导入数据。
导入数据的步骤如下:1. 打开终端或命令提示符,并登录到您的 Oracle 数据库。
2.使用以下命令导入数据:```sql```其中,username 是数据库用户名,password 是密码,connect_string 是连接字符串,directory_name 是导入数据的目录名称,dumpfile_name 是要导入的数据文件的名称。
例如,如果要导入一个用户的数据,可以使用以下命令:```sql```这将导入 hr 用户的数据,该数据文件位于 datapump 目录下的hr.dmp 文件。
Oracle11G导入导出(imp和exp)少表解决方法
Oracle 11G R2 用exp无法导出空表解决方法Oracle 11G在用EXPORT导出时,空表不能导出11G R2中有个新特性,当表无数据时,不分配segment,以节省空间解决方法:一、insert一行,再rollback就产生segment了。
该方法是在在空表中插入数据,再删除,则产生segment。
导出时则可导出空表。
二、设置deferred_segment_creation 参数该参数值默认是TRUE,当改为FALSE时,无论是空表还是非空表,都分配segment。
修改SQL语句:alter system set deferred_segment_creation=false scope=both;需注意的是:该值设置后对以前导入的空表不产生作用,仍不能导出,只能对后面新增的表产生作用。
如需导出之前的空表,只能用第一种方法。
三、用以下这句查找空表select 'alter table '||table_name||' allocate extent;' from user_tables where num_rows=0;把查询结果导出,执行导出的语句,强行修改segment值,然后再导出即可导出空表,注意:数据库插入数据前,修改11g_R2参数可以导出空表查找空表select 'alter table '||table_name||' allocate extent;' from user_tables wherenum_rows=0四、Oracle 10g以后增加了expdp和impdp工具,用此工具也可以导出空的表oracle expdp/impdp 用法详解1)创建逻辑目录,该命令不会在操作系统创建真正的目录,最好以system等管理员创建。
create directory db_bak as 'd:\test\dump';2)查看管理理员目录(同时查看操作系统是否存在,因为Oracle并不关心该目录是否存在,如果不存在,则出错)select * from dba_directories;3)给system用户赋予在指定目录的操作权限,最好以system等管理员赋予。
Oracle数据库导入导出方法汇总
Oracle数据库导入导出方法:1.使用命令行:数据导出: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.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= d:\data\newsmgnt.dmp ignore=y上面可能有点问题,因为有的表已经存在,然后它就报错,对该表就不进行导入。
在后面加上ignore=y 就可以了。
2.将d:\daochu.dmp中的表table1导入imp system/manager@TEST file=d:\daochu.dmp tables=(table1)3.不同名用户之间的数据导入:imp system/test@xe fromuser=hkb touser=hkb_new file=c:\orabackup\hkbfull.dmplog=c:\orabackup\hkbimp.log;2.plsql:数据导出:TOOLS-Export user objects(用户对象)TOOLS-Export tables(表)数据的导入:TOOLS-Import tablesOracle Import(表) SQL Inserts(用户对象)也可以将用户对象的语句拷贝出来,粘贴到Command Window这样的好处是可以看到执行的过程。
oracle数据库导入导出命令
Oracle数据导入导出imp/exp功能:Oracle数据导入导出imp/exp就相当与oracle数据还原与备份。
大多情况都可以用Oracle数据导入导出完成数据的备份和还原(不会造成数据的丢失)。
Oracle有个好处,虽然你的电脑不是服务器,但是你装了oracle客户端,并建立了连接(通过Net Configuration Assistant添加正确的服务命名,其实你可以想成是客户端与服务器端修了条路,然后数据就可以被拉过来了)这样你可以把数据导出到本地,虽然可能服务器离你很远。
你同样可以把dmp文件从本地导入到远处的数据库服务器中。
利用这个功能你可以构建俩个相同的数据库,一个用来测试,一个用来正式使用。
执行环境:可以在SQLPLUS.EXE或者DOS(命令行)中执行,DOS中可以执行时由于在oracle 8i 中安装目录\$ora10g\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 将数据库中的表table1 、table2导出exp system/manager@TEST file=d:\daochu.dmp tables=(table1,table2) 4 将数据库中的表table1中的字段filed1以"00"打头的数据导出exp system/manager@TEST file=d:\daochu.dmp tables=(table1) query=\" where filed1 like '00%'\"上面是常用的导出,对于压缩我不太在意,用winzip把dmp文件可以很好的压缩。
ORA1008-Oracle导入导出
Oracle 10G EXP和IMP使用说明Exp和imp导入导出和oracle版本没有关系,不同数据库的版本可以互导。
而empdp和impdp,如果在oralce11g导出的数据库,导入时只能导入到oracle11g数据库。
同时exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把dmp文件从本地导入到远处的数据库服务器中。
利用这个功能可以构建两个相同的数据库,一个用来测试,一个用来正式使用。
调用EXP1.将数据库TEST完全导出,用户名system 密码manager 导出到D:\daochu.dmp中exp system/manager@TEST file=d:\daochu.dmp full=y2.将数据库中system用户与sys用户的表导出(如果不是本台机要加上ip地址,车管所的是导入服务器的,所以要加服务器的ip地址)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%‘\"调用IMP(先建立一个用户,再建一个连接,最后倒入数据)1. 获取帮助imp help=y2. 导入一个完整数据库imp system/manager file=bible_db log=dible_db full=y ignore=y3. 导入一个或一组指定用户所属的全部表、索引和其他对象imp system/manager file=seapark log=seapark fromuser=seaparkimp system/manager file=seapark log=seapark fromuser=(seapark,amy,amyc,harold)4. 将一个用户所属的数据导入另一个用户imp system/manager file=tank log=tank fromuser=seapark touser=seapark_copyimp system/manager file=tank log=tank fromuser=(seapark,amy) touser=(seapark1, amy1)5. 导入一个表imp system/manager file=tank log=tank fromuser=seapark TABLES=(a,b)6. 从多个文件导入imp system/manager file=(paycheck_1,paycheck_2,paycheck_3,paycheck_4) log=paycheck, filesize=1G full=y7. 使用参数文件imp system/manager parfile=bible_tables.parbible_tables.par参数文件:#Import the sample tables used for the Oracle8i Database Administrator‘sBible. fromuser=seapark touser=seapark_copy file=seapark log=seapark_import8. 增量导入imp system./manager inctype= RECTORE FULL=Y FILE=AOracle 10g EXPDP和IMPDP使用说明Oracle Database 10g引入了最新的数据泵(Data Dump)技术,使DBA或开发人员可以将数据库元数据(对象定义)和数据快速移动到另一个oracle数据库中.数据泵导出导入(EXPDP和IMPDP)的作用1,实现逻辑备份和逻辑恢复.2,在数据库用户之间移动对象.3,在数据库之间移动对象4,实现表空间搬移.数据泵导出导入与传统导出导入的区别在10g之前,传统的导出和导入分别使用EXP工具和IMP工具,从10g开始,不仅保留了原有的EXP和IMP工具,还提供了数据泵导出导入工具EXPDP和IMPDP.使用EXPDP和IMPDP时应该注意的事项;EXP和IMP是客户段工具程序,它们既可以在客户端使用,也可以在服务段使用.EXPDP和IMPDP是服务端的工具程序,他们只能在ORACLE服务端使用,不能在客户端使用IMP只适用于EXP导出文件,不适用于EXPDP导出文件;IMPDP只适用于EXPDP导出文件,而不适用于EXP导出文件.数据泵导出包括导出表,导出方案,导出表空间,导出数据库4种方式.EXPDP命令行选项1. ATTACH该选项用于在客户会话与已存在导出作用之间建立关联.语法如下ATTACH=[schema_name.]job_nameSchema_name用于指定方案名,job_name用于指定导出作业名.注意,如果使用ATTACH选项,在命令行除了连接字符串和ATTACH选项外,不能指定任何其他选项,示例如下:Expdp scott/tiger ATTACH=scott.export_job2. CONTENT该选项用于指定要导出的内容.默认值为ALLCONTENT={ALL | DATA_ONLY | METADATA_ONLY}当设置CONTENT为ALL 时,将导出对象定义及其所有数据.为DA TA_ONLY时,只导出对象数据,为METADA TA_ONLY时,只导出对象定义Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dumpCONTENT=METADATA_ONLY3. DIRECTORY指定转储文件和日志文件所在的目录DIRECTORY=directory_objectDirectory_object用于指定目录对象名称.需要注意,目录对象是使用CREATE DIRECTORY语句建立的对象,而不是OS 目录Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dump先在对应的位置创建物理文件夹,如D:\backup建立目录:create or replace directory backup as '/opt/oracle/utl_file'SQL>CREATE DIRECTORY backup as ‘d:\backup’;SQL>grant read,write on directory backup to SYSTEM;查询创建了那些子目录:SELECT * FROM dba_directories;4. DUMPFILE用于指定转储文件的名称,默认名称为expdat.dmpDUMPFILE=*directory_object:+file_name *,….+Directory_object用于指定目录对象名,file_name用于指定转储文件名.需要注意,如果不指定directory_object,导出工具会自动使用DIRECTORY选项指定的目录对象Expdp scott/tiger DIRECTORY=dump1 DUMPFILE=dump2:a.dmp5. ESTIMATE指定估算被导出表所占用磁盘空间分方法.默认值是BLOCKSEXTIMATE={BLOCKS | STATISTICS}设置为BLOCKS时,oracle会按照目标对象所占用的数据块个数乘以数据块尺寸估算对象占用的空间,设置为STATISTICS时,根据最近统计值估算对象占用空间Expdp scott/tiger TABLES=emp ESTIMATE=STATISTICSDIRECTORY=dump DUMPFILE=a.dump6. EXTIMATE_ONLY指定是否只估算导出作业所占用的磁盘空间,默认值为NEXTIMATE_ONLY={Y | N}设置为Y时,导出作用只估算对象所占用的磁盘空间,而不会执行导出作业,为N时,不仅估算对象所占用的磁盘空间,还会执行导出操作.Expdp scott/tiger ESTIMATE_ONLY=y NOLOGFILE=y7. EXCLUDE该选项用于指定执行操作时释放要排除对象类型或相关对象EXCLUDE=object_type*:name_clause+ *,….+Object_type用于指定要排除的对象类型,name_clause用于指定要排除的具体对象.EXCLUDE 和INCLUDE不能同时使用Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dup EXCLUDE=VIEW8. FILESIZE指定导出文件的最大尺寸,默认为0,(表示文件尺寸没有限制)9. FLASHBACK_SCN指定导出特定SCN时刻的表数据FLASHBACK_SCN=scn_valueScn_value用于标识SCN值.FLASHBACK_SCN和FLASHBACK_TIME不能同时使用Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dmpFLASHBACK_SCN=35852310. FLASHBACK_TIME指定导出特定时间点的表数据FLASHBACK_TIME=”TO_TIMESTAMP(time_value)”Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dmp FLASHBACK_TIME=“TO_TIMESTAMP(’25-08-2004 14:35:00’,’DD-MM-YYYY HH24:MI:SS’)”11. FULL指定数据库模式导出,默认为NFULL={Y | N}为Y时,标识执行数据库导出.12. HELP指定是否显示EXPDP命令行选项的帮助信息,默认为N当设置为Y时,会显示导出选项的帮助信息.Expdp help=y13. INCLUDE指定导出时要包含的对象类型及相关对象INCLUDE = object_type*:name_clause+ *,… +14. JOB_NAME指定要导出作用的名称,默认为SYS_XXXJOB_NAME=jobname_string15. LOGFILE指定导出日志文件文件的名称,默认名称为export.logLOGFILE=[directory_object:]file_nameDirectory_object用于指定目录对象名称,file_name用于指定导出日志文件名.如果不指定directory_object.导出作用会自动使用DIRECTORY的相应选项值.Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dmp logfile=a.log16. NETWORK_LINK指定数据库链名,如果要将远程数据库对象导出到本地例程的转储文件中,必须设置该选项.17. NOLOGFILE该选项用于指定禁止生成导出日志文件,默认值为N.18. PARALLEL指定执行导出操作的并行进程个数,默认值为119. PARFILE指定导出参数文件的名称PARFILE=[directory_path] file_name20. QUERY用于指定过滤导出数据的where条件QUERY=[schema.] [table_name:] query_clauseSchema用于指定方案名,table_name用于指定表名,query_clause用于指定条件限制子句.QUERY选项不能与CONNECT=METADA TA_ONLY,EXTIMA TE_ONLY,TRANSPORT_TABLESPACES 等选项同时使用.Expdp scott/tiger directory=dump dumpfiel=a.dmpTables=emp query=’WHERE deptno=20’21. SCHEMAS该方案用于指定执行方案模式导出,默认为当前用户方案.22. STATUS指定显示导出作用进程的详细状态,默认值为023. TABLES指定表模式导出TABLES=*schema_name.+table_name*:partition_name+*,…+Schema_name用于指定方案名,table_name用于指定导出的表名,partition_name用于指定要导出的分区名.24. TABLESPACES指定要导出表空间列表25. TRANSPORT_FULL_CHECK该选项用于指定被搬移表空间和未搬移表空间关联关系的检查方式,默认为N.当设置为Y时,导出作用会检查表空间直接的完整关联关系,如果表空间所在表空间或其索引所在的表空间只有一个表空间被搬移,将显示错误信息.当设置为N时,导出作用只检查单端依赖,如果搬移索引所在表空间,但未搬移表所在表空间,将显示出错信息,如果搬移表所在表空间,未搬移索引所在表空间,则不会显示错误信息.26. TRANSPORT_TABLESPACES指定执行表空间模式导出27. VERSION指定被导出对象的数据库版本,默认值为COMPATIBLE.VERSION={COMPATIBLE | LATEST | version_string}为COMPATIBLE时,会根据初始化参数COMPATIBLE生成对象元数据;为LATEST时,会根据数据库的实际版本生成对象元数据.version_string用于指定数据库版本字符串.调用EXPDP使用EXPDP工具时,其转储文件只能被存放在DIRECTORY对象对应的OS目录中,而不能直接指定转储文件所在的OS目录.因此,使用EXPDP工具时,必须首先建立DIRECTORY对象.并且需要为数据库用户授予使用DIRECTORY对象权限.C REATE DIRECTORY dump dir AS ‘D:DUMP’;GRANT READ, WIRTE ON DIRECTORY dump_dir TO scott;1,导出表Expdp scott/tiger DIRECTORY=dump_dir DUMPFILE=tab.dmp TABLES=dept,emp logfile=exp.log; 2,导出方案Expdp scott/tiger DIRECTORY=dump_dir DUMPFILE=schema.dmp SCHEMAS=system,scott logfile=/exp.log;3.导出表空间Expdp system/manager DIRECTORY=dump_dir DUMPFILE=tablespace.dmp TABLESPACES=user01,user02 logfile=/exp.log;4,导出数据库Expdp system/manager DIRECTORY=dump_dir DUMPFILE=full.dmp FULL=Y logfile=/exp.log;使用IMPDPIMPDP命令行选项与EXPDP有很多相同的,不同的有:1,REMAP_DA TAFILE该选项用于将源数据文件名转变为目标数据文件名,在不同平台之间搬移表空间时可能需要该选项.REMAP_DATAFIEL=source_datafie:target_datafile2,REMAP_SCHEMA该选项用于将源方案的所有对象装载到目标方案中.REMAP_SCHEMA=source_schema:target_schema3,REMAP_TABLESPACE将源表空间的所有对象导入到目标表空间中REMAP_TABLESPACE=source_tablespace:target_tablespace4.REUSE_DA TAFILES该选项指定建立表空间时是否覆盖已存在的数据文件.默认为NREUSE_DATAFIELS={Y | N}5.SKIP_UNUSABLE_INDEXES指定导入是是否跳过不可使用的索引,默认为N6,SQLFILE指定将导入要指定的索引DDL操作写入到SQL脚本中SQLFILE=[directory_object:]file_nameImpdp scott/tiger DIRECTORY=dump DUMPFILE=tab.dmp SQLFILE=a.sql7.STREAMS_CONFIGURATION指定是否导入流元数据(Stream Matadata),默认值为Y.8,TABLE_EXISTS_ACTION该选项用于指定当表已经存在时导入作业要执行的操作,默认为SKIPTABBLE_EXISTS_ACTION={SKIP | APPEND | TRUNCATE | FRPLACE }当设置该选项为SKIP时,导入作业会跳过已存在表处理下一个对象;当设置为APPEND时,会追加数据,为TRUNCATE时,导入作业会截断表,然后为其追加新数据;当设置为REPLACE时,导入作业会删除已存在表,重建表病追加数据,注意,TRUNCATE选项不适用与簇表和NETWORK_LINK选项9.TRANSFORM该选项用于指定是否修改建立对象的DDL语句TRANSFORM=transform_name:value[:object_type]Transform_name用于指定转换名,其中SEGMENT_ATTRIBUTES用于标识段属性(物理属性,存储属性,表空间,日志等信息),STORAGE用于标识段存储属性,VALUE用于指定是否包含段属性或段存储属性,object_type用于指定对象类型.Impdp scott/tiger directory=dump dumpfile=tab.dmp Transform=segment_attributes:n:table 10.TRANSPORT_DATAFILES该选项用于指定搬移空间时要被导入到目标数据库的数据文件TRANSPORT_DATAFILE=datafile_nameDatafile_name用于指定被复制到目标数据库的数据文件Impdp system/manager DIRECTORY=dump DUMPFILE=tts.dmpTRANSPORT_DATAFILES=’/user01/data/tbs1.f’调用IMPDP1, 导入表Impdp scott/tiger DIRECTORY=dump_dir DUMPFILE=tab.dmp TABLES=dept,emp logfile=/exp.log;Impdp system/manage DIRECTORY=dump_dir DUMPFILE=tab.dmpTABLES=scott.dept,scott.emp REMAP_SCHEMA=SCOTT:SYSTEM logfile=/exp.log;第一种方法表示将DEPT和EMP表导入到SCOTT方案中,第二种方法表示将DEPT和EMP表导入的SYSTEM方案中.注意,如果要将表导入到其他方案中,必须指定REMAP SCHEMA选项.2,导入方案Impdp scott/tiger DIRECTORY=dump_dir DUMPFILE=schema.dmp SCHEMAS=scott logfile=/exp.log;Impdp system/manager DIRECTORY=dump_dir DUMPFILE=schema.dmpSCHEMAS=scott REMAP_SCHEMA=scott:system logfile=/exp.log;3,导入表空间Impdp system/manager DIRECTORY=dump_dir DUMPFILE=tablespace.dmp TABLESPACES=user01 logfile=/exp.log;4,导入数据库Impdp system/manager DIRECTORY=dump_dir DUMPFILE=full.dmp FULL=y logfile=/exp.log;数据库冷备冷备份数据必须是数据库不在open状态下,对数据库进用数据备份。
oracle不同版本间数据的导入导出
Oracle的imp/exp组件是我们常用的工具,它的一个操作原则就是向下兼容。
下面是据此总结的几个使用规则和相关测试:规则1:低版本的exp/imp可以连接到高版本(或同版本)的数据库服务器,但高版本的exp/imp不能连接到低版本的数据库服务器--1.1 使用9i客户端通过imp连接到10g数据库C:\Documents and Settings\yuechaotian>exp userid=hdtest/test@s67tables=(ab01) rows=n file=d:\x.dmpExport: Release 9.2.0.1.0 - Production on 星期三 2月 20 10:09:55 2008Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.连接到: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - ProductionWith the Partitioning, OLAP and Data Mining options已导出 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集注: 将不会导出表数据(行)即将导出指定的表通过常规路径 .... . 正在导出表 AB01在没有警告的情况下成功终止导出。
--1.2 使用10g客户端通过imp连接9i数据库:连接失败(而不是导出失败)C:\Documents and Settings\yuechaotian>exp userid=hbjb_kf_hd/test@s46 owner=hdtest file=d:\x.dmpExport: Release 10.2.0.1.0 - Production on 星期三 2月 20 09:57:22 2008Copyright (c) 1982, 2005, Oracle. All rights reserved.EXP-00056: 遇到 ORACLE 错误 6550ORA-06550: 第 1 行, 第 41 列:PLS-00302: 必须说明 'SET_NO_OUTLINES' 组件ORA-06550: 第 1 行, 第 15 列:PL/SQL: Statement ignoredEXP-00000: 导出终止失败规则2:高版本exp出的dmp文件,低版本无法imp(无法识别dmp文件)--2.1 使用10g客户端exp出10g的数据C:\Documents and Settings\yuechaotian>exp userid=test/test@orclowner=test file=d:\10g.dmpExport: Release 10.2.0.1.0 - Production on 星期三 2月 20 11:16:39 2008Copyright (c) 1982, 2005, Oracle. All rights reserved.连接到: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - ProductionWith the Partitioning, OLAP and Data Mining options已导出 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集服务器使用 AL32UTF8 字符集 (可能的字符集转换)即将导出指定的用户...……导出成功终止, 但出现警告。
oracle的导出命令
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 11g数据导入到10g数据库
在10g服务器的D盘创建文件夹'datadump'。
将从11g服务器导出的数据库文件orcl_1(his_dp).dmp放到该目录下。
①进入到命令提示符号开始”——“运行”——输入“CMD”回车②输入“sqlplus”回车③输入“system”回车④输入密码(密码输入时是不可见的,此密码是在安装oracle10G时设置的)"orcl"⑤现在已经登陆了oracle,输入“drop user @数据库方案名 cascade;”回车⑥输入“CREATE USER @数据库方案名 identified by @数据库方案密码;”回车⑦输入“Grant dba to @数据库方案名;”回车⑧输入“Create tablespace dzh_datadatafile 'D:\oracle\dzh_data01.dbf'size 3M reuse autoextend on next 5M maxsize 4096M;”回车创建表空间⑨输入“CREATE TEMPORARY TABLESPACE dzh_temptempfile 'D:\oracle\dzh_temp.dbf'size 2M reuse autoextend on next 5M maxsize 4096M;”回车创建临时表空间⑩输入“Alter user @数据库方案名 temporary tablespace dzh_temp;”回车指定数据库方案存放表空间输入“Alter user @数据库方案名 default tablespace dzh_data;”回车指定数据库方案临时表空间11 输入“create directory dumpdir as 'D:\datadump';”回车如果要删除 drop directory dumpdir;输入“grant read,write on directory dumpdir to @数据库方案名;”回车12 输入“exit”回车,退出sqlplus命令行。
oracle 11G 导出完整表结构配置
oracle 11G 导出完整表结构配置1.一定要在导入数据之前,在初始化参数里修改配置如图:改成FALESdeferred_segment_creation关闭数据库重新登录启动数据库输入。
在Oracle 11g里,默认空表不占空间,exp无法导出,因为11g里新加个参数deferred_segment_creation,默认为true,也就是延迟创建段空间。
在sys用户下,可以通过命令:alter system set deferred_segment_creation=false;调整这个参数的值,之后,创建的空表会立即分配空间,再通过exp就可以导出空表了。
但是之前的表仍然不占空间,可以通过sql生成批量命令:select 'alter table ' || table_name || ' allocate extent(size 64k);' sql_text,table_name,tablespace_namefrom user_tableswhere table_name not in(select segment_name from user_segments where segment_type = 'TABLE');把生成的命令执行一下,就可以通过exp导出了进入sqlplus 状态C:\Documents and Settings\Administrator>sqlplus "/as sysdba"关闭数据库SQL>shutdown immediate;启动数据库SQL>startup mount;开启数据库SQL> alter database open;。
Oracle11g常用基本操作命令
Oracle11g常⽤基本操作命令 这⾥是单实例数据库情况下:1、启动监听 启动监听,即启动1521监听端⼝号:lsnrctl start #启动监听lsnrctl stop #停⽌监听lsnrctl status #查看监听状态 监听端⼝1521修改:# su - oracle$ lsnrctl stop$ echo $ORACLE_HOME$ cd $ORACLE_HOME/network/admin$ vim listener.ora# listener.ora Network Configuration File: /home/data/oracle/product/11.2.0/db_1/network/admin/listener.ora# Generated by Oracle configuration tools.LISTENER =(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC6666))(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 6666))))ADR_BASE_LISTENER = /home/data/oracle直接在此处修改是不⽣效的,我们还需要修改local_listener参数$ sqlplus / as sysdbaSQL> show parameter local_listener #登录并查看local_listener参数//由于开始的时候使⽤的是默认值,这个时候VALUE这个值应该是空的,这⾥修改local_listener参数SQL> alter system set local_listener="(address = (protocol = tcp)(host = 10.10.16.245)(port = 6666))";SQL> show parameter local_listener #查看local_listener参数$ lsnrctl start #重新启动监听$ netstat -an|grep 6666 #查看状态$ lsnrctl status$ su - root #防⽕墙端⼝开放# /sbin/iptables -I INPUT -p tcp --dport 6666 -j ACCEPT# /etc/rc.d/init.d/iptables save#到此oracle的监听端⼝号就已经由原来的1521变成6666View Code2、启动数据库 启动数据库有两种⽅式,⼀种是登录sqlplus执⾏startup;另⼀种是使⽤dbstart //启动数据库脚本⽤oracle⽤户进⼊# su - oracle$ sqlplus /nolog #运⾏sqlplus命令,进⼊sqlplus环境,nolog参数表⽰不登录;SQL> conn /as sysdba #以管理员模式进⼊SQL > startup; #启动数据库SQL > SHUTDOWN IMMEDIATE #停⽌数据库远程连接数据库sqlplus /nologconn sys/sys@IP:1521/orainstance as sysdba也可以直接运⾏:dbstart //启动数据库脚本dbshut //停⽌数据库脚本3、⽤户管理 创建普通⽤户,权限相关:创建⽤户:SQL> create user "username" identified by "userpasswd" ; #注:后⾯可带表空间删除⽤户:SQL> drop user “username” cascade; #注:cascade 参数是级联删除该⽤户所有对象,经常遇到如⽤户有对象⽽未加此参数则⽤户删不了的问题,所以习惯性的加此参数授权⽤户:SQL> grant connect,resource,dba to "username" ;查看当前⽤户的⾓⾊SQL> select * from user_role_privs;SQL> select * from session_privs;查看当前⽤户的系统权限和表级权限SQL> select * from user_sys_privs;SQL> select * from user_tab_privs;查询⽤户表SQL> select username from dba_users;修改⽤户⼝令SQL> alter user "username" identified by "password";显⽰当前⽤户SQL> show user;4、表和表空间创建表空间SQL> CREATE TABLESPACE data01 DATAFILE '/oracle/oradata/db/DATA01.dbf' SIZE 500M;删除表空间SQL> DROP TABLESPACE data01 INCLUDING CONTENTS AND DATAFILES;修改表空间⼤⼩SQL> alter database datafile '/path/NADDate05.dbf' resize 100M;增加表空间SQL> ALTER TABLESPACE NEWCCS ADD DATAFILE '/u03/oradata/newccs/newccs04.dbf' SIZE 4896M;查询数据库⽂件SQL> select * from dba_data_files;查询当前存在的表空间SQL> select * from v$tablespace;表空间情况SQL> select tablespace_name,sum(bytes)/1024/1024 from dba_data_files group by tablespace_name;查询表空间剩余空间SQL> select tablespace_name,sum(bytes)/1024/1024 from dba_free_space group by tablespace_name;查看表结构SQL> desc table;修改连接数:要重启数据库SQL> alter system set processes=1000 scope=spfile;SQL> shutdown immediate;SQL> startup;查看⽤户当前连接数SQL> select count(*) from sys.v_$session;5、修改字符集相关 将数据库启动到RESTRICTED模式下做字符集更改:$ sqlplus / as sysdbaSQL> select * from v$nls_parameters; #查看当前系统使⽤的各种字符集SQL> select * from nls_database_parameters where parameter ='NLS_CHARACTERSET'; #精确查询NLS_CHARACTERSET值SQL> shutdown immediate; #关闭数据库SQL> startup mount #启动实例,可以加载数据库,不运⾏数据库DBA在做⼀些操作的时候不希望有⼈登⼊数据库可以使⽤restrict模式:SQL> ALTER SYSTEM ENABLE RESTRICTED SESSION; #开启限制会话模式Oracle job进程,包含协调进程(主进程)以及奴⾪进程(⼦进程),job_queue_processes取值范围为0到1000,总共可创建多少个job进程由job_queue_processes参数来决定。
oracle 11g 数据泵导入导出方法
oracle 11g 数据泵导入导出方法
工具/原料电脑
安装好的oracle 11g 软件
方法/步骤1:
打开开始菜单中的运行
方法/步骤2:
打开以后,在运行框中输入CMD,点击确定
方法/步骤3:
运行以下命令:
sqlplus system/密码
方法/步骤4:
2 创建数据导出目录expnc_dir为目录名,'E:\ncdatabak'为数据库实际目录,命令如下:
create directory expnc_dir as 'E:\ncdatabak';
方法/步骤5:
为oracle用户授予访问数据目录的权限,命令如下:Grant read,write on directory expnc_dir to dxzyjt;
方法/步骤6:
执行数据泵出命令,注意一定要在Cmd下执行,不能登录sqlplus后执行。
expdp dxzyjt/dxzyjt@ncdata_192.168.1.224 directory=expnc_dir dumpfile=ncdatabak.dmp schemas=dxzyjt logfile=ncdatabak.log; 备份界面如下:
方法/步骤7:
以上是导出的步骤,导入与导出的步骤基本一样,有不清楚的可以联系我。
oracle数据库导入导出方法
oracle数据库导⼊导出⽅法Oracle Database 10g以后引⼊了最新的数据泵(Data Dump)技术,使DBA或开发⼈员可以将数据库元数据(对象定义)和数据快速移动到另⼀个oracle数据库中。
数据泵导出导⼊(EXPDP和IMPDP)的作⽤ 1、实现逻辑备份和逻辑恢复。
2、在数据库⽤户之间移动对象。
3、在数据库之间移动对象 4、实现表空间搬移。
数据泵导出导⼊与传统导出导⼊的区别:在10g之前,传统的导出和导⼊分别使⽤EXP⼯具和IMP⼯具,从10g开始,不仅保留了原有的EXP和IMP⼯具,还提供了数据泵导出导⼊⼯具EXPDP和IMPDP.使⽤EXPDP和IMPDP时应该注意的事项;EXP和IMP是客户段⼯具程序,它们既可以在客户端使⽤,也可以在服务器段使⽤。
EXPDP和IMPDP是服务端的⼯具程序,他们只能在ORACLE服务端使⽤,不能在客户端使⽤IMP只适⽤于EXP导出⽂件,不适⽤于EXPDP导出⽂件;IMPDP只适⽤于EXPDP导出⽂件,⽽不适⽤于EXP导出⽂件。
今天我在导⼊同事给我的数据⽂件时,总是报IMP-00038错误,提⽰,⽆法转换为环境字符集句柄,造成这种错误的原因⼀般是数据库版本不匹配,但是我们使⽤的都是oracle11g,就排除了这种可能。
最后发现原因是他是使⽤数据泵导出的数据⽂件,⽽我使⽤传统imp命令导⼊是不可以的,后续改为使⽤impdp数据泵导⼊成功。
下⾯是我使⽤数据泵导⼊数据⽂件的完整过程:1、使⽤system⽤户登录数据库,创建新⽤户usertest(新建⽤户时⽤户名最好和数据⽂件导出时的⽤户名相同),表空间可以使⽤系统默认的也可以⾃⼰新建⼀个表空间。
sql代码如下:新建⽤户使⽤oracle默认表空间:create user usertest identified by usertest;新建表空间:create tablespace user_alldatafile 'D:/dev/oracle/tablespace/user_all.dbf'size 300Mautoextend onnext 50Mmaxsize unlimited新建⽤户(设置默认表空间):create user usertest identified by usertest default tablespace user_all;2、对新建的⽤户赋权限,dba、connect、resource。
Oracle 11g的数据库导入导出
oracle 11g 数据库导入导出一、导入数据库1、新建一个表空间,表空间的名字、大小请根据具体项目进行调整。
--建立表空间sql语句create tablespace raxmdatafile 'E:\11g\oradata\orcl\raxm.dbf'size 2048mautoextend on next 32m maxsize 4096m2、新建一个用户,要注意选择默认的表空间、对角色权限、系统权限进行授权,如下图所示:3、将要导入的数据库文件拷到oracle 11 g安装目录下,我oracle 11g 的安装目录是:E:oracle11g\admin\orcl\dpdmp,我就将数据库文件拷到该目录下,并将要导入的数据库文件重命名为:expdat.dmp,这里一定要重命名为这个名字,因为第4步的导入数据库默认的路径就是E:oracle11g\admin\orcl\dpdmp,导入的数据库文件为expdat.dmp,操作如下图所示:4、打开控制台,输入impdp rays/1,这里的rays指的是你刚才建立的用户,1指的是该用户的密码。
5、为了安全起见,导入完成之后,去数据库验证下导入的数据库是否正确。
6、如果在导入数据库的过程中有出现问题,可以参考附录中的百度版oracle 11g 导入导出。
二、导出数据库导出数据库是导入数据库的逆过程,具体步骤如下:1、打开控制台,输入expdp raxm/1,其中expdp表示导出数据库,raxm 表示用户,1表示密码,如下图所示:2、控制台显示成功导出之后,可以在oracle 11 g安装目录下,我oracle 11g的安装目录是:E:oracle11g\admin\orcl\dpdmp,找到导出的数据库文件,如下图所示:3、接着你就可以根据项目的需要对导出来的数据库进行重命名。
4、如果在导出数据库的过程中有出现问题,可以参考附录中的百度版oracle 11g 导入导出。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
导入时选 择合理的 parallel, 是可以降 低导入数 据时的时 间的,导 入数据时 指定 parallel 值,实际 是用在了 创建索引 的并行度 上 所以在导 入操作时 选择较大 的并行 度,是可 以大幅度 降低提高 创建索引 的速度, 从而加快 导入时的 速度。当 然度如增果 加并 到 太大的 值,会产 生I/O和 锁之类的 竞争,导 致导入速 度降低。
2)改变表 的owner impdp system/D igicom201 4 DIRECTO RY=exp_d ir2 DUMPFIL E=exp_sc ott.dmp TABLES= scott.dep t REMAP_S CHEMA= scott:syst 先导出 scott用户 中的数 据,然后 将此用户 下的表 dept的归 属权转移 给system 用户
导出完 成:
导出的文 件:
6)带出整 个数据库 在DOS环 境下输入 expdp system/D igicom201 4 directory =exp_dir2 dumpfile = full_demo. dmp logfile = full_demo.
导出成 功:
查看导出 文件:
数据导入:
导出成功 。
导出的文 件:
3)按表名 导出 在DOS中 输入: expdp system/D igicom201 4@myorcl tables=st udent dumpfile= table_dem o.dmp directory =exp_dir2 logfile=ta ble_demo.l og
执行结束
查看dept 表的 owner
3)导入表 空间 impdp system/D igicom201 4 DIRECTO RY=exp_d ir2 DUMPFIL E=tablesp ace_demo .dmp TABLES PACES=s ystem;
先导出 system表 空间
导出成功
开始导入
导出完 成:
导出文 件:
5)按表空 间首导先出 可以 先看一 下,你所 要导出的 表的表空 间,可以 通ele过ct
Table_Na me, Tablespac e_Name
From Dba_Tabl es
Where Table_Na me = '表 名'; //此处的表 名一定是 要大写 的,小写
1)导入到
指定用户
下这里我需
要将上面
按表名导
出的文件
导入到 system用
户下 在DOS环
境下,输
入以下内
容; impdp system/D igicom201 4 directory = exp_dir2 dumpfile = table_dem o.dmp schemas
开始导 入:
导入结 束:
五、还原 数据
1)导到指 定用户下 impdp scott/tige r DIRECTO RY=dpdat a1 DUMPFIL E=expdp. dmp SCHEMA S=scott; 2)改变表 的owner impdp system/ manager DIRECTO RY=dpdat a1 DUMPFIL E=expdp. dmp TABLES= scott.dep t REMAP_S CHEMA= scott:syst 3)导入表 空间 impdp system/ manager DIRECTO RY=dpdat a1 DUMPFIL E=tablesp ace.dmp TABLES PACES=e xample; 4)导入数 据库 impdb system/ manager DIRECTO RY=dump _dir DUMPFIL E=full.dm p
impdb system/ manager DIRECTO RY=dump _dir DUMPFIL E=full.dm p 5)追加数 据 impdp system/ manager DIRECTO RY=dpdat a1 DUMPFIL E=expdp. dmp SCHEMA S=system TABLE_E XISTS_A CTION=a ppend;
ORACLE数据库的导出操作
第1歩:
在数据库
输入
回车
第二歩:
可在 oracle中
创建目
录: CREATE DIRECTO RY test_dir AS 'e:\test_di r';
执行成功
第三步:
授予某用 户对此目 录的读写 权限
GRANT
READ,
WRITE
ON
DIRECTO
RY
exp_dir(di rectory别 名) TO system(指 定用户
可以看 到,表 "STUDE NT"所属 的表空间 是 SYSTEM, 每个 ORACLE 数据库均 有 SYSTEM 表空间, 这是数据 库创建时 自SY动ST创EM建 表空间必 须总要保 持联机, 因为其包 含着数据 库运行所 要求的基 本信息 (关于整 个数据库 的数据字 典、联机 求助机制
有回退段 、临时段 和自举段 、所有的 用户数据 库实体、 其它 ORACLE 软件产品 要求的 表)。 在DOS环 境下输 入:
此处的是客户端配置 的服务名要和下图中
不同的导出操作:
5)追加数 据 impdp system/ manager DIRECTO RY=dpdat a1 DUMPFIL E=expdp. dmp SCHEMA S=system TABLE_E XISTS_A CTION=a ppend;
2)并行进 程parallel parallel: 并行进程 数。不是 什么数量 的并行值 都能快速 的导出, 要想导出 数据速度 快,一定 要压榨 I/O的能 力,一般 parallel=3 ,就能达 到比较快 的导出速 度, parallel太 大反倒会 降低I/O 的能力。
1)导到指 定用户下 impdp scott/tige r DIRECTO RY=dpdat a1 DUMPFIL E=expdp. dmp SCHEMA S=scott; 2)改变表 的owner impdp system/ manager DIRECTO RY=dpdat a1 DUMPFIL E=expdp. dmp TABLES= scott.dep t REMAP_S CHEMA= scott:syst 3)导入表 空间 impdp system/ manager DIRECTO RY=dpdat a1 DUMPFIL E=tablesp ace.dmp TABLES PACES=e xample; 4)导入数 据库
导出完成
导出后的 文件: 4)按查询 条件导
在DOS环 境下输 入: expdp system/D igicoom20 14@myor cl directory =exp_dir2 dumpfile= query_de mo.dmp logfile=qu ery_demo. dmp tables = student query ='where
执行成功
导出后的 文件
Байду номын сангаас
数据还原 第一步:
将备份好 的数据还 原到数据 库中 在运行 cmd后, 在DOS中 输入以下 命令
impdp system/D igicom201 4 DIRECTO RY=exp_d ir DUMPFIL E=DEMO. dmp FULL=y I1G)NORE= IGNORE = y :可以 确保在导 入时,表 已经存在 时,忽略 错误,继 续执行。
在DOS界 面中输入
expdp system/D igicom201 4@myorcl directory =exp_dir2 dumpfile= parallel_d emo.dmp logfile=pa rallel_dem o.log parallel = 3 job_name = parallel_d
回车后开 始导入
导入成功
四、导出 数据 1)按用户 导 expdp scott/tige r@orcl schemas= scott dumpfile= expdp.dm p DIRECTO RY=dpdat 2)并行进 程parallel
expdp scott/tige r@orcl directory =dpdata1 dumpfile= scott3.dm p parallel=4 0 3)按表名 导 expdp scott/tige r@orcl TABLES= emp,dept dumpfile= expdp.dm p DIRECTO RY=dpdat 4)按查询 条件导 expdp scott/tige r@orcl directory =dpdata1 dumpfile= expdp.dm p Tables=e mp query='W HERE deptno=2 5)按表空 间导 expdp system/ manager DIRECTO RY=dpdat a1 DUMPFIL E=tablesp ace.dmp TABLES PACES=t emp,exam ple;
授权成功
第四步:
关闭此 sqlplus ,在dos 环境下, 执行到处 操作
expdp system/pa ssword@ orcl directory= exp_dir DUMPFIL E=Demo. dmp schemas= system(用 户名) logfile=ex pdpSyste m.log version=1 0.2.0.1.0( 导入数据 版本号,同
导入结束
4)导入数 据库 impdp system/D igicom201 4 directory =exp_dir2 dumfile=f ull_demo.d mp full=y parallel=8;