Oracle数据库的不同备份方法

合集下载

oracle数据库全库备份语句

oracle数据库全库备份语句

oracle数据库全库备份语句Oracle数据库是一种关系型数据库管理系统,提供了全库备份的功能,可以用来备份整个数据库。

下面列举了10个不同的Oracle数据库全库备份语句。

1. 使用RMAN备份全库:使用RMAN工具备份整个Oracle数据库,可以使用以下命令:```RMAN> backup database;```2. 使用expdp备份全库:使用expdp工具备份整个Oracle数据库,可以使用以下命令:```expdp system/password@database_name full=Y directory=backup_dir dumpfile=full_backup.dmp logfile=full_backup.log;```3. 使用exp备份全库:使用exp工具备份整个Oracle数据库,可以使用以下命令:```exp system/password@database_name full=y file=full_backup.dmp log=full_backup.log;4. 使用Data Pump备份全库:使用Data Pump工具备份整个Oracle数据库,可以使用以下命令:```expdp system/password@database_name full=Y directory=backup_dir dumpfile=full_backup.dmp logfile=full_backup.log;```5. 使用RMAN增量备份全库:使用RMAN工具进行增量备份,可以使用以下命令:```RMAN> backup incremental level 1 cumulative database;```6. 使用expdp表空间备份:使用expdp工具备份指定表空间的数据,可以使用以下命令:```expdp system/password@database_name tablespaces=tablespace_name directory=backup_dir dumpfile=tablespace_backup.dmplogfile=tablespace_backup.log;7. 使用exp表空间备份:使用exp工具备份指定表空间的数据,可以使用以下命令:```exp system/password@database_name tablespaces=tablespace_name file=tablespace_backup.dmp log=tablespace_backup.log;```8. 使用RMAN备份控制文件和参数文件:使用RMAN工具备份控制文件和参数文件,可以使用以下命令:```RMAN> backup current controlfile;```9. 使用expdp备份指定用户的数据:使用expdp工具备份指定用户的数据,可以使用以下命令:```expdp system/password@database_name schemas=user_name directory=backup_dir dumpfile=user_backup.dmp logfile=user_backup.log;```10. 使用exp备份指定用户的数据:使用exp工具备份指定用户的数据,可以使用以下命令:```exp system/password@database_name owner=user_name file=user_backup.dmp log=user_backup.log;```以上是10个不同的Oracle数据库全库备份语句,可以根据实际需求选择合适的备份方式进行数据库备份。

ORACLE数据库有两类备份方法和ImpExp命令使用

ORACLE数据库有两类备份方法和ImpExp命令使用

ORACLE数据库有两类备份方法。

第一类为物理备份,该方法实现数据库的完整恢复,但数据库必须运行在归挡模式下(业务数据库在非归挡模式下运行),且需要极大的外部存储设备,例如磁带库;第二类备份方式为逻辑备份,业务数据库采用此种方式,此方法不需要数据库运行在归挡模式下,不但备份简单,而且可以不需要外部存储设备。

数据库逻辑备份方法ORACLE数据库的逻辑备份分为三种模式:表备份、用户备份和完全备份。

逻辑备份,三种模式:表备份、用户备份和完全备份。

逻辑备份:imp/exp就相当于oracle数据还原与备份Oracle数据导入导出imp/exp就相当于oracle数据还原与备份。

exp命令可以把数据从远程数据库服务器导出到本地的dmp文件。

imp命令可以把dmp文件从本地导入到远处的数据库服务器中。

利用这个功能可以构建两个相同的数据库,一个用来测试,一个用来正式使用。

执行环境:可以在SQLPLUS.EXE或者DOS(命令行)中执行,装了oracle数据库,但在dos壮态下执行exp/imp时,显示不是内部或外部命令,也不是可用的程序,不知道什么问题??没有设置oracle的系统环境变量,设置一下就ok:path=c:\oracle9\ora92\binDOS中可以执行时由于在oracle 8i 中安装目录ora81BIN被设置为全局路径,该目录下有EXP.EXE与IMP.EXE文件被用来执行导入导出。

oracle用java编写,SQLPLUS.EXE、EXP.EXE、IMP.EXE这两个文件有可能是被包装后的类文件。

