首页数据库oracle数据库备份命令(oracle备份数据库)

oracle数据库备份命令(oracle备份数据库)

编程之家2026-05-23606次浏览

很多朋友对于oracle数据库备份命令和oracle备份数据库不太懂,今天就由小编来为大家分享,希望可以帮助到大家,下面一起来看看吧!

oracle数据库备份命令(oracle备份数据库)

怎样用命令备份还原Oracle数据库

Oracle中没有备份和还原的概念,应该叫导出和导入。

一、导出:

1.获取帮助

exp help=y

2.导出一个完整数据库

exp system/manager file=bible_db log=dible_db full=y

oracle数据库备份命令(oracle备份数据库)

3.导出数据库定义而不导出数据

exp system/manager file=bible_db log=dible_db full=y rows=n

4.导出一个或一组指定用户所属的全部表、索引和其他对象

exp system/manager file=seapark log=seapark owner=seapark

exp system/manager file=seapark log=seapark owner=(seapark,amy,amyc,harold)

注意:在导出用户时,尽管已经得到了这个用户的所有对象,但是还是不能得到这些对象引用的任何同义词。解决方法是用以下的SQL*Plus命令创建一个脚本文件,运行这个脚本文件可以获得一个重建seapark所属对象的全部公共同义词的可执行脚本,然后在目标数据库上运行该脚本就可重建同义词了。

oracle数据库备份命令(oracle备份数据库)

SET LINESIZE 132

SET PAGESIZE 0

SET TRIMSPOOL ON

SPOOL c:\seapark.syn

SELECT'Create public synonym'||synonym_name

||' for'||table_owner||'.'||table_name||';'

FROM dba_synonyms

WHERE table_owner='SEAPARK' AND owner='PUBLIC';

SPOOL OFF

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

exp seapark/seapark file=tank log=tank tables=tank

exp system/manager file=tank log=tank tables=seapark.tank

exp system/manager file=tank log=tank tables=(seapark.tank,amy.artist)

6.估计导出文件的大小

全部表总字节数:

SELECT sum(bytes)

FROM dba_segments

WHERE segment_type='TABLE';

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

SELECT sum(bytes)

FROM dba_segments

WHERE owner='SEAPARK'

AND segment_type='TABLE';

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

SELECT sum(bytes)

FROM dba_segments

WHERE owner='SEAPARK'

AND segment_type='TABLE'

AND segment_name='AQUATIC_ANIMAL';

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

NT系统:

exp system/manager query='Where salad_type='FRUIT'' tables=amy.salad_type

file=fruit log=fruit

UNIX系统:

exp system/manager query=\"Where salad_type=\'FRUIT\'\" tables=amy.salad_type

file=fruit log=fruit

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

exp system/manager

file=(paycheck_1,paycheck_2,paycheck_3,paycheck_4)

log=paycheck, filesize=1G tables=hr.paycheck

9.使用参数文件

exp system/manager parfile=bible_tables.par

bible_tables.par参数文件:

#Export the sample tables used for the Oracle8i Database Administrator's Bible.

file=bible_tables

log=bible_tables

tables=(

amy.artist

amy.books

seapark.checkup

seapark.items

)

10.增量导出

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

exp system/manager inctype=complete file=990702.dmp

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

exp system/manager inctype=incremental file=990702.dmp

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

exp system/manager inctype=cumulative file=990702.dmp

二、导入:

1.获取帮助

imp help=y

2.导入一个完整数据库

imp system/manager file=bible_db log=dible_db full=y ignore=y

3.导入一个或一组指定用户所属的全部表、索引和其他对象

imp system/manager file=seapark log=seapark fromuser=seapark

imp system/manager file=seapark log=seapark fromuser=(seapark,amy,amyc,harold)

4.将一个用户所属的数据导入另一个用户

imp system/manager file=tank log=tank fromuser=seapark touser=seapark_copy

imp 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=y

7.使用参数文件

imp system/manager parfile=bible_tables.par

bible_tables.par参数文件:

#Import the sample tables used for the Oracle8i Database Administrator's

Bible. fromuser=seapark touser=seapark_copy file=seapark log=seapark_import

8.增量导入

imp system./manager inctype= RECTORE FULL=Y FILE=A

oracle数据库备份exp命令

oracle数据库备份exp命令:

第一个,表模式,备份某个用户模式下指定的对象(表)。业务数据库通常采用这种备份方式。若备份到本地文件,使用如下命令:

exp icdmain/icd rows=y indexes=n compress=n buffer=65536

feedback=100000 volsize=0

file=exp_icdmain_csd_yyyymmdd.dmp

log=exp_icdmain_csd_yyyymmdd.log

tables=icdmain.commoninformation,icdmain.serviceinfo,icdmain.dealinfo

若直接备份到磁带设备,使用如下命令:

exp icdmain/icd rows=y indexes=n compress=n buffer=65536

feedback=100000 volsize=0

file=/dev/rmt0

log=exp_icdmain_csd_yyyymmdd.log

tables=icdmain.commoninformation,icdmain.serviceinfo,icdmain.dealinfo

注:在磁盘空间允许的情况下,应先备份到本地服务器,然后再拷贝到磁带。出于速度方面的考虑,尽量不要直接备份到磁带设备。

第二个,用户模式,备份某个用户模式下的所有对象。业务数据库通常采用这种备份方式。若备份到本地文件,使用如下命令:

exp icdmain/icd owner=icdmain rows=y indexes=n compress=n buffer=65536

feedback=100000 volsize=0

file=exp_icdmain_yyyymmdd.dmp

log=exp_icdmain_yyyymmdd.log

若直接备份到磁带设备,使用如下命令:

exp icdmain/icd owner=icdmain rows=y indexes=n compress=n buffer=65536

feedback=100000 volsize=0

file=/dev/rmt0

log=exp_icdmain_yyyymmdd.log

注:如果磁盘有空间,建议备份到磁盘,然后再拷贝到磁带。如果数据库数据量较小,可采用这种办法备份。

第三个,完全模式,备份完整的数据库。业务数据库不采用这种备份方式。备份命令为:

exp icdmain/icd rows=y indexes=n compress=n buffer=65536

feedback=100000 volsize=0 full=y

file=exp_fulldb_yyyymmdd.dmp(磁带设备则为/dev/rmt0)

log=exp_fulldb_yyyymmdd.log

对于数据库备份,建议采用增量备份,即只备份上一次备份以来更改的数据。增量备份命令:

exp icdmain/icd rows=y indexes=n compress=n buffer=65536

feedback=100000 volsize=0 full=y inctype=incremental

file=exp_fulldb_yyyymmdd.dmp(磁带设备则为/dev/rmt0)

log=exp_fulldb_yyyymmdd.log

扩展资料:

关于增量备份必须满足下列条件:

1、只对完整数据库备份有效,且第一次需要full=y参数,以后需要inctype=incremental参数

2、用户必须有EXP_FULL_DATABASE的系统角色。

3.、话务量较小时方可采用数据库备份。

4、如果磁盘有空间,建议备份到磁盘,然后再备份到磁盘。

版权声明:本文为CSDN博主「kalogen」的原创文章,遵循 CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

参考资料来源:Oracle数据库备份(exp/imp命令)

对oracle数据库怎么进行备份急求解决,谢谢!

Oracle数据库的备份,要根据以下不同情况去考虑如何进行备份:

1、根据企业的业务形式-- 24 x 7不停机(银行、通讯等)与每天有一定时间可停机(商场);

2、根据企业的数据库规模--数据量的大小可适当考虑采用的备份方式;

3、根据Oracle数据库的运行方式--日志文件归档与非归档模式。

这里简单说一下两种不同情况所采用的备份方法。

1、企业 24 x 7是不停机--多数采用数据库以归档模式运行,并以逻辑备份和不完全备份相结合的方法。而逻辑备份可按系统方式和用户方式进行备份,而且考虑到备份介质的损坏可能性进行单双日备份。即每种备份留两套,单日一套双日一套。

2、企业业务不是全天性的--可采用数据库以非归档模式运行,并以物理备份和逻辑备份相结合的方法。而逻辑备份可按系统方式和用户方式进行备份,而且考虑到备份介质的损坏可能性进行单双日备份。即每种备份留两套,单日一套双日一套。

注:逻辑备份-- EXP、IMP命令备份;物理备份--关闭数据库备份所有的系统文件;不完全备份--可脱机一些表空间进行备份(此方法用的少)。

关于oracle数据库备份命令,oracle备份数据库的介绍到此结束,希望对大家有所帮助。

oracle数据库下载教程,sql数据库少儿编程网课哪个好?少儿编程课有没有必要