引言

Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的 适应高吞吐量的数据库解决方案。由于其应用范围广,在企业中占有很重要的位置,因此做好Oracle数据库备份以保护其数据安全非常的重要。

Oracle数据库

你所知道的Oracle数据库备份方式有哪些呢?在众多的Oracle数据库的备份方式中应该如何选择呢?

Oracle数据库备份方式有哪些?

Oracle数据库是相对于其他数据库来说比较难的一个,市场上也有很多管理Oracle数据库的主要工具。主要包括:

管理工具功能
sql*plus执行正常的数据操作,也被用来执行大多数的管理任务,是一种命令行工具
Oracle Enterprise Manager图形化管理工具,完成sql*plus的大多数任务,使用非常简单的管理工具,对应数据库的基本管理任务和图形化操作非常方便。
SQL*LOADER数据装在工具,将报表数据的文本文件中的数据装载到数据库的表中。
Exp/imp数据库备份还原工具,可以将一个Oracle数据库中的数据传递到另一个数据库中。
RMAN一种用于备份(backup)、还原(restore)和恢复(recover)数据库的 Oracle工具。RMAN只能用于ORACLE8或更高的版本中

其中常用于Oracle数据库备份的有sql*plus、OEM企业管理器、Exp/imp和rman。备份数据库本来就有很多的方法,大概有3种:冷备份即拷贝物理文件、rman备份、导入导出备份。

❈ 方法1:sql*plus命令备份Oracle数据库

SQL*Plus作为Oracle的客户端工具,既可以建立位于数据库服务器上的数据连接,也可以建立位于网络中的数据连接。

在开始菜单中找到并打开SQL*Plus。打开SQL*Plus启动界面后输入用户名和口令等连接到数据库。当然,还可以进入Windows命令运行窗口中使用SQL*Plus命令连接到数据库。

sql*plus命令备份

❈ 方法2:Oracle企业管理器(Oracle Enterprise Manager—缩写OEM)

1. 登录到OEM,如图所示。

登录到OEM

2. 切换到“可用性”页面,然后选择“备份设置”,还可以设置“调度备份”等配置数据库备份和还原。

备份设置

此外,备份Oracle数据库还可以使用Oracle企业管理器中的导入导出功能。切换到“数据移动”菜单,选择下方的“导出到导出文件”,然后继续完成后续设置即可。

导出到导出文件

❈ 方法3:exp和imp导入导出数据库

exp/imp是一个好的转储工具,特别是在小型数据库的转储,表空间的迁移,表的抽取,检测逻辑和物理冲突等中有不小的功劳。它们既可以在客户端使用,也可以在服务端使用。

1.配置好环境变量后在cmd窗口中输入“exp”并按回车。输入用户名和口令。

2.输入导出数据的命令:

格式为:exp userName/passwd@IP:port/Sid file=D:\XXXX.dmp
示例:exp aimeitest/123456@192.0.0.1:1521/aomei file=D:\XXXX.dmp full=y
注意:参数full=y,表示导出完整的数据库;file=xxx.dmp表示导出的文件名,文件类型要是dmp,因为这是exp和imp命令默认保存的文件类型。

exp导出

❈ 方法4:RMAN备份

基于RMAN备份集的解决方案是常用的Oracle数据库备份和恢复方法。我估计大于80%的Oracle数据库都使用RMAN备份集进行保护。大多数Oracle客户还根据Oracle的高可用性架构(MAA)指南实施系统,而RMAN备份集是MAA的关键组件。

RMAN是ORACLE提供的恢复和备份工具,是随Oracle服务器软件一同安装的工具软件,它可以用来备份和恢复数据库文件、归档日志和控制文件,用来执行完全或不完全的数据库恢复。

与传统工具相比,RMAN具有独特的优势:

  • 跳过未使用的数据块。当备份一个RMAN备份集时,RMAN不会备份从未被写入的数据块,而传统的方式无法获知那些是未被使用的数据块。
  • RMAN备份的一个优点是它能够在数据库打开和/或安装时创建备份。
  • RMAN的另一个可用选项是创建增量备份的能力。增量备份仅复制自上次执行备份以来更改的特定文件。 

使用Rman备份数据库前需要连接到数据库,并且还需要进行一些配置,然后再使用备份命令,如创建oracle数据库全量备份:

connect target /
run{
backup incremental level 0 database format 'D:\orcl\rmanbackup\backup_%d_%T_%s';
backup archivelog all format 'D:\orcl\rmanbackup\arch_%d_%T_%s' delete all input;
delete noprompt obsolete device type disk;
alter system archive log current;
crosscheck backup;
delete noprompt expired backup;
}

如你所见,使用RMAN创建备份需要对命令非常熟悉,此方法适合专业的技术人员。

总结

Oracle数据库备份方式有哪些?除了使用命令创建备份脚本,还可以使用具有可视化界面的数据库管理工具,这些方法也适用于其他数据库,例如SQL Server数据库备份。除此之外还有很多的数据库客户端都可以执行备份操作。