Oracle导入导出程序Exp的使用Word文件下载.docx

上传人:b****4 文档编号:6333271 上传时间:2023-05-06 格式:DOCX 页数:14 大小:22.19KB
下载 相关 举报
Oracle导入导出程序Exp的使用Word文件下载.docx_第1页
第1页 / 共14页
Oracle导入导出程序Exp的使用Word文件下载.docx_第2页
第2页 / 共14页
Oracle导入导出程序Exp的使用Word文件下载.docx_第3页
第3页 / 共14页
Oracle导入导出程序Exp的使用Word文件下载.docx_第4页
第4页 / 共14页
Oracle导入导出程序Exp的使用Word文件下载.docx_第5页
第5页 / 共14页
Oracle导入导出程序Exp的使用Word文件下载.docx_第6页
第6页 / 共14页
Oracle导入导出程序Exp的使用Word文件下载.docx_第7页
第7页 / 共14页
Oracle导入导出程序Exp的使用Word文件下载.docx_第8页
第8页 / 共14页
Oracle导入导出程序Exp的使用Word文件下载.docx_第9页
第9页 / 共14页
Oracle导入导出程序Exp的使用Word文件下载.docx_第10页
第10页 / 共14页
Oracle导入导出程序Exp的使用Word文件下载.docx_第11页
第11页 / 共14页
Oracle导入导出程序Exp的使用Word文件下载.docx_第12页
第12页 / 共14页
Oracle导入导出程序Exp的使用Word文件下载.docx_第13页
第13页 / 共14页
Oracle导入导出程序Exp的使用Word文件下载.docx_第14页
第14页 / 共14页
亲,该文档总共14页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

Oracle导入导出程序Exp的使用Word文件下载.docx

《Oracle导入导出程序Exp的使用Word文件下载.docx》由会员分享,可在线阅读,更多相关《Oracle导入导出程序Exp的使用Word文件下载.docx(14页珍藏版)》请在冰点文库上搜索。

Oracle导入导出程序Exp的使用Word文件下载.docx

PUBLIC'

SPOOLOFF

5.导出一个或多个指定表

expseapark/seaparkfile=tanklog=tanktables=tank

expsystem/managerfile=tanklog=tanktables=seapark.tank

expsystem/managerfile=tanklog=tanktables=(seapark.tank,amy.artist)

6.估计导出文件的大小

全部表总字节数:

SELECTsum(bytes)

FROMdba_segments

WHEREsegment_type='

TABLE'

seapark用户所属表的总字节数:

SELECTsum(bytes)

FROMdba_segments

WHEREowner='

ANDsegment_type='

seapark用户下的aquatic_animal表的字节数:

ANDsegment_name='

AQUATIC_ANIMAL'

7.导出表数据的子集(oracle8i以上)

NT系统:

expsystem/managerquery='

Wheresalad_type='

FRUIT'

tables=amy.salad_type

file=fruitlog=fruit

UNIX系统:

expsystem/managerquery=\"

Wheresalad_type=\'

FRUIT\'

\"

8.用多个文件分割一个导出文件

expsystem/manager

file=(paycheck_1,paycheck_2,paycheck_3,paycheck_4)

log=paycheck,filesize=1Gtables=hr.paycheck

9.使用参数文件

expsystem/managerparfile=bible_tables.par

bible_tables.par参数文件:

#ExportthesampletablesusedfortheOracle8iDatabaseAdministrator'

sBible.

file=bible_tables

log=bible_tables