SQLPLUS.EXE调用EXP.EXE、IMP.EXE所包裹的类,完成导入导出功能。

SQLPLUS.EXE 也可以调用IMP exp命令模块。

-------------------------------------Oracle Exp命令参数c:> exp -help 查看参数。

C:\Users\Ruibron>exp -helpExport: Release 11.1.0.6.0 - Production on 星期六9月6 19:27:50 2014Copyright (c) 1982, 2007, Oracle. All rights reserved.通过输入EXP 命令和您的用户名/口令, 导出操作将提示您输入参数:例如: EXP SCOTT/TIGER或者, 您也可以通过输入跟有各种参数的EXP 命令来控制导出的运行方式。

oracle冷备份与热备份

oracle冷备份与热备份
2.2、log下那些在archive rede log目标目录中的文件
2.3、重新启动archive进程
2.4、备份归档的redo log文件
3、用alter database backup controlfile命令来备份控制文件
三、提高oracle备份速度
1、发布命令启动跟踪机制:
3.3、全库方式,将数据库中的所有对象导出/导入
导出:$exp user/pwd file=/dir/xxx.dmp log=xxx.log full=y commit=y ignore=y
导入:$imp user/pwd file=/dir/xxx.dmp log=xxx.log fromuser=dbuser touser=dbuser2
sql>alter tablespace app_data read only;
sql>alter tablespace app_index read only;
7.2、发出exp命令
sql>host exp userid="""sys/password as sysdba""" transport_tablespace=y tablespaces=(app_data,app_index)
一、冷备份
1、关闭数据库
sqlplus /nolog
sql>connect /as sysdba
sql>shutdown normal;
2、用拷贝命令cp备份全部的时间文件、重做日志文件、控制文件、初始化参数文件
sql>cp;;
3、重启Oracle数据库

oracle数据库备份

oracle数据库备份

oracle数据库备份1. ⽂件查看数据⽂件、控制⽂件、⽇志⽂件查看如下:select file#, status, enabled, name from V$datafile;--查看数据⽂件select * from v$controlfile;--控制⽂件select * from v$logfile;--⽇志⽂件2. 三种备份⽅法 1)导⼊/导出(import/export) 1.⽀持类型: table, user, tablespace, full database 2. 导⼊导出例⼦:exp system/manager@TEST file=d:\export.dmp full=y--将数据库TEST完全导出(全库备份),⽤户名system 密码manager 导出到D:\daochu.dmp中exp system/manager@TEST file=d:\export.dmp owner=(system,sys)--将system和sys的表导出exp aichannel/aichannel@TEST file= d:export.dmp tables= (tab1,tab2)--将tab1表和tab2表导出imp system/manager@TEST file=d:\export.dmp tables=(tab1,tab2);--将export.dmp中tab1表和tab2表导⼊imp system/manager@TEST file=d:\export.dmp; 3. 注意:若⽤户权限不够时需要修改权限--先以system/manager登录--授予权限grant exp_full_database, imp_full_database to username; 2)冷备份(⾮归档模式) 1. 步骤:shutdown数据库---> copy⽂件---> start数据库 2. 例⼦:connect tigger/sccot as sysdba;shutdown immediate;cp d:/test*.dbf d:export --cp ⽂件⽬标⽂件夹数据⽂件cp d:/test*.ctl d:export --控制⽂件cp d:/test*.log d:export --⽇志⽂件startup; 3)热备份(归档模式) 1. 说明:前提条件是数据库运⾏在归档模式(oracle数据库安装默认运⾏在⾮归档模式) 2. 将数据库转换为归档模式如下:(注意数据库必须已装载到此实例并且不在任何实例中打开)--需先关闭数据库并加载数据库shutdown immediate;startup mount;--(startup nomount 启动实例;startup mount 启动实例加载数据库; startup 启动实例加载数据库打开数据库)alter database archivelog;--数据库必须已装载到此实例并且不在任何实例中打开 3. 归档相关操作archive log list;--查看是否出于归档模式;alter system set log_archive_start =true scope =spfile; --启⽤主动归档select name from v$archived_log; --查询归档⽇志alter system set log_achive_start=false scope=spfile;--将数据库切换为归档模式archive log stop;archive log start; 4. 热备份具体步骤如下:shutdown immediate;startup mount;alter database archivelog;alter database open;alter tablespace users begin backup; --设置备份模式;host copy d:\oracle\*.dbf d:\export;--拷贝alter tablespace users end backup ;--结束备份状态alter system switch logfile--切换⽇志,使⽤当前⽇志归档 5. 不⾜之处:不能出错 6. 优点:备份时数据库仍然可以使⽤,备份时间短3.RMAN备份和恢复⼯具(rocovery manager)1)说明: 1.RMAN是 ORACLE提供的⼀个备份与恢复的⼯具,可以⽤来执⾏完全或不完全的数据库恢复。

