所谓备份,就是把数据库复制到转储设备的过程。其中,转储设备是指用于放置数据库拷贝的磁带或磁盘。
简单的按照备份进行的方式,可以分为逻辑备份、冷备份(脱机备份)、热备份(联机备份),其实冷备份与热备份又可以合称为物理备份
按照备份的工具,可以分为EXP/IMP备份、OS拷贝、RMAN、第三方工具,如VERITAS
(1)EXP/IMP逻辑备份:
1.1单表导
导出:
开始钮->运行->输入CMD->进入DOS界面
EXP 用户名/密码@连接字符串 GRANTS=Y TABLES=(stu) file=C:\文件名.DMP
导入:
开始钮->运行->输入CMD->进入DOS界面
IMP 用户名/密码@连接字符串 IGNORE=Y TABLES=(stu) FULL=N file=C:\文件名.DMP
其中stu是你要的表名
1.2 全库导
导出:
开始钮->运行->输入CMD->进入DOS界面
EXP 用户名/密码@连接字符串 FULL=Y file=C:\文件名.DMP
导入:
开始钮->运行->输入CMD->进入DOS界面
IMP 用户名/密码@连接字符串 FULL=Y file=C:\文件名.DMP
(2)冷备份Cold backup (冷备份)
在文件级备份开始前数据库必须彻底关闭。关闭操作必须用带有normal、immediate、transaction
选项shutdown来执行。
数据库使用的每个文件都被备份下来,这些文件包括:
所有数据文件(data files)
所有控制文件(control files)
所有联机REDO LOG 文件
INIT.ORA文件(可选)
密码文件(password file)(可选)
作冷备份一般步骤是:
(1) 正常关闭要备份的实例(instance);
(2)备份整个数据库到一个目录
(3) 启动数据库
如
SQL>connect system/manager@orcl
SQL >shutdown immediate
C: >copy <file> <backup directory>
SQL >startup
注意:如果利用脚本对数据库进行冷备份,必须对关闭数据库的命令进行逻辑检查,
如果发生关闭数据库的命令不能正常执行而导致数据库没有正常关闭,那么,所有的冷备份将是无效的。
(3)Hot backup (热备份)
热备份是当数据库打开并对用户有效是的OS级的数据备份。热备份只能用于ARCHIVELOG方式的数据库
在数据文件备份之前,对应的表空间必须通过使用ALTER TABLESPACE …… BEGIN BACKUP以备份方式放置。
然后组成表空间的数据文件可以使用类似冷备份的操作系统命令进行拷贝。在数据文件用操作系统命令拷贝
后,应使用ALTER TABLESPACE …… END BACKUP命令使表空间脱离热备份方式。
热备份没有必要备份联机日志,但必须是归档状态,在实例恢复的时候,可能需要用到归档日志。
当前联机日志一定要保护好或是处于镜相状态,当前联机日志的损坏,对于数据库的损坏是巨大的,
只能以数据的丢失来进行数据库的恢复工作。
对于临时表空间,里面是用于临时的排序的数据文件,在热备份是也可以考虑不用备份,
如果临时文件发生故障,可以删除该数据文件与表空间,重建一个临时表空间。
操作系统作热备份的一般步骤为:
1. 连接数据库
SQL>connect system/manager@orcl
2. 将需要备份的表空间(如User)设置为备份方式
SQL>Alter tablespace User begin backup;
3. 拷贝数据文件
SQL>copy /u01/oradata/prod/user01.ora /backup/prod/user01.ora
4. 在数据文件拷贝完成后,将表空间脱离备份方式
SVRMGRL>Alter tablespace User end backup;
5. 对所有需要备份的表空间重复2,3,4