EXP、IMP 命令详解
- 格式:doc
- 大小:37.00 KB
- 文档页数:3
/lschou520/archive/2008/08/31/2854244.aspxOracle 数据库备份与恢复总结-exp/imp (导出与导入装库与卸库) 收藏1.1 基本命令1. 获取帮助$ exp help=y$ imp help=y2. 三种工作方式(1)交互式方式$ exp // 然后按提示输入所需要的参数(2)命令行方式$ exp user/pwd@dbname file=/oracle/test.dmp full=y // 命令行中输入所需的参数(3)参数文件方式$ exp parfile=username.par // 在参数文件中输入所需的参数参数文件username.par 内容userid=username/userpassword buffer=8192000compress=n grants=yfile=/oracle/test.dmp full=y3. 三种模式(1)表方式,将指定表的数据导出/导入。
导出:导出一张或几张表:$ exp user/pwd file=/dir/xxx.dmp log=xxx.log tables=table1,table2导出某张表的部分数据$ exp user/pwd file=/dir/xxx.dmp log=xxx.log tables=table1 query=\”where col1=\’…\’and col2 \<…\”导入:导入一张或几张表$ imp user/pwd file=/dir/xxx.dmp log=xxx.log tables=table1,table2 fromuser=dbuser touser=dbuser2 commit=y ignore=y(2)用户方式,将指定用户的所有对象及数据导出/导入。
导出:$ exp user/pwd file=/dir/xxx.dmp log=xxx.log owner=(xx, yy)只导出数据对象,不导出数据(rows=n )$ exp user/pwd file=/dir/xxx.dmp log=xxx.log owner=user rows=n导入:$ imp user/pwd file=/dir/xxx.dmp log=xxx.log fromuser=dbuser touser=dbuser2commit=y ignore=y(3)全库方式,将数据库中的所有对象导出/导入导出:$ exp user/pwd file=/dir/xxx.dmp log=xxx.log full=ycommit=y ignore=y导入:$ imp user/pwd file=/dir/xxx.dmp log=xxx.log fromuser=dbuser touser=dbuser21.2 高级选项1. 分割成多个文件以多个固定大小文件方式导出:这种做法通常用在表数据量较大,单个dump文件可能会超出文件系统的限制的情况$ exp user/pwd file=1.dmp,2.dmp,3.dmp,…filesize=1000m log=xxx.log full=y以多个固定大小文件方式导入$ imp user/pwd file=1.dmp,2.dmp,3.dmp,… filesize=1000m tables=xxx fromuser=dbuser touser=dbuser2 commit=y ignore=y2. 增量导出/导入// oracle 9i 以后exp 不再支持inctype必须为SYS 或SYSTEM 才可执行增量导出导入增量导出: 包括三个类型:(1)“完全”增量导出(Complete)// 备份整个数据库$ exp user/pwd file=/dir/xxx.dmp log=xxx.log inctype=complete(2)“增量型”增量导出导出上一次备份后改变的数据。
exp及imp的使用方法EXP和IMP是英语中常用的缩写,分别表示“经验”(Experience)和“重要”(Important)。
这两个词在日常生活和商务环境中经常被使用,因此了解如何正确地运用它们是非常必要的。
首先,我们来讨论一下EXP(经验)的使用方法。
经验是人们通过实际经历所获得的知识和技能,是在实践中不断积累的。
在简历、面试和职业发展中,经验通常是雇主或招聘人员最关注的因素之一在简历中,写作经验部分时,应该注重强调与目标职位相关的经验。
列出相关的工作经历、实习经验以及参与的项目,尽量用数值和例子来具体说明自己在这些经验中所取得的成绩和贡献。
另外,在撰写工作经验时,可以使用动词来强调自己的才能和责任,如“管理”、“领导”、“协调”等。
在面试中,经验是展示自己适合目标职位的重要方式。
回答问题时,可以根据经验来支撑自己的回答,例如,提供过去在类似情况下的成功经验,并强调自己学到了什么以及如何将这些经验应用到目前的情况中。
在职业发展中,经验可以帮助人们获得更高的职位和更大的责任。
人们可以通过参加培训、进修课程和参与项目或委员会来积累经验。
此外,与其他行业专业人士互动和交流经验,也是拓宽自己视野、增加知识和技能的有效方法。
接下来,我们来谈谈IMP(重要)的使用方法。
重要性通常指事物的价值和影响力。
在个人生活和工作中,了解什么是重要的,以及如何正确地处理和管理重要事务,是成功的关键。
在个人生活中,我们可以使用IMP来优化时间管理。
我们可以确定哪些任务对实现我们的目标和价值观至关重要,并将重要的任务优先考虑。
此外,了解并正确处理家庭、健康和个人关系等方面的重要事务,有助于获得更好的生活质量。
在工作环境中,正确处理重要事务是保持高效和成功的关键。
了解工作的优先级和截止日期,以及与团队成员和上级的沟通,有助于确保重要任务的及时完成。
此外,根据公司的目标和战略,将重要的项目和任务与整体工作计划对齐,有助于确保工作的整体有效性。
一、导出(exp)和导入(imp)实用程序---------------------------------------------------------------------------- 1二、导出模式 ----------------------------------------------------------------------------------------------------------- 22.1表模式--------------------------------------------------------------------------------------------------------- 22.2用户模式------------------------------------------------------------------------------------------------------ 22.3表空间模式 -------------------------------------------------------------------------------------------------- 22.4完全数据库模式 -------------------------------------------------------------------------------------------- 22.5 导出导入参数 ---------------------------------------------------------------------------------------------- 3三、exp的用法:------------------------------------------------------------------------------------------------------ 33.1导出工具exp交互式命令方式 ------------------------------------------------------------------------- 43.2导出工具exp非交互式命令行方式 ------------------------------------------------------------------- 63.2.1 FULL ------------------------------------------------------------------------------------------------ 63.2.2 OWNER和TABLE ---------------------------------------------------------------------------------- 73.2.3BUFFER和FEEDBACK ----------------------------------------------------------------------------- 83.2.4 FILE和LOG参数-------------------------------------------------------------------------------- 93.2.5 QUERY参数 -------------------------------------------------------------------------------------- 103.2.6 FILESIZE设置导出的数据文件的大小 -------------------------------------------------- 11四、imp用法----------------------------------------------------------------------------------------------------------- 114.1 FROMUSER和TOUSER-------------------------------------------------------------------------------------- 114.2 导入一个完整数据库 ------------------------------------------------------------------------------------ 124.3导入一个或一组指定用户所属的对象 --------------------------------------------------------------- 124.4 导入一个表------------------------------------------------------------------------------------------------- 12一、导出(exp)和导入(imp)实用程序导出实用程序提供了一种简单方法,在Oracle 数据库之间传送数据对象,即使这些数据库位于具有不同硬件和软件配置的平台上。
oracle中exp,imp的使用详解基本语法和实例: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就被导出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的所有对象被导入到文件中。
必须指定FROMUSER、TOUSER 参数,这样才能导入数据。
3、表模式:EXP SONIC/SONIC BUFFER=64000 FILE=C:\SONIC.DMP OWNER=SONIC TABLES=(SONIC)这样用户SONIC的表SONIC就被导入。
ORACLE数据库有两类备份方法。
第一类为物理备份,该方法实现数据库的完整恢复,但数据库必须运行在归挡模式下(业务数据库在非归挡模式下运行),且需要极大的外部存储设备,例如磁带库;第二类备份方式为逻辑备份,业务数据库采用此种方式,此方法不需要数据库运行在归挡模式下,不但备份简单,而且可以不需要外部存储设备。
数据库逻辑备份方法ORACLE数据库的逻辑备份分为三种模式:表备份、用户备份和完全备份。
oracle中expimp备份还原工具的使用详解Oracle数据库的exp和imp命令是数据库备份和恢复的常用工具。
本文将详细介绍exp和imp命令的用法和具体步骤。
一、exp命令exp命令用于将Oracle数据库中的数据和对象导出到一个二进制文件中,以进行备份或迁移。
以下是exp命令的详细步骤:1. 登录到Oracle数据库的命令行界面。
2. 输入以下命令启动exp工具:其中,username是要导出数据的用户名,password是对应的密码,connection_string是连接数据库的字符串,包括主机名、端口号和服务名等信息。
3. exp工具启动后,会提示输入导出内容的方式。
可以选择导出全库、特定表或特定用户的数据。
输入相应的选项并按Enter键确定。
4. 接下来,exp工具会要求输入导出的目标文件名。
输入文件名并按Enter键确定。
5. 导出过程将开始执行。
exp工具会逐一导出数据库的数据和对象,并将其存储在目标文件中。
此过程可能需要一些时间,取决于数据库的大小和复杂性。
6. 导出完成后,在命令行中会显示相应的导出信息。
可以根据需要选择是否结束exp工具。
二、imp命令imp命令用于将exp命令导出的二进制文件恢复到Oracle数据库中。
以下是imp命令的详细步骤:1. 登录到Oracle数据库的命令行界面。
2. 输入以下命令启动imp工具:其中,username是要导入数据的用户名,password是对应的密码,connection_string是连接数据库的字符串,包括主机名、端口号和服务名等信息。
3. imp工具启动后,会提示输入导入内容的方式。
可以选择导入全库、特定表或特定用户的数据。
输入相应的选项并按Enter键确定。
4. 接下来,imp工具会要求输入导入的源文件名。
输入文件名并按Enter键确定。
5. 导入过程将开始执行。
imp工具会读取源文件中的数据和对象,并将其恢复到目标数据库中。
使⽤exp和imp导⼊导出指定表从源数据库导出:这种⽅式,包含创建表,插⼊数据,所以,⽬标应没有这个表exp user1/pwd@server1 file=c:\temp\exp.dmp tables=(table1, table2)例如:exp platadmin/plat_8admin@hkserver32 file=d:\hkdata.dmp tables=(REPORT_DRIVERATTENDANCE_day,REPORT_DRIVERATTENDANCE_MONTH)我试了⼀下,在本地不能导出,还是得在服务器上导,在服务器上导很快,⼏⼗万条数据的表,⼀两秒钟就导出完了导⼊到⽬标数据库:imp user2/pwd@server2 file=c:\temp\exp.dmp tables=(table1, table2)例如:导⼊也很快,⼀两秒钟imp platadmin/plat_8admin@orclgis file=d:\hkdata.dmp tables=(REPORT_DRIVERATTENDANCE_day,REPORT_DRIVERATTENDANCE_MONTH)1Oracle就是有这个好处,可以直接将远程的数据导出到本地;或者将本地的数据⽂件导⼊到远程数据库。
⽽SQL SERVER的备份、还原⽂件,⼀定是放在远程服务器本机的。
补充⼀下,如果有许多表,那么以上语句可能会换⾏。
但以上命令是在DOS命令窗⼝执⾏的,命令⾏⽅式,容不得换⾏。
那咋办呢?我的笨办法是将语句拷贝到WORD⽂档,然后将回车换⾏符替换掉。
替换的⽅法:在替换窗⼝,查找内容输⼊ ^p(注意是⼩写),替换内容为空,然后替换即可。
=====================================以 sysdba ⾝份运⾏,导出导⼊指定⽤户所属表:exp ‘sys/123456@Service1 as sysdba’ file=c:\temp\exp.dmp tables=(sde.ISLAND)imp ‘sys/888888@Service2 ’ file=c:\temp\exp.dmp fromuser=sde tables=(ISLAND)=================================================如果表空间的名字不⼀样,会报 ORA-00959 错误,咋办?1、先从源数据库,导出建表脚本(DDL)2、在新库新表空间⾥运⾏这些DDL3、imp,加上fromuser,touser,ignore=Y选项imp 'sys/lt@HPM as sysdba' file=c:\temp\base.dmp fromuser=hydg touser=hpm tables=(org_user,SYS_ONLINE,sys_userRoles,Org_Role,Org_Group,sys_Event) ignore=Y1有关ORA-00959 错误的应对之道,参考⽂章:。
oracle使⽤expdp、impdp和exp、imp导⼊导出表及表结构使⽤expdp、impdp和exp、imp时应该注重的事项:1、exp和imp是客户端⼯具程序,它们既可以在客户端使⽤,也可以在服务端使⽤。
2、expdp和impdp是服务端的⼯具程序,他们只能在oracle服务端使⽤,不能在客户端使⽤。
3、imp只适⽤于exp导出的⽂件,不适⽤于expdp导出⽂件;impdp只适⽤于expdp导出的⽂件,⽽不适⽤于exp导出⽂件。
4、对于10g以上的服务器,使⽤exp通常不能导出0⾏数据的空表,⽽此时必须使⽤expdp导出。
exp、imp导⼊导出sqlplus 进⼊数据库中导出直接在命令⾏下写命令1.导出⾃⼰的表exp userid=scott/tiger@myoral tables=(emp,dept) file=/opt/e1.dmp2.导出其它⽅案的表如果⽤户要导出其它⽅案的表,则需要dba的权限或是exp_full_database的权限,⽐如system就可以导出scott的表exp userid=system/manager@myoral tables=(scott.emp) file=d:\e2.emp3. 导出表的结构exp userid=scott/tiger@accp tables=(emp) file=/opt/e3.dmp rows=n4. 使⽤直接导出⽅式exp userid=scott/tiger@accp tables=(emp) file=/opt/e4.dmp direct=y这种⽅式⽐默认的常规⽅式速度要快,当数据量⼤时,可以考虑使⽤这样的⽅法。
这时需要数据库的字符集要与客户端字符集完全⼀致,否则会报错导出⽅案导出⽅案是指使⽤export⼯具导出⼀个⽅案或是多个⽅案中的所有对象(表,索引,约束...)和数据。
并存放到⽂件中1. 导出⾃⼰的⽅案exp userid=scott/tiger@myorcl owner=scott file=/opt/scott.dmp2. 导出其它⽅案如果⽤户要导出其它⽅案,则需要dba的权限或是exp_full_database的权限,⽐如system⽤户可以导出任何⽅案exp userid=system/manager@myorcl owner=(system,scott) file=/opt/system.dmp导出数据库导出数据库是指利⽤export导出所有数据库中的对象及数据,要求该⽤户具有dba的权限或者是exp_full_database权限增量备份(好处是第⼀次备份后,第⼆次备份就快很多了)exp userid=system/manager@myorcl full=y inctype=complete file=/opt/all.dmp导⼊1. 导⼊⾃⼰的表imp userid=scott/tiger@myorcl tables=(emp) file=/opt/xx.dmp2. 导⼊表到其它⽤户要求该⽤户具有dba的权限imp_full_database imp userid=system/tiger@myorcl tables=(emp) file=/opt/xx.dmp touser=scott3. 导⼊表的结构,只导⼊表的结构⽽不导⼊数据imp userid=scott/tiger@myorcl tables=(emp) file=/opt/xx.dmp rows=n4. 导⼊数据如果对象(如⽐表)已经存在可以只导⼊表的数据imp userid=scott/tiger@myorcl tables=(emp) file=/opt/xx.dmp ignore=y导⼊⽅案导⼊⽅案是指使⽤import⼯具将⽂件中的对象和数据导⼊到⼀个或是多个⽅案中。
Utilities--exp/imp1.exp/imp简介exp/imp是oracle提供的一个对数据库进行逻辑备份的客户端工具。
利用这个工具可以将数据库按表空间、用户或某些表保存到操作系统下的一个二进制格式的文件里。
这个二进制文件是平台无关的,也就是说可以将windows下的exp文件imp到linux/unix系统中,利用这个特性可以完成某些数据迁移工作。
Exp/imp在操作上可以看成是一个select--create--insert的过程。
exp时select出要导出的数据和保存相关的ddl,imp时执行这个“脚本”(strings dmp文件可以看出其内部包含的就是一些ddl和insert语句)。
要使用Exp/Imp必须运行一次$oracle_home/rdbms/admin 下的catexp.sql 或 catalog.sql script脚本。
在oracle 10g中新提供了一种更加强大的替代工具data pump,但是在实际使用中oracle 9i及以前版本的数据库还是随处可见,所以掌握其用法还是很有必要的。
2.exp/imp导入导出模式exp/imp一共有四种模式:Full、User、Tables、Tablespaces¾Full要执行Full模式的导出,必须具有EXP_FULL_DATABASE的权限。
在Full模式下将导出数据库中所有用户的对象,但是有几个用户是受oracle保护的不能被exp导出(ORDSYS 、____________________________________________________________________________________________________________2008-11-15 唐名杰(beybey911) tangmingjie85@MDSYS 、CTXSYS 、ORDPLUGINS 、LBACSYS)sys用户的对象也不会导出,因此在full 模式导出时属于sys用户的一些触发器之类的对象将会丢失,在导入后应该手工创建。
1、export/import的用处oracle export/import工具用于在数据库之间传递数据。
export从数据库中导出数据到dump文件中import从dump文件中到入数据导数据库中下面是一般使用他们的情况(1)两个数据库之间传送数据同一个版本的oracle server之间不同版本的oracle server之间同种os之间不同种os之间(2)用于数据库的备份和恢复(3)从一个schema传送到另一个schema(4)从一个tablespace传送到另一个tablespace2、dump文件export到出的是二进制格式的文件,不可以手工编辑,否则会损坏数据。
该文件在oracle支持的任何平台上都是一样的格式,可以在各平台上通用。
dump文件在import时采用向上兼容方式,就是说oralce7的dump文件可以导入到oracle8中,但是版本相差很大的版本之间可能有问题。
3、export/import过程export导出的dump文件包含两种基本类型的数据- ddl (data dictionary language)- datadump文件包含所有重新创建data dictionary的ddl语句,基本上是可以读的格式。
但是应该注意的是,千万不要用文本编辑器编辑之,oracle说不支持这样做的。
下面列出的是dump文件中包括的oracle对象,分为table/user/full方式,有些对象只是在full方式下才有(比如public synonyms, users, roles, rollback segments等)table mode user mode full database mode---------------------- ---------------------- -------------------------table definitions table definitions table definitionstable data table data table dataowner's table grants owner's grants grantsowner's table indexes owner's indexes indexestable constraints table constraints table constraintstable triggers table triggers all triggersclusters clustersdatabase links database linksjob queues job queuesrefresh groups refresh groupssequences sequencessnapshots snapshotssnapshot logs snapshot logsstored procedures stored proceduresprivate synonyms all synonymsviews viewsprofilesreplication catalogresource costrolesrollback segmentssystem audit optionssystem privilegestablespace definitionstablespace quotasuser definitions4、import时的对象倒入顺序在倒入数据时,oracle有一个特定的顺序,可能随数据库版本不同而有所变化,但是现在是这样的。
oracle备份之expdpimpdp和expimp命令EXP/IMPexp/imp 介绍常⽤实例门诊统筹exp/impexp mztc/YinhaiTY2019 compress=n buffer=4096000 feedback=100000 owner=mztc file=mztc1.dmp log=mztc1.logimp mztc/YinhaiTY2019@ybpdb fromuser=mztc touser=mztc ignore=y buffer=4096000 feedback=100000 file=mztc.dmp log=mztc.loghis数据库impdp/expdpexpdp system/123456@ybzjk schemas=oracle directory=BAK_DIR dumpfile=yhhis-20211201.dmp.dmp logfile=yhhis-20211201.dmp.logimpdp system/123456@ybzjk schemas=oracle directory=BAK_DIR dumpfile=yhhis-20211201.dmp.dmp logfile=yhhis-20211201.dmp.logexpdp yhhis/xhlhis@111.111.111.153/pdbhisdb schemas=yhhis directory=dmp compression=ALL dumpfile=yhhis-20211201.dmp logfile=yhhis-20211201-expdp.dmp impdp yhhis/yhhis@ylpdb remap_schema=yhhis_a:yhhis directory=BAK_DIR dumpfile=yhhis-20211201.dmp logfile=yhhis-20211201-imp.log基本语法和实例:1、 EXP有三种主要的⽅式(完全、⽤户、表)1.1 完全EXP SYSTEM/PASSWORD BUFFER=1024000 FILE=C:\FULL.DMP FULL=Y如果要执⾏完全导出,必须具有特殊的权限1.2 ⽤户模式EXP SONIC/SONIC BUFFER=1024000 FILE=C:\SONIC.DMP OWNER=SONIC这样⽤户SONIC的所有对象被输出到⽂件中。
一、数据泵EXPDP命令参数中文说明#通过在命令行输入expdp help=y 获取imp的语法信息Export: Release 11.2.0.1.0 - Production on 星期五10月10 12:25:21 2019Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.数据泵导出实用程序提供了一种用于在Oracle 数据库之间传输数据对象的机制。
该实用程序可以使用以下命令进行调用:示例: expdp scott/tiger DIRECTORY=dmpdir DUMPFILE=scott.dmp您可以控制导出的运行方式。
具体方法是: 在'expdp' 命令后输入各种参数。
要指定各参数, 请使用关键字:格式: expdp KEYWORD=value 或KEYWORD=(value1,value2,...,valueN)示例: expdp scott/tiger DUMPFILE=scott.dmp DIRECTORY=dmpdir SCHEMAS=scott 或TABLES=(T1:P1,T1:P2), 如果T1 是分区表USERID 必须是命令行中的第一个参数。
------------------------------------------------------------------------------以下是可用关键字和它们的说明。
方括号中列出的是默认值。
ATTACH连接到现有作业。
例如, ATTACH=job_name。
COMPRESSION减少转储文件大小。
有效的关键字值为: ALL, DATA_ONLY, [METADATA_ONLY] 和NONE。
CONTENT指定要卸载的数据。
有效的关键字值为: [ALL], DATA_ONLY 和METADATA_ONLY。
Oracle 不同版本IMP/EXP 命令详解Imp常用用法Oracle的导入实用程序(Import utility)允许从数据库提取数据,并且将数据写入操作系统文件。
imp使用的基本格式:imp[username[/password[@service]]],以下例举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=seapark impsystem/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's Bible. fromuser=seapark touser=seapark_copy file=seapark log=seapark_import8. 增量导入imp system./manager inctype= RECTORE FULL=Y FILE=AOracle imp/expC:Documents and Settingsadministrator>exp help=yExport: Release 9.2.0.1.0 - Production on 星期三7月28 17:04:43 2004 Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.通过输入EXP 命令和用户名/口令,您可以后接用户名/口令的命令:例程: EXP SCOTT/TIGER或者,您也可以通过输入跟有各种参数的EXP 命令来控制“导出”按照不同参数。
Data dump包括导出表,导出方案,导出表空间,导出数据库4种方式使用EXPDP工具时,其转储文件只能被存放在DIRECTORY对象对应的OS目录中,而不能直接指定转储文件所在的OS目录.因此,使用EXPDP工具时,必须首先建立DIRECTORY对象.并且需要为数据库用户授予使用DIRECTORY对象权限.先在对应的位置创建物理文件夹,如mkdir /home/oracle/bak在sqlplus中建立目录并赋予权限:sqlplus / as sysdba>CREATE OR REPLACE DIRECTORY dump_dir AS '/home/oracle/bak';>GRANT READ, WRITE ON DIRECTORYdump_dir TOIPTV;查询创建了那些子目录:SELECT * FROM dba_directories;1.1EXPDP命令参数及说明(1)ATTACH该选项用于在客户会话与已存在导出作用之间建立关联.语法如下ATTACH=[schema_name.]job_nameSchema_name用于指定方案名,job_name用于指定导出作业名.注意,如果使用ATTACH选项,在命令行除了连接字符串和ATTACH选项外,不能指定任何其他选项,示例如下:Expdpscott/tiger ATTACH=scott.export_job(2)CONTENT该选项用于指定要导出的内容.默认值为ALLCONTENT={ALL | DATA_ONLY | METADATA_ONLY}当设置CONTENT为ALL时,将导出对象定义及其所有数据.为DATA_ONLY时,只导出对象数据,为METADATA_ONLY时,只导出对象定义。
Expdpscott/tiger DIRECTORY=dump DUMPFILE=a.dumpCONTENT=METADATA_ONLY(3)DIRECTORY指定转储文件和日志文件所在的目录,DIRECTORY=directory_objectDirectory_object用于指定目录对象名称.需要注意,目录对象是使用CREATE DIRECTORY语句建立的对象,而不是OS目录。
数据库迁移的几种方式:一、exp/imp:这也算是最常用最简单的方法了,一般是基于应用的owner级做导出导入。
操作方法为:在新库建立好owner和表空间,停老库的应用,在老库做exp user/pwd owner=XXX file=exp_xxx.dmp log=exp_xxx.log buffer=6000000,传dmp文件到新库,在新库做imp user/pwd fromuser=XXX touser=XXX file=exp_xxx.dmp log=imp_xxx.log ignore=y.优缺点:优点是可以跨平台使用;缺点是停机时间长,停机时间为从exp到网络传输到新库,再加上imp的时间。
二、存储迁移:这种情况下,数据文件、控制文件、日志文件、spfile都在存储上(一般情况下是裸设备),我们可以直接把存储挂到新机器上,然后在新机器上启动数据库。
操作方法:将老库的pfile(因为里面有指向裸设备的spfile链接),tnsnames.ora,listener.ora,密码文件传到新库的对应位置。
将存储切至新机,或者用文件拷贝或dd的方式复制数据文件,启动数据库。
优缺点:优点是该迁移方式非常简单,主要的工作是主机工程师的工作,dba只需配合即可,停机时间为当库、切存储、起库的时间。
缺点是要求新老库都是同一平台,是相同的数据库版本。
三、利用data guard迁移:用dg我们不仅可以用来做容灾,物理的dg我们还可以作为迁移的方式。
操作方法:略。
注意switch over之后,可以将dg拆掉,去掉log_archive_dest_2、FAL_SERVER、FAL_CLIENT、standby_file_management参数。
另外还要注意如果用rman做dg,注意手工添加tempfile。
优缺点:优点是停机时间短,停机时间为switch over的时间。
缺点:主机必须双份、存储必须双份。
例如:将192.168.82.129的orcl库中的local_sp用户的所有对象都导入到192.168.82.130数据库中。
前提:130的orcl库中必须有local_sp这个用户A.在129上su – oracleB.然后再命令行执行exp local_sp/local_sp@orcl owner=local_sp file=local_sp.dmp log=local_sp.log 解析:这是exp导出命令,然后在当前目录下会看到local_sp.dmp这个文件。
C.然后将local_sp.dmp传到130上。
命令为:scp local_sp.dmp 192.168.82.130:/home/oracle/D.登陆到130上,su – oracle用户,然后再命令行执行imp local_sp/local_sp@orcl fromuser= local_sp touser= local_sp file=local_sp.dmpE.即可2.按照表级别exp和imp操作步骤和上面的很像,唯一不同的是exp和imp命令上的差异exp的命令为:exp local_sp/local_sp@orcl tables=(table_name1,table_name2 ……)file=local_sp.dmp log=local_sp.logimp命令为:imp local_sp/local_sp@orcl ignore=y file=local_sp.dmp解析:imp的命令中是将dmp的文件全部导入库中,如果exp导出的是多个表,但是这里imp导入时只想导入1张表,那就可以将tables=(table_name)加入到imp命令中即可。
一般情况下,按照全库级别的导出和导入情况比较少,当然在数据库迁移的情况下比较实用。
这里全库的exp和imp一般都是以sys来做。
具体exp和imp的命令为:exp \'sys/passwd@orcl as sysdba\' full=y file=full.dmp log=full.logimp \'sys/passwd@orcl as sysdba\' full=y file=full.dmp备注:imp和exp要注意数据库的版本和字符集,如果版本不一致可能imp时不能成功,如果字符集不一致在imp成功以后的数据可能是乱码!如果需要更改字符集的话,需要关闭数据库后,将数据库打开到限制模式下,才可以修改!暂时就先写这3种情况,详细步骤请看exp_资料和 imp_资料。
EXP、IMP 命令详解
Imp 用户名/密码file=路径full=y
exp 用户名/密码@连接字file=e:\0322.dmp log=e:\0322.log direct=y statistics=none owner=xx alter user trff_app quota unlimited on trff_app 接触表空间无权限
ORACLE数据导出EXP命令:
exp 用户名/密码@连接字file=e:\0322.dmp log=e:\0322.log direct=y statistics=none owner=xx
命令详解:
E:\>exp help=y
通过输入EXP 命令和用户名/口令,您可以
在用户/ 口令之后的命令:
实例: EXP SCOTT/TIGER
或者,您也可以通过输入跟有各种参数的EXP 命令来控制“导出”的运行方式。
要指定参数,您可以使用关键字:
格式: EXP KEYWORD=value 或KEYWORD=(value1,value2,...,valueN)
实例: EXP SCOTT/TIGER GRANTS=Y TABLES=(EMP,DEPT,MGR)
或TABLES=(T1: P1,T1: P2),如果T1 是分区表
USERID 必须是命令行中的第一个参数。
关键字说明(默认)
---------------------------------------------------
USERID 用户名/口令
FULL 导出整个文件(N)
BUFFER 数据缓冲区的大小
OWNER 所有者用户名列表
FILE 输出文件(EXPDA T.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 将传输的表空间列表
E:\>imp help=y
可以通过输入IMP 命令和您的用户名/口令
跟有您的用户名/ 口令的命令:
实例: IMP SCOTT/TIGER
或者, 可以通过输入IMP 命令和各种自变量来控制“导入”按照不同参数。
要指定参数,您可以使用关键字:
格式: IMP KEYWORD=value 或KEYWORD=(value1,value2,...,vlaueN)
实例: IMP SCOTT/TIGER IGNORE=Y TABLES=(EMP,DEPT) FULL=N
或TABLES=(T1: P1,T1: P2),如果T1 是分区表
USERID 必须是命令行中的第一个参数。
关键字说明(默认)
----------------------------------------------
USERID 用户名/口令
FULL 导入整个文件(N)
BUFFER 数据缓冲区大小
FROMUSER 所有人用户名列表
FILE 输入文件(EXPDA T.DMP)
TOUSER 用户名列表
SHOW 只列出文件内容(N)
TABLES 表名列表
IGNORE 忽略创建错误(N)
RECORDLENGTH IO 记录的长度
GRANTS 导入权限(Y)
INCTYPE 增量导入类型
INDEXES 导入索引(Y)
COMMIT 提交数组插入(N)
ROWS 导入数据行(Y)
PARFILE 参数文件名
LOG 屏幕输出的日志文件
CONSTRAINTS 导入限制(Y)
DESTROY 覆盖表空间数据文件(N)
INDEXFILE 将表/索引信息写入指定的文件
SKIP_UNUSABLE_INDEXES 跳过不可用索引的维护(N)
ANAL YZE 执行转储文件中的ANAL YZE 语句(Y)
FEEDBACK 显示每x 行(0) 的进度
TOID_NOV ALIDATE 跳过指定类型id 的校验
FILESIZE 各转储文件的最大尺寸
RECALCULATE_STA TISTICS 重新计算统计值(N)
下列关键字仅用于可传输的表空间
TRANSPORT_TABLESPACE 导入可传输的表空间元数据(N) TABLESPACES 将要传输到数据库的表空间
DA TAFILES 将要传输到数据库的数据文件
TTS_OWNERS 拥有可传输表空间集中数据的用户。