备份oracle数据库表的方法

备份oracle数据库表的方法

备份oracle数据库表的方法备份Oracle数据库表是保证数据库数据安全的重要措施之一。

本文将介绍几种备份Oracle数据库表的方法,帮助用户选择适合自己的备份方式。

一、使用数据泵导出表数据数据泵是Oracle提供的一个强大的工具,可以将表数据导出为一个可移植的二进制文件。

使用数据泵导出表数据的步骤如下:1. 连接到数据库:使用SQL*Plus或SQL Developer等工具连接到Oracle数据库。

2. 导出表数据:运行以下命令导出表数据:```expdp username/password@connect_string tables=table_name directory=directory_name dumpfile=dumpfile_name.dmp```其中,username是数据库用户名,password是密码,connect_string是数据库连接字符串,table_name是要导出的表名,directory_name是存储导出文件的目录,dumpfile_name是导出文件的名称。

3. 导出结果:数据泵将会导出表数据,并保存在指定的目录中的导出文件中。

二、使用INSERT语句备份表数据除了使用数据泵,还可以使用INSERT语句将表数据备份到另一个表中。

这种方法适用于小型数据库,备份过程如下:1. 创建备份表:在同一个数据库中创建一个与原表结构相同的备份表。

```CREATE TABLE backup_table AS SELECT * FROM original_table WHERE 1=0;```2. 备份数据:运行以下命令将表数据备份到备份表中。

```INSERT INTO backup_table SELECT * FROM original_table;```注意,这个命令会将原表的所有数据复制到备份表中。

三、使用Oracle备份工具除了以上两种方法,还可以使用Oracle备份工具进行表数据备份。

oracle备份数据库的方法

oracle备份数据库的方法

oracle备份数据库的方法
Oracle数据库的备份方法可以分为两类:物理备份和逻辑备份。

物理备份:
1. 冷备份:在数据库已经正常关闭的情况下进行备份,此时数据库是一致性的。

冷备份必须拷贝所有数据文件、控制文件、归档重做日志文件以及初始化参数文件(可选)。

由于冷备必须在数据库关闭的情况下进行,因此当数据库处于打开状态时,执行数据库文件系统备份是无效的。

2. 热备份:在数据库运行状态下进行备份,需要数据库运行在归档模式下,并且需要极大的外部存储设备,例如磁带库。

逻辑备份:
1. 表模式备份:备份某个用户模式下指定的对象(表)。

业务数据库通常采用这种备份方式。

2. 用户模式备份:备份某个用户模式下的所有对象。

3. 完全备份:备份整个数据库。

此外,Oracle还提供了导出/导入工具(expdp/impdp 或 exp/imp)来进行数据备份和恢复。

利用 exp 或 expdp 可将数据从数据库中提取出来,再利用 imp 或 impdp 将提取出来的数据送回到 Oracle 数据库中去。

请注意,在选择备份方法时,应根据实际情况和需求进行选择,并确保在操作过程中遵循最佳实践和安全准则。

orcle数据库备份语句

orcle数据库备份语句

orcle数据库备份语句Oracle数据库备份是一项非常重要的任务,可以保障数据的安全性和完整性。

在进行数据库备份时,我们可以使用不同的语句和方法来完成备份操作。

