数据库备份方案及容灾备份(Mysql,SqlServer,Oracle)
备份文件目录结构
备份文件总目录databak:
databak/Installation environment--环境备份目录
databak/project/package--项目部署包备份目录
databak/project/logs--项目日志备份目录
databak/file--文件备份目录
databak/datafile--数据备份目录
传统备份
本机备份,备份文件存储在非项目运行磁盘空间下,windows服务器禁止在系统盘下存储备份文件,linux服务器禁止在/etc、/usr、/var、/lib、/tmp等特殊系统目录下存储备份文件。
- 环境备份
序号 |
说明 |
内容 |
备注 |
1 |
备份内容 |
java环境安装包 .net环境安装包 C环境安装包 Python环境安装包 tomcat等容器安装包及初始配置文件 数据库安装包 .....运行基础环境相关安装服务 |
|
2 |
备份方式 |
全量备份/变更备份 |
手动备份文件 |
3 |
文件期限 |
永久保留 |
- 项目备份
序号 |
说明 |
内容 |
备注 |
1 |
备份内容 |
项目部署包 部署说明文件 |
|
2 |
备份方式 |
每周备份/更新版本备份 |
Win服务器采用计划任务运行脚本 Linux服务器采用 crontab定时执行shell脚本
|
3 |
文件期限 |
保留最新3次备份文件 |
- 文件备份
序号 |
说明 |
内容 |
备注 |
1 |
备份内容 |
项目附件文件 项目模板文件 |
|
2 |
备份方式 |
每日增量备份/全量备份 |
全量备份: Win服务器采用计划任务运行脚本 Linux服务器采用 crontab定时执行shell脚本 增量备份: 增量备份工具 |
3 |
文件期限 |
永久保留 |
- 数据备份
序号 |
说明 |
内容 |
备注 |
1 |
备份内容 |
数据库备份文件 或者 数据库原始文件 |
|
2 |
备份方式 |
小数据量每日全量备份 大数据量每日增量备份 |
全量备份: 数据库自带备份工具与备份。 Win服务器采用计划任务运行脚本 Linux服务器采用 crontab定时执行shell脚本 增量备份(不适用数据库原始文件备份): 数据库增量备份工具 |
3 |
文件期限 |
小数据量永久保留最新3次备份文件 大数据量永久保留备份文件 |
容灾备份
- 容灾备份说明
容灾备份是为了应对服务器磁盘故障导致数据丢失,保证数据备份的安全性。使得在服务器发生故障后可以快速恢复项目使项目正常运行。结合传统备份方式,使得备份结构更加清晰,还原项目更加快速。能够合理避免磁盘损坏造成项目灾难性的故障的发生。使项目更加健全和完善。
a容灾备份文件存储必须选择非本服务器存储空间
b备份必须在晚上,避免影响项目的正常使用以及过多占用网络资源
c定期检查备份内容是否正常和完整
d定期检查备份存储空间是否正常
e合理规划备份存储空间避免影响正常备份
- 容灾备份方式
序号 |
方式 |
说明 |
备注 |
1 |
外挂移动盘 |
在服务器外接一个移动硬盘或者其他移动存储设备。 |
|
2 |
内网备份服务器 |
专门建设一台备份存储服务器,使用ftp、sftp的方式上传备份数据。 |
|
3 |
公网备份服务器 |
由网进公司提供一个公共网络下的备份存储服务器,使用ftp、sftp的方式上传备份数据。 |
- 备份方法
序号 |
备份方式 |
备份内容 |
方法 |
备注 |
1 |
外挂移动盘 |
环境备份 |
手动备份,环境变更后手动备份 |
|
2 |
项目备份 |
项目更新前,手动吧项目部署文件备份至外挂磁盘中,使项目部署的备份文件保持最新3次。 |
||
3 |
文件备份 |
每天晚上小数据量文件采用全量备份,大的数据量采用增量备份的方式把数据拷贝至外挂磁盘中。 |
||
4 |
数据备份 |
|||
5 |
内网备份服务器 |
环境备份 |
手动备份,环境变更后手动备份 |
|
6 |
项目备份 |
项目更新前,手动吧项目部署文件上传至内网FTP中,使项目部署的备份文件保持最新3次。 |
||
7 |
文件备份 |
每天晚上小数据量文件采用全量备份,大的数据量采用增量备份的方式把数据上传至FTP备份服务器中。 |
||
8 |
数据备份 |
同上 |
||
9 |
公网备份服务器 |
环境备份 |
手动备份,环境变更后手动备份 |
|
10 |
项目备份 |
项目更新前,手动吧项目部署文件上传至内网FTP中,使项目部署的备份文件保持最新3次。 |
||
11 |
文件备份 |
每天晚上小数据量文件采用全量备份,大的数据量采用增量备份的方式把数据上传至FTP备份服务器中。 |
||
12 |
数据备份 |
同上 |
数据库备份基础步骤
- Mysql备份
Windows服务器
1.1备份bat命令:
echo 备份
"[mysqldump.exe]" -u[username] -p[password] --opt --default-character-set=utf8 -e --triggers -R --hex-blob --flush-logs -x [database] > [file]
echo 导出已经完成
#pause
参数说明:
[mysqldump.exe]--mysqldump文件绝对路径
[username]--数据库用户名
[password]--数据库密码
[database]--数据库名称
[file]--导出文件绝对路径+文件名称
1.2创建计划任务每日或者固定时间点内执行bat。
Linux服务器
1.3备份Shell命令:
#!/bin/bash
base_dir=/home/test/sql_script
DATE=$(date +%Y%m%d)
time=$(date "+%Y-%m-%d %H:%M:%S")
cd $base_dir
mysqldump -u[username] -p[password] --databases [database] > [file]
if [ $? -eq 0 ]
thenecho "成功备份mysql数据库,当前日期为:"$time >> /home/test/mysql_dump.log
elseecho "备份mysql数据库失败:当前日期为:"$time>> /home/test/mysql_dump.log
Fi
参数说明:
[username]--数据库用户名
[password]--数据库密码
[database]--数据库名称
[file]--导出文件绝对路径+文件名称
1.4创建作业
crontab -e 创建
1 1 * * * /script/FTP.sh --输入执行脚本
:wq --保存作业
1 1 * * * 每天第一个小时执行一次
定时含义* * * * * 五个参数依次代表的含义分、时、日、月、星期
- Oracle备份
Windows服务器
2.1备份bat命令:
@echo off
set BACKUP_DIR=[filepath]
set ORACLE_USERNAME=[username]
set ORACLE_PASSWORD=[password]
set ORACLE_DB=[kj]
set BACK_OPTION=
set BACK_NAME=[filename]
set BACK_FULL_NAME=%BACKUP_DIR%\%BACK_NAME%
rem 开始备份
exp %ORACLE_USERNAME%/%ORACLE_PASSWORD%@%ORACLE_DB% %BACK_OPTION% file="%BACK_FULL_NAME%.dmp log="%BACK_FULL_NAME%.log"
参数说明:
[filepath]--备份文件目录
[username]--oracle用户名
[password]--oracle密码
[kj]--表空间名称
[filename]--备份文件名称不带
2.2创建计划任务每日或者固定时间点内执行bat。
Linux服务器
2.3Shell备份命令:
#!/bin/bash
su - [oracleuser]
export ORACLE_SID=[sid]
expdp [username]/[password] dumpfile=[filepath][filename].dmp logfile=[filepath][filename].log schemas=[kj];
参数说明:
[oracleuser]--linux系统oracle用户
[sid]--实例名称
[filepath]--备份文件目录
[username]--oracle用户名
[password]--oracle密码
[kj]--表空间名称
[filename]--备份文件名称不带
2.4创建作业
crontab -e 创建
1 1 * * * /script/FTP.sh --输入执行脚本
:wq --保存作业
1 1 * * * 每天第一个小时执行一次
定时含义* * * * * 五个参数依次代表的含义分、时、日、月、星期
- SqlServer备份
windows服务器
3.1bat命令备份
@echo off
set path=%path%;[osql.exe]
echo 数据库备份开始
osql.exe -S [IP] -U [username] -P [password] -i sqlserverbackup.sql -o [logsfile]
echo 数据库备份完成
Pause
参数说明:
[osql.exe]--osql.exe文件位置C:\Program Files (x86)\Microsoft SQL Server\80\Tools\Binn
[IP]--数据库IP
[username]--数据库用户名
[password]--数据库密码
[logsfile]--日志文件路径加名称(日志格式.out)
3.2创建sqlserverbackup.sql文件
sqlserverbackup.sql文件必须和bat在同一目录下,SQL代码如下:
DECLARE @name varchar(50)
DECLARE @datetime char(14)
DECLARE @path varchar(255)
DECLARE @bakfile varchar(255)
set @name='[filename]'
set @datetime=CONVERT(char(8),getdate(),112) + REPLACE(CONVERT(char(8),getdate(),108),':','')
set @path='[filepath]'
set @bakfile=@path+''+@name+'.BAK'
backup database @name to disk=@bakfile with name=@name
Go
参数说明:
[filename]--备份文件名称不需要后缀
[filepath]--备份文件路径
3.3创建计划任务每日或者固定时间点内执行bat。
上传内网/公网FTP服务器
- Windows服务器
1.1创建bat脚本(脚本如下):
@Echo Off
Echo open [IP] [port] >ftp.up
Echo [username]>>ftp.up
Echo [password]>>ftp.up
Echo Cd .\[ftpfile] >>ftp.up
Echo binary>>ftp.up
Echo put "[filepath]">>ftp.up
Echo bye>>ftp.up
FTP -s:ftp.up
del ftp.up /q
del [filepath]
bat脚本参数说明:
[IP]--FTP服务器IP地址
[prot]--FTP服务器端口,默认端口可以忽略该参数
[username]--FTP服务器用户名
[password]--FTP服务器密码
[filepath]--上传文件的路径加文件名称
[ftpfile]--ftp文件目录
1.2创建计划任务每日或者固定时间点内执行bat。
2.Linux服务器
2.1创建shell脚本(脚本如下):
#!/bin/bash
ftp -i -n <<FTPIT
open [IP] [port]
user [username] [password]
binary
hash
cd /[ftpfile]
lcd [filepath]
prompt
mput [filename]
close
bye
FTPIT
rm -f [filepath]+[filename]
Shell脚本参数说明
[IP]--FTP服务器IP地址
[prot]--FTP服务器端口,默认端口可以忽略该参数
[username]--FTP服务器用户名
[password]--FTP服务器密码
[filepath]--上传文件的路径
[ftpfile]--ftp文件目录
[filename]--需要上传的文件名称,*代表本目录下所有文件
2.2创建作业
crontab -e 创建
1 1 * * * /script/FTP.sh --输入执行脚本
:wq --保存作业
1 1 * * * 每天第一个小时执行一次
定时含义* * * * * 五个参数依次代表的含义分、时、日、月、星期
数据库备份方案及容灾备份(Mysql,SqlServer,Oracle)相关推荐
- mysql数据库容灾备份软件_mysql 容灾备份
跨服务器备份: 服务器A:192.168.5.193 测试数据库TestDB 服务器B:192.168.5.194 目标:将服务器A上的测试数据库定时备份到服务器B中 需要技术:mysqldump + ...
- 云呐容灾备份策略,存储容灾备份系统
互联网科技不断发展进步的今天,时刻面临着数据丢失.数据泄露.人为误删除.恶意篡改.黑客攻击.病毒等种种威胁.保护数据安全这一迫切需求极大的促进了国内外容灾备份市场的快速发展,容灾备份领域也同样经历了一 ...
- 删库到跑路?还得看这篇Redis数据库持久化与企业容灾备份恢复实战指南
本章目录 0x00 数据持久化 1.RDB 方式 2.AOF 方式 如何抉择 RDB OR AOF? 0x01 备份容灾 一.备份 1.手动备份redis数据库 2.迁移Redis指定db-数据库 3 ...
- DSG证券基金行业本地异地容灾备份查询一体化方案(西部证券)
证券行业灾备需求 证券集中交易系统的建设,对集中交易系统的安全性.可靠性和业务连续性等方面提出了越来越高的要求,因为该系统是证券业务得以正常运转的前提和保证.证券交易系统是一种典型的"任务关 ...
- 长江证券集中交易系统本地查询及异地容灾备份系统建设
1993年,世贸中心大楼发生爆炸,爆炸前约有350家企业在该楼中工作.1年后,再回到世贸大楼的公司变成150家,有200家企业由于无法存取重要的信息系统而倒闭.消失.1995年1月,日本神户地区大地震 ...
- 保证服务器宕机业务不中断,备特佳CDP容灾备份系统——服务器端数据备份软件 - 和力记易--CDP容灾备份专家...
软件介绍: 备特佳CDP容灾备份系统是和力记易自主研发适用于服务器端数据备份的CDP容灾备份软件,是一款主要面向Windows.Linux.Unix平台下集数据库备份.文件备份.操作系统备份于一体的C ...
- 徐州社保容灾备份系统集成和设备采购goldengate
一.本项目中小型机.磁盘陈列.服务器.光纤交换机.数据库复制软件财政部门已审核同意购买进口产品,其余产品采购的是非进口产品 二.本项目不接受超过580万元的投标报价. 三.系统现状 徐州市劳动和社会保 ...
- 《大数据》杂志——大数据容灾备份技术挑战和增量备份解决方案
大数据容灾备份技术挑战和增量备份解决方案 罗圣美1,2,李 明1,叶郁文1 (1.中兴通讯股份有限公司 南京 210012: 2.清华大学计算机科学与技术系 北京 100084) 摘要:大数据已成为当 ...
- 云呐|什么是容灾备份一体机?
什么是容灾备份一体机? 容灾备份一体机为集软件和硬件于一体的解决方案,容灾备份一体机的出现,为用户提供了集"计算+存储+灾备"三位一体的"一揽子解决方案". 这 ...
最新文章
- c 使用腾讯云mysql_腾讯云使用笔记一: 环境搭建
- SpringBoot复习:2(@Configuration注解)
- 软件设计原则——接口隔离原则
- 前后台分离使用cookie判断用户状态以及传递参数
- SpringCloud-使用路由网关统一访问接口(附代码下载)
- 使用JJWT实现JWT代码示例
- 点点滴滴积累——基于XMLSchema与Annotation的几种Advice的规则
- 一元两次方程组c语言,一元二次方程求解程序完整代码
- The system is running in low-graphics mode
- 中文文本分类:你需要了解的10项关键内容
- web一键返回顶端html代码,CSS-返回顶部代码_html/css_WEB-ITnose
- Android PreferenceScreen
- 一个PHP的QRcode类,与大家分享
- 走一波 程序员必备精品软件大全
- 金融行业网络安全等级保护测评指南
- 【python数据结构】多维数组
- Android——一个简单的音乐APP(二)
- oracle em错误,em使用错误,求建议
- C++小游戏(第五弹)
- 杠杆炒股中洗盘是什么?