备份数据库oracle
‘壹’ 如何做Oraclel数据库数据备份
EXP和IMP是Oracle提供的一种逻辑州亮洞备份工具。逻辑备份创建数据库对象的逻辑拷贝并存入一个二进制转储文件。这种逻辑备份需要在数据库启动的情况下使用, 其导出实质就是读取一个数据库记录集(甚至可以包括数据字典)并将这个记录集写入一个文件,这些记录的导出与其物理位置无关,导入实质就是读取转储文件并执行其中的命令。此备份方式是通过Oracle的实用工具export和import来实施的, export是把数据库中的数据导出,import是把export卸出的数据导键兆入数据库中。通过此工具可以衍生出多种功能, 比如整个册枯数据库的备份、表结构重建、数据的传输、用户的改变等等。
也可以采用专业的容灾备份软件对ORACLE数据进行备份。实时数据备份的软件现在很多,CDP容灾备份方案(备特佳备份软件)在RPO和RTO两项指标上优势明显,可以实现数据的实时备份,保障业务系统的连续性。有数据级和应用级两种容灾方案。
‘贰’ oracle数据库如何备份与恢复
Oracle数据库的备份与恢复有漏桐中三种标准的模式,大致分为两大类,备份恢复(物理上的)以及导入导出(逻辑上的)。物理备份又可以根据数据库的工作模式分为非归档模式(Nonarchivelog-style)和归档模式(Archivelog-style),通常,我们把非归档模式称为冷备份,而相应的把归档模式称轮核为热备份。
冷备份是指在数据库关闭的情况下对数据文件、控制文件和重做日志文件进行拷贝。冷备份的优点是简单、快速、安全,缺点是需要停机维护,影响业务连续性。
热备份是指在数返山据库开启并处于归档模式下对数据文件进行拷贝。热备份的优点是不需要停机维护,不影响业务连续性,缺点是比较复杂、耗时、占用资源。
导入导出是指使用EXP/IMP或者数据泵技术将数据库中的对象或者数据导出到一个二进制文件中,并且可以将这个文件导入到另一个数据库中。导入导出的优点是灵活、方便、可移植,缺点是不能保证一致性、效率低、不能恢复系统对象。
‘叁’ oracle数据库备份exp命令(oracle导出exp)
oracle数据库备份exp命令:
第一个,表模式,备份某个用户模式下指定的对象(表)。业务数据库通常采用这种备份方式。若备份到本地文件,使用如下命令:
expicdmain/icdrows=yindexes=ncompress=nbuffer=65536
feedback=100000volsize=0
file=exp_icdmain_csd_yyyymmdd.dmp
log=exp_icdmain_csd_yyyymmdd.log
tables=,icdmain.serviceinfo,icdmain.dealinfo
若直接备份到磁唯猛带设备,使用如下命令:
expicdmain/icdrows=yindexes=ncompress=nbuffer=65536
feedback=100000volsize=0
file=/dev/rmt0
log=exp_icdmain_csd_yyyymmdd.log
tables=,icdmain.serviceinfo,icdmain.dealinfo
注:在磁盘空间允许的情况下,应先备份到本地服务器,然后再拷贝到磁带。出于速度方面的考虑,尽量不要直接备份到磁带设备。
第二个,用户模式,备份某个用户模式下的所有对象。业务凳隐数据库通常采用这种备份方式。若备份到本地文件,使用如下命令:
expicdmain/icdowner=icdmainrows=yindexes=ncompress=nbuffer=65536
feedback=100000volsize=0
file=exp_icdmain_yyyymmdd.dmp
log=exp_icdmain_yyyymmdd.log
若直接备份到磁带设备,使用如下命令:
expicdmain/icdowner=icdmainrows=yindexes=ncompress=nbuffer=65536
feedback=100000volsize=0
file=/dev/rmt0
log=exp_icdmain_yyyymmdd.log
注:如果磁盘有空间,建议备份到磁盘,然后再拷贝到磁带。如果数据库数据量较小,可采用这种办法备份。
第三个,完全模式,备份完整的数据库。业务数据库不采用这种备份方式。备份命令为:
expicdmain/icdrows=yindexes=ncompress=nbuffer=65536
feedback=100000volsize=0full=y
file=exp_fulldb_yyyymmdd.dmp(磁带设备则为/dev/rmt0)
log=exp_fulldb_yyyymmdd.log
对于数据库备份,建议采用增量备份,即只备份上一次备份以来更改的数据。增量备份命令:
expicdmain/icdrows=yindexes=ncompress=nbuffer=65536
feedback=100000volsize=0full=yinctype=incremental
file=exp_fulldb_yyyymmdd.dmp(磁带设备则为/dev/rmt0)
log=exp_fulldb_yyyymmdd.log
(3)备份数据库oracle扩展阅读:
关于增量备份必须满足下列条件:
1、只对完整数据库备份有效,且第一次需要full=y参数,以后需要inctype=incremental参数
2、用户必须有EXP_FULL_DATABASE的系统角色。
3.、话务量较小时方可采用数据库备份。
4、如果磁盘有空间,建议备份到磁指粗桥盘,然后再备份到磁盘。
版权声明:本文为CSDN博主“kalogen”的原创文章,遵循CC4.0BY-SA版权协议,转载请附上原文出处链接及本声明。
‘肆’ ORACLE数据库如何备份数据最好是备份哪些东西(oracle怎么备份数据库)
Oracle数据库的耐凳三种标准的备份方法:
1.导出/导入(EXP/IMP)。
2.热备份。
3.冷备份。
注释:导出备件是一种逻辑备份,冷备份和热备份是物理备份。
一、导出/导入(Export/Import)
利用Export可将数据从数据库中提取出来,利用Import则可将提取出来的数据送回到Oracle数据库中去。
1、简单导出数据(Export)和导入数据(Import)
Oracle支持三种方式类型的输出:
(1)、表方式(T方式),将指定表的数据导出。
(2)、用户方式(U方式),将指定用户的所有对象及数据导出。
(3)、全库方式(Full方式),瘵数据库中的所有对象导出。
数据导入(Import)的过程是数据导出(Export)的逆过程,分别将数据文件导入数据库和将数据库数据导出到数据文件。
2、增量导出/导入
增量导出是一种常用的数据备份方法,它只能对整个数据库来实施,并且必须作为SYSTEM来导出。在进行此种导出时,系统不要求回答任何问题。导出文件名缺省为export.dmp,如果不希望自己的输出文件定名为export.dmp,必须在命令行中指出要用的文件名。
增量导出包括三种类型:
(1)、“完全”增量导出(Complete)
即备份三个数据库,比如:
expsystem/==040731.dmp
(2)、“增量型”增量导出
备份上一次备份后改变的数据,比如:
expsystem/==040731.dmp
(3)、“累积型”增量导出
累计型导出方式是导出自上次“完全”导出之芦蠢后数据库中变化了的信息。比如:
expsystem/==040731.dmp
数据库管理员可以排定一个备份日程表,用数据导出的三个不同方式合理高效的完成。
比如数据库的被封任务可以做如下安排:
星期一:完全备份(A)
星期二:增量导出(B)
星期三:增量导出(C)
星期四:增量导出(D)
星期五:累计导出(E)
星期六:增量导出(F)
星期日:增量导出(G)
如果在星期日,数据库遭到意外破坏,数据库管理员可按一下步骤来回复数据库:
第一步:用命令重新生成数据库结构;
第二步:创建一个足够大的附加回滚。
第三步:完全增量导入A:
impsystem/=RESTOREFULL=yFILE=A
第四步:累计增量导昌哗旅入E:
impsystem/=RESTOREFULL=YFILE=E
第五步:最近增量导入F:
impsystem/=RESTOREFULL=YFILE=F
二、冷备份
冷备份发生在数据库已经正常关闭的情况下,当正常关闭时会提供给我们一个完整的数据库。冷备份时将关键性文件拷贝到另外的位置的一种说法。对于备份Oracle信息而言,冷备份时最快和最安全的方法。冷备份的优点是:
1、是非常快速的备份方法(只需拷文件)
2、容易归档(简单拷贝即可)
3、容易恢复到某个时间点上(只需将文件再拷贝回去)
4、能与归档方法相结合,做数据库“最佳状态”的恢复。
5、低度维护,高度安全。
但冷备份也有如下不足:
1、单独使用时,只能提供到“某一时间点上”的恢复。
2、再实施备份的全过程中,数据库必须要作备份而不能作其他工作。也就是说,在冷备份过程中,数据库必须是关闭状态。
3、若磁盘空间有限,只能拷贝到磁带等其他外部存储设备上,速度会很慢。
4、不能按表或按用户恢复。
如果可能的话(主要看效率),应将信息备份到磁盘上,然后启动数据库(使用户可以工作)并将备份的信息拷贝到磁带上(拷贝的同时,数据库也可以工作)。冷备份中必须拷贝的文件包括:
1、所有数据文件
2、所有控制文件
3、所有联机REDOLOG文件
4、Init.ora文件(可选)
值得注意的使冷备份必须在数据库关闭的情况下进行,当数据库处于打开状态时,执行数据库文件系统备份是无效的。
下面是作冷备份的完整例子。
(1)关闭数据库
sqlplus/nolog
sql sql<; (2)用拷贝命令备份全部的时间文件、重做日志文件、控制文件、初始化参数文件 sql (3)重启Oracle数据库 sql 三、热备份 热备份是在数据库运行的情况下,采用方式备份数据库的方法。所以,如果你有昨天夜里的一个冷备份而且又有今天的热备份文件,在发生问题时,就可以利用这些资料恢复更多的信息。热备份要求数据库在Archivelog方式下操作,并需要大量的档案空间。一旦数据库运行在archivelog状态下,就可以做备份了。热备份的命令文件由三部分组成: 1.数据文件一个表空间一个表空间的备份。 (1)设置表空间为备份状态 (2)备份表空间的数据文件 (3)回复表空间为正常状态 2.备份归档log文件 (1)临时停止归档进程 (2)log下那些在目标目录中的文件 (3)重新启动archive进程 (4)备份归档的redolog文件 3.用命令来备份控制文件 热备份的优点是: 1.可在表空间或数据库文件级备份,备份的时间短。 2.备份时数据库仍可使用。 3.可达到秒级恢复(恢复到某一时间点上)。 4.可对几乎所有数据库实体做恢复 5.恢复是快速的,在大多数情况下爱数据库仍工作时恢复。 热备份的不足之处: 1.不能出错,否则后果不堪设想。 2.假如热备份不成功,所得结果则不能用于时间点的恢复。 3.因为难于维护,所以需要特别仔细小心,不允许在操作时半途而废。 关于Oracle数据库的备份方式就为大家讲解到这里,以后大家需要进行数据库备份工作时可以参照上文中讲解的,从上文中任选一种,就可以完成Oracle数据库的备份,希望上文中涉及到的内容对大家能够有所帮助。 ‘伍’ oracle数据库自动备份系统 Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。下面我为大家分享一下oracle数据库自动备份系统的 方法 ,有需要的可以参考一下! oracle数据库自动备份系统 实现过程: 1. 建立文件 backup.bat (自定义文件名.bat) @echo off REM ########################################################### REM # Windows Server 2003下Oracle数据库自动备份批处理脚本 REM ########################################################### REM 取当前系统时间,可能因 操作系统 不同而取值不一样 set CURDATE=%date:~0,4%%date:~5,2%%date:~8,2% set CURMON=%date:~0,4%%date:~5,2% set CURTIME=%time:~0,2% REM 小时数如果小于10,则在前面补0 if "%CURTIME%"==" 0" set CURTIME=00 if "%CURTIME%"==" 1" set CURTIME=01 if "%CURTIME%"==" 2" set CURTIME=02 if "%CURTIME%"==" 3" set CURTIME=03 if "%CURTIME%"==" 4" set CURTIME=04 if "%CURTIME%"==" 5" set CURTIME=05 if "%CURTIME%"==" 6" set CURTIME=06 if "%CURTIME%"==" 7" set CURTIME=07 if "%CURTIME%"==" 8" set CURTIME=08 if "%CURTIME%"==" 9" set CURTIME=09 set CURTIME=%CURTIME%%time:~3,2%%time:~6,2% REM 设置所有者、用户名和密码 set OWNER=orcl set USER=bktcgl set PASSWORD=bktcgl REM 创建备份用目录,目录结构为oraclebak/YYYYMMDD/ if not exist "oraclebak" mkdir oraclebak cd oraclebak if not exist "%CURMON%" mkdir %CURMON% set FILENAME=%CURMON%/%OWNER%_%CURDATE%_%CURTIME%.DMP set EXPLOG=%CURMON%/%OWNER%_%CURDATE%_%CURTIME%_log.log REM 调用ORACLE的exp命令导出用户数据 exp %USER%/%PASSWORD%@%OWNER% file=%FILENAME% log=%EXPLOG% owner=%USER% grants=n exit 注: 1.bat文件可双击或直接在命令行执行,检查正确与否 2.检查时可注释掉exit 3.以上文件实现按月份创建文件夹,按时间生成备份文件 2.建立windows任务 步骤: 开始 -> 所有程序 -> 附件 -> 系统工具 -> 任务计划程序 -> 操作 -> 创建基本任务 -> 任务名输入"oracle_backup"(自定义任务名),执行这个任务选择每天,下一步 -> 起始时间下午12:00,起始日期2012-7-11,下一步 ->(启动程序)下一步 ->在 浏览 中查找刚刚写好的 backup.bat 文件 >下一步 > 完成 注: 1.在任务计划栏目下新增一个名为"oracle_backup"的任务计划,表明已经配置完毕。 2.不同系统的任务计划略有不同,但基本换汤不换药,不做一一例举 问题:系统警告"已创建新任务,但可能不能运行,因为无法设置账户信息。指定的错误是:Ox80041315:任务计划程序服务没有运行" 原因:电脑的任务计划程序服务没有启动起来。 解决:开始 > 所有程序 > 管理工具 > 服务,找到"Task Scheler"服务,发现启动类型为"已禁用", 右键单击更改为"自动",并把它启动起来,然后重新添加一次任务计划就可以了。 3.简单解释 1. bat:是dos下的批处理文件。批处理文件是无格式的文本文件,它包含一条或多条命令。在命令提示下键入批处理文件的名称,或者双击该批处理文件,系统就会调用 Cmd.exe按照该文件中各个命令出现的顺序来逐个运行它们。 2. Echo 命令:打开回显或关闭请求回显功能,或显示消息。 3. @ 命令:表示不显示@后面的命令 4. Rem 命令:注释命令 5. If命令:if表示将判断是否符合规定的条件,从而决定执行不同的命令。 6. exit :退出命令行 7. GRANTS: 是权限的意思,在你导出的目标数据库中可能会有一些表的如select 权限等赋给了别的用户。 【GRANTS=Y】导出的时候将这些权限导出,导入的时候将这些权限导入。 【GRANTS=N】权限不被导入。