以下是一些常用的Oracle数据库备份语句:1. 使用RMAN备份整个数据库:RMAN是Oracle推荐的备份工具,可以使用以下语句备份整个数据库:```RMAN> BACKUP DATABASE;```2. 使用RMAN备份指定表空间:如果只需要备份数据库中的特定表空间,可以使用以下语句:```RMAN> BACKUP TABLESPACE tablespace_name;```3. 使用RMAN备份指定数据文件:如果只需要备份数据库中的特定数据文件,可以使用以下语句:```RMAN> BACKUP DATAFILE 'datafile_path';4. 使用RMAN备份指定控制文件:控制文件是数据库的关键组成部分,可以使用以下语句备份控制文件:```RMAN> BACKUP CURRENT CONTROLFILE;```5. 使用RMAN备份归档日志:归档日志包含了数据库的所有更改记录,可以使用以下语句备份归档日志:```RMAN> BACKUP ARCHIVELOG ALL;```6. 使用EXPDP备份数据库:EXPDP是Oracle提供的数据泵工具,可以使用以下语句备份整个数据库:```expdp username/password directory=directory_name dumpfile=dumpfile_name.dmp full=yes;7. 使用EXPDP备份指定表:如果只需要备份数据库中的特定表,可以使用以下语句:```expdp username/password directory=directory_name dumpfile=dumpfile_name.dmp tables=table_name;```8. 使用EXPDP备份指定表空间:如果只需要备份数据库中的特定表空间,可以使用以下语句:```expdp username/password directory=directory_name dumpfile=dumpfile_name.dmp tablespaces=tablespace_name;```9. 使用EXPDP备份指定用户:如果只需要备份数据库中的特定用户,可以使用以下语句:```expdp username/password directory=directory_name dumpfile=dumpfile_name.dmp schemas=user_name;```10. 使用EXPDP备份指定数据文件:如果只需要备份数据库中的特定数据文件,可以使用以下语句:```expdp username/password directory=directory_name dumpfile=dumpfile_name.dmp filesperset=1 include=datafile:'datafile_path';```总结:以上是一些常用的Oracle数据库备份语句,通过使用不同的备份语句可以实现对整个数据库、指定表空间、指定数据文件、归档日志等的备份。

oracle数据库数据备份清理机制

oracle数据库数据备份清理机制

oracle数据库数据备份清理机制
Oracle数据库有多种备份和恢复机制可以使用,其中包括:
1. 数据库完整备份:使用RMAN (Recovery Manager)工具进行
数据库完整备份。

RMAN可以创建一个完整备份集,包含数
据库中的所有数据文件、日志文件和控制文件。

通过使用RMAN进行完整备份,可以轻松地恢复数据库到一个特定的
时间点。

2. 增量备份:使用RMAN进行增量备份,只备份自上次备份
以来发生更改的数据块。

这种备份机制可以减少备份的时间和存储空间,但在恢复时需要借助完整备份。

3. 归档日志备份:在归档模式下,Oracle将数据库的已提交事
务记录到归档日志中。

通过备份归档日志,可以实现点-in-
time的恢复和恢复到特定的时间点。

4. 数据库闪回:Oracle提供了闪回数据库(Flashback Database)功能,可以快速地将整个数据库恢复到一个特定的时间点,而不是单独恢复数据文件。

这种机制可以避免备份和恢复的过程。

在备份完成后,可以根据存储空间和备份策略的要求来清理备份。

可以使用RMAN的DELETE命令来删除不需要的备份。

可以使用RMAN的RETENTION POLICY来设置RMAN应保
留的备份的时间段。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Oracle数据库的备份方法1、引言Oracle数据库的备份方法很多,无论使用那种备份方法,备份的目的都是为了在出现故障后能够以尽可能小的时间和代价恢复系统。

比如使用export实用程序导出数据库对象、使用Oracle备份数据库、使用Oracle对称复制、使用Oracle 并行服务器、使用Oracle冷备份、使用Oracle热备份等各种备份方法都有其优缺点、适用的场合和相应的软硬件要求。

本文主要就用export实用程序导出数据库对象、Oracle冷备份、Oracle热备份这三种最基本的备份方法进行详细的探讨,分析各自的优缺点和适用的场合,并给出自动执行这些备份方案的脚本文件。

