一、备份还原基本概念
物理备份和逻辑备份
1、物理备份是指拷贝数据文件中的有效的数据页 物理备份包含:热备(联机备份,数据库开启状态)和冷备(脱机备份,数据库关 闭状态)物理分为完全备份和增量备份 增量备份是在前一次完全备份或增量备份的基础上只备份新增的或修改的有效的数据页。增量备份又分为累积增量备份和差异增量备份。 差异增量备份:基备份集可以是全量备份,也可以是增量备份。 累积增量备份:基备份集只能是全量备份集。 物理备份,默认使用 AP 辅助进程,所以物理备份时需要保证 AP 服务是开启状态。查看 AP 服务是否开启(查看 AP 进程):查询备份视图
select * from v$dm_ini t where t.PARA_NAME in ( ‘BAK_PATH’, ‘BAK_USE_AP’);
2、逻辑备份是导出表的结构,数据 insert 语句等
脱机备份与还原数据库
脱机备份是数据库关闭状态下的备份:
脱机备份方式1:
通过命令行 DMRAMN 工具备份
RMAN> backup database '/home/dmdba/dmdbms/data/DAMENG/dm.ini' full to FULLBACK_DMRMAN backupset '/home/dmdba/dmdbms/backup/dmrman/fullback_dmrman';
backup database '/home/dmdba/dmdbms/data/DAMENG/dm.ini' full to FULLBACK_DMRMAN backupset '/home/dmdba/dmdbms/backup/dmrman/fullback_dmrman';
Database mode = 0, oguid = 0
Normal of FAST
Normal of DEFAULT
Normal of RECYCLE
Normal of KEEP
Normal of ROLL
EP[0]'s cur_lsn[22931], file_lsn[22931]
Processing backupset /home/dmdba/dmdbms/backup/dmrman/fullback_dmrman
[Percent:100.00%][Speed:0.00M/s][Cost:00:00:00][Remaining:00:00:00]
backup successfully!
time used: 00:00:01.144
通过console 客户端工具备份:
脱机备份还原
还原到备份集时刻
DM8 数据库库级和表空间级的还原只能在脱机状态下还原和恢复
- DMRMAN工具还原
(1)基于备份集将数据库还原到备份的时刻:
restore database '/home/dmdba/dmdbms/data/DAMENG/dm.ini' from backupset '/home/dmdba/dmdbms/backup/dmrman/fullback_dmrman';
(2)基于归档将数据库恢复到最新状态:
recover database '/home/dmdba/dmdbms/data/DAMENG/dm.ini' from backupset '/home/dmdba/dmdbms/backup/dmrman/fullback_dmrman';
(3)库级还原和恢复需要更新数据库魔数:
recover database '/home/dmdba/dmdbms/data/DAMENG/dm.ini' update db_magic;
数据库魔术值说明:
数据库永久魔数(不变): Select permanent_magic;
数据库魔数(每经过一次库级还原和恢复都会更新一次): select db_magic from v$rlog;
- 控制台界面还原
联机备份还原
联机备份是数据库启动状态下的备份,联机备份需要数据库开启归档状态。 备份方式:1、通过 sql 语句 2、DM 管理工具图形化界面
- 客户端工具manager 备份
另外也可以支持表级、表空间的备份
命令行备份:
[dmdba@localhost bin]$ ./disql
disql V8
用户名:
密码:
服务器[LOCALHOST:5236]:处于普通打开状态
登录使用时间 : 3.755(ms)
SQL> backup database;
操作已执行
已用时间: 00:00:01.102. 执行号:88800.
SQL> backup database increment;
操作已执行
已用时间: 00:00:02.843. 执行号:88801.
SQL> backup database increment backupset '/home/dmdba/dmdbms/data/DAMENG/bak';
backup database increment backupset '/home/dmdba/dmdbms/data/DAMENG/bak';
[-8055]:备份目录冲突.
已用时间: 2.670(毫秒). 执行号:0.
SQL> backup database increment backupset '/home/dmdba/dmdbms/data/DAMENG/bak2';
操作已执行
已用时间: 956.933(毫秒). 执行号:88803.
SQL> backup database increment CUMULATIVE to incrback02 backupset '/home/dmdba/dmdbms/data/DAMENG/bak';
backup database increment CUMULATIVE to incrback02 backupset '/home/dmdba/dmdbms/data/DAMENG/bak';
[-8055]:备份目录冲突.
已用时间: 2.804(毫秒). 执行号:0.
SQL> backup database increment CUMULATIVE to bak02 backupset '/home/dmdba/dmdbms/data/DAMENG/bak02';
操作已执行
已用时间: 936.163(毫秒). 执行号:88805.
SQL>
注意目录冲突
联机还原仅支持 表级在线还原
逻辑备份
数据库联机状态下才能导出 dexp 和导入 dimp
[dmdba@localhost bin]$ ./dexp help
dexp V8
格式: ./dexp KEYWORD=value 或 KEYWORD=(value1,value2,...,valueN)
例程: ./dexp SYSDBA/SYSDBA GRANTS=Y TABLES=(SYSDBA.TAB1,SYSDBA.TAB2,SYSDBA.TAB3)
USERID 必须是命令行中的第一个参数
关键字 说明(默认值)
--------------------------------------------------------------------------------
USERID 用户名/口令 格式:{<username>[/<password>] | /}[@<connect_identifier>][<option>] [<os_auth>]
<connect_identifier> : [<svc_name> | Host[:Port] | <unixsocket_file>]
<option> : #{<exetend_option>=<value>[,<extend_option>=<value>]...}
<os_auth> : AS {SYSDBA|SYSSSO|SYSAUDITOR|USERS|AUTO}
FILE 导出文件 (dexp.dmp)
DIRECTORY 导出文件所在目录
FULL 整库导出 (N)
OWNER 以用户方式导出 格式 (user1,user2,...)
SCHEMAS 以模式方式导出 格式 (schema1,schema2,...)
TABLES 以表方式导出 格式 (table1,table2,...)
FUZZY_MATCH TABLES选项是否支持模糊匹配 (N)
QUERY 用于导出表的子集的select 子句
PARALLEL 用于指定导出的过程中所使用的线程数目
TABLE_PARALLEL 用于指定导出的过程中表内的并发线程数目,MPP模式下会转换成单线程
TABLE_POOL 用于指定表的缓冲区个数
EXCLUDE 忽略指定的对象
格式 EXCLUDE=(CONSTRAINTS,INDEXES,ROWS,TRIGGERS,GRANTS) or
EXCLUDE=TABLES:table1,table2 or
EXCLUDE=SCHEMAS:sch1,sch2
INCLUDE 包含指定的对象
格式 INCLUDE=(CONSTRAINTS,INDEXES,ROWS,TRIGGERS,GRANTS) or
INCLUDE=TABLES:table1,table2
CONSTRAINTS 导出约束 (Y)
TABLESPACE 导出对象带有表空间 (N)
GRANTS 导出权限 (Y)
INDEXES 导出索引 (Y)
TRIGGERS 导出触发器 (Y)
ROWS 导出数据行 (Y)
LOG 屏幕输出的日志文件
NOLOGFILE 不使用日志文件(N)
NOLOG 屏幕上不显示日志信息(N)
LOG_WRITE 日志信息实时写入文件: 是(Y),否(N)
DUMMY 交互信息处理: 打印(P), 所有交互都按YES处理(Y),NO(N)
PARFILE 参数文件名
FEEDBACK 每 x 行显示进度 (0)
COMPRESS 导出数据是否压缩 (N)
ENCRYPT 导出数据是否加密 (N)
ENCRYPT_PASSWORD 导出数据的加密密钥
ENCRYPT_NAME 加密算法的名称
FILESIZE 每个转储文件的最大大小
FILENUM 一个模板可以生成的文件数
DROP 导出后删除原表,但不级联删除 (N)
DESCRIBE 导出数据文件的描述信息,记录在数据文件中
LOCAL MPP模式下登录使用MPP_LOCAL方式(N)
HELP 打印帮助信息
按全库导出
dexp userid=SYSDBA/SYSDBA file=/home/dmdba/backup/dmp/full.dmp log=/home/dmdba/backup/dmp/full.log full=y
按用户导出:
dexp userid=SYSDBA/SYSDBA file=/home/dmdba/backup/dmp/user.dmp log=/home/dmdba/backup/dmp/user.log owner='SYSDBA'
按模式导出:
dexp userid=SYSDBA/SYSDBA file=/home/dmdba/backup/dmp/schemas.dmp log=/home/dmdba/backup/dmp/schemas.log schemas='SYSDBA'
导入
/dimp USERID=SYSDBA/SYSDBA FILE=/home/dmdba/backup/dmp/schemas.dmp LOG=/home/dmdba/backup/dmp/schemas_imp.log DIRECTORY=/home/dmdba/backup/dmp/
其他模式导入也是一样
界面导出:
右键 选择模式 或者表导入导出即可