LinuxORCLE数据库增量备份脚本
2023-06-13 09:14:14 时间
ORCLE数据库备份策略
1.通过使用exp和imp命令实现数据库导出和导入。
有三种模式:
a.用户模式:导出(导入)用户所有对象以及对象中的数据;
b.表模式:导出(导入)用户所有表或者指定的表;
c.整个数据库:导出(导入)数据库中所有对象。
如:
普通导出
a.导出一个完整数据库
expsystem/managerfile=f.dmpfull=y
b.导出数据库定义而不导出数据
expsystem/managerfile=f.dmpfull=yrows=n
普通导入:
a.完全导入
impsystem/managerfile=f.dmpfull=y
b.数据库结构存在时,只导入数据
impsystem/managerfile=f.dmpfull=yignore=y
2.每周进行数据库备份,以防数据库被意外破坏后恢复数据
安排如下:
周一:完全备份(f1)expxxx/xxxinctype=completefile=f1.dmp
周二:增量备份(f2)expxxx/xxxinctype=incrementalfile=f2.dmp
周三:增量备份(f3)expxxx/xxxinctype=incrementalfile=f3.dmp
周四:增量备份(f4)expxxx/xxxinctype=incrementalfile=f4.dmp
周五:累积备份(f5)expxxx/xxxinctype=cumulativefile=f5.dmp
周六:增量备份(f6)expxxx/xxxinctype=incrementalfile=f6.dmp
周日:增量备份(f7)expxxx/xxxinctype=incrementalfile=f7.dmp
比如数据库在周日被破坏,则可用以下方式恢复:
1.创建空的数据库,同之前的结构。
2.impxxx/xxxinctype=RESTOREFULL=yFILE=f1.dmp
3.impxxx/xxxinctype=RESTOREFULL=yFILE=f5.dmp
4.impxxx/xxxinctype=RESTOREFULL=yFILE=f6.dmp
说明:
完全导出:对整个数据库的备份
增量导出:是备份上一次完全导出后改变的数据。
累积导出:是备份自上次完全导出后改变的数据。
EXAMPLE:LINUX下备份数据库
BACKUP_DIR=/home/oracle/backups
if[!-d$BACKUP_DIR];then
mkdir-p$BACKUP_DIR
fi
DAYS=(SunMonTueWedThuFriSat)#创建数组
TYPES=(incrementalcompleteincrementalincrementalincrementalcumulativeincremental)
day=`date+%w`#取得本周天数,0代表周日,1代表周一
DAY_NAME=${DAYS[$day]}#取得数组的值
TYPE=${TYPES[$day]}
DATE_NAME=`date+%F`
FILE_NAME=${DATE_NAME}-${DAY_NAME}-${TYPE}.dmp#2008-12-8-Mon-complete.dmp
expxxx/xxxinctype=$TYPEfile=${BACKUP_DIR}/${FILE_NAME}>/dev/null
gzip${BACKUP_DIR}/${FILE_NAME}
find$BACKUP_DIR-mtime+7-delete#删除七天前更改过的文件
1.通过使用exp和imp命令实现数据库导出和导入。
有三种模式:
a.用户模式:导出(导入)用户所有对象以及对象中的数据;
b.表模式:导出(导入)用户所有表或者指定的表;
c.整个数据库:导出(导入)数据库中所有对象。
如:
普通导出
a.导出一个完整数据库
expsystem/managerfile=f.dmpfull=y
b.导出数据库定义而不导出数据
expsystem/managerfile=f.dmpfull=yrows=n
普通导入:
a.完全导入
impsystem/managerfile=f.dmpfull=y
b.数据库结构存在时,只导入数据
impsystem/managerfile=f.dmpfull=yignore=y
2.每周进行数据库备份,以防数据库被意外破坏后恢复数据
安排如下:
周一:完全备份(f1)expxxx/xxxinctype=completefile=f1.dmp
周二:增量备份(f2)expxxx/xxxinctype=incrementalfile=f2.dmp
周三:增量备份(f3)expxxx/xxxinctype=incrementalfile=f3.dmp
周四:增量备份(f4)expxxx/xxxinctype=incrementalfile=f4.dmp
周五:累积备份(f5)expxxx/xxxinctype=cumulativefile=f5.dmp
周六:增量备份(f6)expxxx/xxxinctype=incrementalfile=f6.dmp
周日:增量备份(f7)expxxx/xxxinctype=incrementalfile=f7.dmp
比如数据库在周日被破坏,则可用以下方式恢复:
1.创建空的数据库,同之前的结构。
2.impxxx/xxxinctype=RESTOREFULL=yFILE=f1.dmp
3.impxxx/xxxinctype=RESTOREFULL=yFILE=f5.dmp
4.impxxx/xxxinctype=RESTOREFULL=yFILE=f6.dmp
说明:
完全导出:对整个数据库的备份
增量导出:是备份上一次完全导出后改变的数据。
累积导出:是备份自上次完全导出后改变的数据。
EXAMPLE:LINUX下备份数据库
BACKUP_DIR=/home/oracle/backups
if[!-d$BACKUP_DIR];then
mkdir-p$BACKUP_DIR
fi
DAYS=(SunMonTueWedThuFriSat)#创建数组
TYPES=(incrementalcompleteincrementalincrementalincrementalcumulativeincremental)
day=`date+%w`#取得本周天数,0代表周日,1代表周一
DAY_NAME=${DAYS[$day]}#取得数组的值
TYPE=${TYPES[$day]}
DATE_NAME=`date+%F`
FILE_NAME=${DATE_NAME}-${DAY_NAME}-${TYPE}.dmp#2008-12-8-Mon-complete.dmp
expxxx/xxxinctype=$TYPEfile=${BACKUP_DIR}/${FILE_NAME}>/dev/null
gzip${BACKUP_DIR}/${FILE_NAME}
find$BACKUP_DIR-mtime+7-delete#删除七天前更改过的文件
相关文章
- Linux下对MySql数据库备份与恢复
- MySQL数据库每日备份并定时清理脚本
- 数据备份:Linux定时备份数据库的脚本
- 快速实现SQL Server数据库恢复备份
- mysqldump全量备份+mysqlbinlog二进制日志增量备份详解数据库
- Linux脚本实现数据库备份(linux备份数据库脚本)
- 如何有效执行Oracle数据库备份表(oracle数据库备份表)
- 备份自动化运维:Shell脚本实现MySQL数据库备份(shell脚本mysql)
- 备份数据库使用Oracle指定路径备份数据库(oracle指定路径)
- backupMySQL数据库备份与RMAN技术(mysqlrman)
- 确保数据安全:MSSQL备份数据库(mssql备份数据库)
- Mysql数据库主从备份基本概念篇
- SQL Server数据库应用及其课件学习(sqlserver课件)
- 利用Linux expdp备份Oracle数据库(linux expdp)
- 穿越古老秘药:Linux如何安全备份Oracle数据库(linux备份oracle数据库)
- 抽取增量抽取MSSQL数据库中的信息(读取mssql数据库增量)
- Oracle数据库完整备份用户指南(oracle全库备份用户)
- Oracle数据库冷备份操作步骤(oracle 冷备份步骤)
- MySQL数据库实现增量备份和恢复来提升容灾能力(canal增量MySQL)
- Oracle 2级备份实现数据库完整性保障(oracle 2级备份)
- 自动备份mssqlserver数据库并压缩的批处理脚本
- linux下Vps自动备份web和mysql数据库的脚本
- SQLserver2008数据安全(备份和恢复数据库)
- oracle数据库创建备份与恢复脚本整理