2、三种备份方案的比较2.1冷备份冷备份是Oracle最简单的一种备份;执行冷备份前必须关闭数据库;然后使用操作系统实用工具或者第三方工具备份所有相关的数据库文件。

优点:能简单快速地备份。

能简单快速地恢复。

执行简单。

缺点:必须关闭数据库,不能进行点恢复。

2.2热备份热备份是当数据库正在运行时进行数据备份的过程。

执行热备份的前提是:数据库运行在可归档日志模式。

适用于24X7不间断运行的关键应用系统。

优点:备份时数据库可以是打开的。

热备份可以用来进行点恢复。

初始化参数文件、归档日志在数据库正常运行时是关闭的,可用操作系统命令拷贝。

缺点:执行过程复杂。

由于数据库不间断运行,测试比较困难。

不能用操作系统实用工具拷贝打开的文件。

必须使用Oracle提供的ocopy工具来拷贝打开的文件。

热备份可能造成CPU、I/O过载,应在数据库不太忙时进行。

2.3Export导出数据库对象冷备份和热备份都备份物理数据库文件,因而被称为物理备份。

而export备份的是数据库对象,因此被称为逻辑备份。

优点:能执行对象或者行恢复。

备份和恢复速度更快。

能够跨操作系统平台迁移数据库。

数据库可一直运行。

缺点:export并不是冷备份和热备份的替代工具。

冷、热备份可保护介质失效。

export备份可保护用户或应用错误。