tables=(

amy.artist

amy.books

seapark.checkup

seapark.items

10.增量导出

• 

 

“完全”增量导出(complete),即备份整个数据库

expsystem/managerinctype=completefile=990702.dmp

“增量型”增量导出(incremental),即备份上一次备份后改变的数据

expsystem/managerinctype=incrementalfile=990702.dmp

“累计型”增量导出(cumulative),即备份上一次“完全”导出之后改变的数据

expsystem/managerinctype=cumulativefile=990702.dmp

附:

常用参数说明

参数 

说明

file 

指定导出文件名。

默认值是file=expdat.dmp。

默认的文件扩展名是.dmp

filesize 

允许使用多个文件分布式导出数据。

默认值为filesize=0,表示所有的数据被写入一个文件。

可以选filesize=1024(1K,1M,1G)

full 

full=y时,表示整个数据库将被导出。

默认值为full=n

help 

控制帮助屏幕的显示。

它的参数是help=y;

没有help=n选项

inctype 

指定增量导出选项

1.complete:

完全

2.incremental:

增量(导出上次任何导出后改变的所有数据库对象)

3.cumulative:

累计(导出上次cumulative,complete导出后改变的所有数据库对象)

indexes 

指定索引是否被导出。

默认值为indexes=y。

如果不希望索引被导出,用indexes=n

log 

指定收集导出信息(包括任何错误信息)的逻辑文件名。

默认的文件扩展名是.log

owner 

允许为指定用户或一列用户导出数据和对象

parfile 

允许从一个文件读取导出参数

query 

指定从一个或更多的表中导出行的一个子集。

它的参数值在where语句中,并且被应用于select语句,在这里export不导出每一个表

rows 

控制表数据是否被导出。

默认值为rows=y,表示数据被导出。

rows=n表示只想导出表定义,而不想导出表的数据

tables 

允许导入一个指定的表或一列表

EXP导出选项

关键字

内容

USERID

运行导出命令的帐号的用户名/口令

BUFFEER

用来取数据行的缓冲区的大小

FILE

导出转储文件的名字

COMPRESS

导出是否应该压缩有碎片的段成一个范围,这将会影响STORAGE子句

GRANTS

导出时否要导出数据库对象上的授权

INDEXES

是否要导出表上的索引

ROWS

是否应导出行。

如它为‘N’,那么在导出文件中仅生成数据库对象的DDL

CONSSTRAINTS

是否导出表旧的约定条件

FULL

如设为‘Y’,那么将执行一个整个数据库导出操作

OWNER

要导出的一系列数据库帐号,然后执行这些帐号的USER导出操作

TABLES

要导出的一系列表;

执行这些表的TABLE导出操作

RECORDLENGTH

转储导出文件日志的长度(以字节为单位),通常都使用缺省,除非要在两个不同操作系统中传递导出文件

INCTYPE

正在执行的导出操作的类型(有效值有COMPLETE(缺省值),CUMULATIVE和IVCREMENTAL)

RECORD

在增量导出类型中的一个标记,标明是否将日志存储到数据字典中日志导出的表中

PARFILE

要传递给导出的参数文件的名字。

这个文件将包含所有参数的入口项

ANALYZE

标明是否将移对象的统计信息写入导出转储文件中

CONSISTENT

标明是否保留所有导出对象的读取一致复制

LOG

导出日志将要写入的文件的名字

MLS

标明是否要导出MLS标号

MLS_LABEL

规定了MLS标号的格式

IMP导入选项

运行导入命令的帐号的用户名/口令

导入转储文件的名字

SHOW

规定文件内容是否被显示,而不是被执行

EGNORE

标明在执行‘CREATE’命令时,是否忽略遇到的错误。

如果正在导入的对象已经存在时,应使用这个参数

如设为‘Y’,那么将执行一个整个数据库导入操作

FROMUSER

在FULL=N的情况下,才有参数。

它是一系列的数据库帐号,其对象应从导出转储文件中读取

TOUSER

一系列数据库帐号,导出转储文件扣的对象将要导入这些帐号

导入时否要导入数据库对象上的授权

是否要导入表上的索引

是否应导入行。

如它为‘N’,那么在导入文件中执行数据库对象的DDL

要导入的一系列表

转储导入文件日志的长度(以字节为单位),通常都使用缺省,除非要在两个不同操作系统中传递导入文件

正在执行的导入操作的类型(有效值有COMPLETE(缺省值),CUMULATIVE和IVCREMENTAL)

要传递给导入的参数文件的名字。

标明是否将移对象的统计信息写入导入转储文件中

导入日志将要写入的文件的名字

标明是否要导入MLS标号

INDEXFILE

不执行导入动作,只生成建索引的文本

贰:

一.导出工具exp

1.它是操作系统下一个可执行的文件存放目录/ORACLE_HOME/bin

exp导出工具将数据库中数据备份压缩成一个二进制系统文件.可以在不同OS间迁移

它有三种模式:

a. 

用户模式:

导出用户所有对象以及对象中的数据;

b. 

表模式:

导出用户所有表或者指定的表;

c. 

整个数据库:

导出数据库中所有对象。

2.导出工具exp交互式命令行方式的使用的例子

$exp[email=test/test123@appdb]test/test123@appdb[/email]

Enterarrayfetchbuffersize:

4096>

回车

Exportfile:

expdat.dmp>

m.dmp 

生成导出的文件名

(1)E(ntiredatabase),

(2)U(sers),or(3)T(ables):

(2)U>

3

Exporttabledata(yes/no):

yes>

Compressextents(yes/no):

ExportdoneinZHS16GBKcharactersetandZHS16GBKNCHARcharacterset

AbouttoexportspecifiedtablesviaConventionalPath...

Table(T)orPartition(T:

P)tobeexported:

(RETURNtoquit)>

cmamenu 

要导出的表名

..exportingtable 

CMAMENU 

4336rowsexported

要导出的表名n

Exportterminatedsuccessfullywithoutwarnings.

3.导出工具exp非交互式命令行方式的例子

$expscott/tigertables=emp,deptfile=/directory/scott.dmpgrants=y

说明:

把scott用户里两个表emp,dept导出到文件/directory/scott.dmp

$expscott/tigertables=empquery=/"

wherejob=/'

salesman/'

andsal/<

1600/"

file=/directory/scott2.dmp

在exp里面加上导出emp的查询条件job='

salesman'

andsal<

1600

(但我个人很少这样用,还是把满足条件的记录生成临时表后,再exp会方便一些)

$expparfile=username.parfile=/directory1/username_1.dmp,/directory1/username_2.dmpfilesize=2000Mlog=/directory2/username_exp.log

参数文件username.par内容

userid=username/userpassword

buffer=8192000

compress=n

grants=y

username.par为导出工具exp用的参数文件,里面具体参数可以根据需要去修改

filesize指定生成的二进制备份文件的最大字节数

(可用来解决某些OS下2G物理文件的限制及加快压缩速度和方便刻历史数据光盘等)

4.命令参数说明

关键字说明(默认)

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

USERID用户名/口令

FULL导出整个文件(N)

BUFFER数据缓冲区的大小

OWNER所有者用户名列表

FILE输出文件(EXPDAT.DMP)

TABLES表名列表

COMPRESS导入一个范围(Y)

RECORDLENGTHIO记录的长度

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选定导出表子集的子句 

下列关键字仅用于可传输的表空间

TRANSPORT_TABLESPACE导出可传输的表空间元数据(N)

TABLESPACES将传输的表空间列表

二.导入工具imp

imp导入工具将EXP形成的二进制系统文件导入到数据库中.

只有拥有IMP_FULL_DATABASE和DBA权限的用户才能做整个数据库导入

imp步骤:

(1)createtable 

(2)insertdata 

(3)createindex(4)createtriggers,constraints

2.导入工具imp交互式命令行方式的例子

$imp

Import:

Release8.1.6.0.0-Productionon星期五12月717:

01:

082001

(c)Copyright1999OracleCorporation. 

Allrightsreserved.

用户名:

test

口令:

****

连接到:

Oracle8iEnterpriseEditionRelease8.1.6.0.0-64bitProduction

WiththePartitioningoption

JServerRelease8.1.6.0.0-Production

导入文件:

expdat.dmp>

/tmp/m.dmp

输入插入缓冲区大小(最小为8192)30720>

经由常规路径导出由EXPORT:

V08.01.06创建的文件

警告:

此对象由TEST导出,而不是当前用户

已经完成ZHS16GBK字符集和ZHS16GBKNCHAR字符集中的导入

只列出导入文件的内容(yes/no):

no>

由于对象已存在,忽略创建错误(yes/no):

yes

导入权限(yes/no):

yes>

导入表数据(yes/no):

导入整个导出文件(yes/no):

.正在将TEST的对象导入到SCOTT

..正在导入表 

"

CMAMENU"

4336行被导入

成功终止导入,但出现警告。

3.导入工具imp非交互式命令行方式的例子

$impsystem/managerfromuser=jonestables=(accts)

$impsystem/managerfromuser=scotttables=(emp,dept)

$impsystem/managerfromuser=scotttouser=joetables=emp

$impscott/tigerfile=expdat.dmpfull=y

$impscott/tigerfile=/mnt1/t1.dmpshow=nbuffer=2048000ignore=ncommit=ygrants=yfull=ylog=/oracle_backup/log/imp_scott.log

$impsystem/managerparfile=params.dat

params.dat内容

file=dba.dmpshow=nignore=ngrants=yfromuser=scotttables=(dept,emp)

4.导入工具imp可能出现的问题

(1)数据库对象已经存在

一般情况,导入数据前应该彻底删除目标数据下的表,序列,函数/过程,触发器等;

数据库对象已经存在,按缺省的imp参数,则会导入失败

如果用了参数ignore=y,会把exp文件内的数据内容导入

如果表有唯一关键字的约束条件,不合条件将不被导入

如果表没有唯一关键字的约束条件,将引起记录重复

(2)数据库对象有主外键约束

不符合主外键约束时,数据会导入失败

解决办法:

先导入主表,再导入依存表

disable目标导入对象的主外键约束,导入数据后,再enable它们

(3) 

权限不够

如果要把A用户的数据导入B用户下,A用户需要有imp_full_database权限

(4) 

导入大表(大于80M)时,存储分配失败

默认的EXP时,compress=Y,也就是把所有的数据压缩在一个数据块上.

导入时,如果不存在连续一个大数据块,则会导入失败.

导出80M以上的大表时,记得compress=N,则不会引起这种错误.

(5)imp和exp使用的字符集不同

如果字符集不同,导入会失败,可以改变unix环境变量或者NT注册表里NLS_LANG相关信息.

导入完成后再改回来.

(6)imp和exp版本不能往上兼容

imp可以成功导入低版本exp生成的文件,不能导入高版本exp生成的文件

根据情况我们可以用

$imp[email=username/password@connect_string]username/password@connect_string[/email]

connect_string是在/ORACLE_HOME/network/admin/tnsnames.ora

定义的本地或者远端数据库的名称

5.命令参数说明

关键字说明(默认) 

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

FULL导入整个文件(N)

BUFFER数据缓冲区大小

FROMUSER所有人用户名列表

FILE输入文件(EXPDAT.DMP)

TOUSER用户名列表

SHOW只列出文件内容(N)

IGNORE忽略创建错误(N)

GRANTS导入权限(Y)

INCTYPE增量导入类型

INDEXES导入索引(Y)

COMMIT提交数组插入(N)

ROWS导入数据行(Y)

CONSTRAINTS导入限制(Y)

DESTROY覆盖表空间数据文件(N)

INDEXFILE将表/索引信息写入指定的文件

SKIP_UNUSABLE_INDEXES跳过不可用索引的维护(N)

ANALYZE执行转储文件中的ANALYZE语句(Y)

r/>

F

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2