3、冷备份方案的实施3.1冷备份数据库的步骤(1)关闭数据库;(2)备份所有相关的数据库文件:初始化参数文件、控制文件(可用selectname from v$controlfile;列出所有控制文件)、数据文件(可用select name from v$datafile;列出所有数据文件)、Redo日志(可用select member from v$logfile;列出所有redo日志文件)、归档的Redo日志(可用select sequence#,first_time from v$loghist;列出所有归档redo日志文件的顺序号和产生时间)。

3.2冷备份数据库的脚本文件coldbackup.bat4、热备份方案的实施4.1热备份数据库的前提条件:数据库运行在归档模式Oracle数据库的redo日志记录在数据库上进行的所有活动。

LGWR后台进程以一种循环方式写这些日志文件,从第一个redo日志到下一个,直到该组的最后一个,然后由从第一个日志写起。

在非归档模式下,当循环写到最后一个日志文件后,就重写第一个日志。

因此,非归档模式下唯一的数据库恢复办法就是使用冷备份。

在归档模式下,当redo日志满时,一个ARCH后台进程就读取全部redo日志,然后将其写到归档日志。

因此,可以使用热备份和点恢复。

在归档日志模式下,如果归档日志目的空间已满,数据库活动将暂时停止,只有释放一些空间后,数据库才能继续运行。

通常,background_dump_destination将产生一个跟踪文件来显示归档方面的问题。

Oracle数据库安装默认运行在非归档模式,通过以下步骤可以从非归档模式转换为归档模式:(1)编辑参数文件init.ora,设置以下参数# 设置数据库自动归档log_archive_start = true# 设置归档日志文件的目录,该目录必须事先已建立,并有大量可利用的空间log_archive_dest_1="location=%oracle_base%\ oradata\%oracle_sid%\archive"# 设置归档日志文件名的格式。

%s表示顺序号,%t表示线程号。

log_archive_format = "%oracle_sid%%T%S.ARC"(2)在sqlplus上运行以下命令sqlplus>;connect sys/qazwsx as sysdbasqlplus>;shutdown immediate;sqlplus>;startup mount exclusive;sqlplus>;alter database archivelog;sqlplus>;alter database open;sqlplus>;shutdown immediate;(3)执行数据库冷备份当数据库运行在归档模式下,数据库恢复过程要求使用冷备份时,归档日志是必需的。

(4)正常启动数据库,并确认数据库运行在归档模式sqlplus>; startup;sqlplus>; select * from v$database; 其log_mode会显示数据库是否归档模式sqlplus>; archive log list; 也会显示数据库是否归档模式如果Oracle数据库运行在归档模式,当进行数据库维护时,可能需要暂停数据库的归档,在完成维护后,再重新启动归档模式。

通过以下步骤可以从归档模式转换为非归档模式:sqlplus>;connect sys/qazwsx as sysdbasqlplus>;shutdown immediate;sqlplus>;startup mount exclusive;sqlplus>;alter database noarchivelog;sqlplus>;alter database open;sqlplus>; select * from v$database; 其log_mode会显示数据库是否归档模式sqlplus>; archive log list; 也会显示数据库是否归档模式4.2热备份数据库的步骤(1)拷贝init.ora文件到备份目录(参数文件在数据库启动后处于关闭状态)。

(2)将需要备份的某个表空间置于开始备份模式。

(3)使用ocopy.exe拷贝表空间,然后将该表空间置于结束备份模式中(ocopy.exe不能用于直接拷贝联机的数据库文件)。

(4)对数据库中的每个表空间执行步骤2和3(可以通过视图dba_tablespaces 和v$datafile查看数据库中有哪些表空间和数据文件)。

(5)通过在sqlplus上执行archive log list命令获取当前的日志顺序号,从oldest online log sequence开始到current log sequence的联机redo日志应该是热备份的一部分。

(6)在sqlplus上执行alter system switch logfile;命令来强迫日志切换,以便所有的日志都被归档。

(7)使用alter database backup controlfile to trace;命令获得控制文件的一个备份,可以到%oracle_base%\admin\%oracle_sid%\udump目录中寻找最新的跟踪文件,其中有重建控制文件的全部命令。

(8)使用windows nt的命令从%log_archive_dest%中拷贝归档的日志文件到备份目录。

4.3热备份数据库的脚本文件hotbackup.bat5、使用export作为备份策略5.1export的命令选项说明Oracle数据库的exp工具提供tables、users、full database、tablespace四种级别的导出方式,把指定的数据库内容导出到一个或者多个oracle二进制文件中,该文件只允许用imp工具来读取,imp的命令选项可用imp help=y来查阅。

您可以通过输入EXP 命令以及各种自变量来控制“导出”的运行方式。

要指定参数,您可以使用关键字:格式:EXP KEYWORD=value 或KEYWORD=(value1,value2,...,valueN)实例:EXP SCOTT/TIGER GRANTS=Y TABLES=(EMP,DEPT,MGR)或TABLES=(T11,T12),如果T1 是分区表USERID 必须是命令行中的第一个参数。

下列关键字仅用于可传输的表空间TRANSPORT_TABLESPACE 导出可传输的表空间元数据(N)TABLESPACES 将传输的表空间列表5.2export备份数据库的脚本文件expbackup.bat6、各种备份策略的自动执行方法不管是冷备份、热备份,还是export备份;不管是unix平台,还是windows 平台,都可以利用at命令来定时、自动执行上述备份策略。

AT 命令安排在特定日期和时间运行命令和程序,在windows nt平台上必须首先运行调度服务(schedule),才能使用at命令。

AT命令用法如下:AT [\\computername] [ [id] [/DELETE] | /DELETE [/YES]]AT [\\computername] time [/INTERACTIVE][ /EVERY:date[,...] | /NEXT:date[,...]] "command"\\computername 指定远程计算机。

如果省略这个参数,会计划在本地计算机上运行命令。

id 指定给已计划命令的识别号。

/delete 删除某个已计划的命令。

如果省略id,计算机上所有已计划的命令都会被删除。

/yes 不需要进一步确认时,跟删除所有作业的命令一起使用。

time 指定运行命令的时间。

/interactive 允许作业在运行时,与当时登录的用户桌面进行交互。

/every:date[,...] 每个月或每个星期在指定的日期运行命令。

如果省略日期,则默认为在每月的本日运行。

/next:date[,...] 指定在下一个指定日期(如下周四)运行命令。

如果省略日期,则默认为在每月的本日运行。

"command" 准备运行的Windows NT 命令或批处理程序。

举例如下:(1) 每周五19:00执行冷备份at 19:00 /every:F "coldbak.cmd"(2) 每周二20:00执行热备份at 20:00 /every:T "coldbak.cmd"(3) 每周一、二、三、四、五21:00执行export备份at 20:00 /every:M,T,W,Th,F "expbak.cmd"。

相关文档
最新文档