两组服务器,分别在两个机房,数据库同步和网站同步,我已经搞定,但如何能实现异地热备份呢?

两组服务器,分别在两个机房,数据库同步和网站同步,我已经搞定,但如何能实现异地热备份呢?,第1张

补充;
进入域名后台管理,添加2个A记录,当访问该域名时,随机解析,实现负载平衡,
可以做一个主引导页面,比如电信线路,网通线路选择点击
你的问题很高深,不知道这个办法行吗
“其中一组故障” 是服务器当机 还是网络线路出现问题?
可以指定域名解析多个ip 这个 可以找域名提供商解决
也可以做一个自动判断网速的跳转页面 根据网速自动选择线路

异地容灾,顾名思义就是在不同的地方(异地:可以是同城的两个不同的机房或者是两座不同的城市),构建一套或者多套相同的应用或者数据库,进一步提高了数据抵抗各种可能安全因素的容灾能力,可以对企业应用和数据库起到安全性、连续性等方面的作用。
两大分类
考虑到不同企事业单位对数据安全和业务连续性的要求不尽相同,我们将异地容灾分为两大类:数据级容灾和应用级容灾。
数据级容灾:就是指建立一个异地的数据系统,该系统是本地关键应用数据的一个可用复制。在本地数据及整个应用系统出现灾难时,至少在异地保存有一份可用的关键业务的数据。该数据可以是与本地生产数据的完全实时复制,也可以比本地数据略微落后,但一定是可用的。
应用级容灾:在数据级容灾基础上,在异地建立一套与本地生产系统相当的备份环境,包括主机、网络、应用、IP等资源均有配套,当本地系统发生灾难时,异地系统可以提供完全可用的生产环境。
CDP异地容灾VS传统异地容灾
传统的异地容灾方案大多基于远程复制技术。远程复制是指运用复制技术将数据以同步或者异步的方式存储到异地灾备中心中,其主要实现方式有三种:1利用主机远程复制软件或硬件 。2利用存储自身的复制软件。3利用数据库软件产品。远程复制的方式可以实现数据级的容灾,但是一旦发生灾难,无法保证业务的连续性。此外,一旦出现数据库逻辑错误或人为误删除的情况,远程复制不能修复数据错误,也不能找回误删除的数据,更谈不上100%恢复数据并保障数据的可用性了。
和力记易的异地容灾方案以CDP持续数据保护技术为核心,可以构建异地桌面端或服务器端的文件、数据库和应用的全需求平台,能够防范数据丢失、修复数据错误,还能保障业务连续,全方位满足客户不同的数据安全和业务连续性要求。

用raid 1模式,可以软件实现也可以硬件实现。很多主板支持硬件实现raid功能,在BIOS中打开raid支持选项,启动时就会提示进入raid配置。

进入配置界面后,应能找到这两块硬盘,创建一个raid 1,将两块硬盘加入,随后会要求对其格式化。这样应该就完成了,安装 *** 作系统后系统中就只能找到一块硬盘。实际上就已经是raid 1模式了。再有就是软件实现了,要在windows 中进行设置了,网上应该有很多。

服务器

服务器,也称伺服器,是提供计算服务的设备。由于服务器需要响应服务请求,并进行处理,因此一般来说服务器应具备承担服务并且保障服务的能力。

创建脚本/root/script/backupsh
# 该脚本应用于10多台普通的Linux应用服务器,多年来从未出过差错。
# 数据库备份较为特殊,这里不包含数据库备份。
# 因为脚本中含有FTP密码,所以FTP仅给予写权限较为安全,FTP中的老备份的定期删除任务由FTP服务器完成。
# 备份加入到自动任务中,每周六23:00执行,并写入日志,如下:
# 追加下面语句到/etc/crontab中
# 0 23 6 root /root/script/backupsh >> /root/script/backuplog 2>&1
#有注释版:
#!/bin/bash
#=====================================================
#author zhaoyn
#date 2010/12/31
#=====================================================
#参数设定
basedir=/opt/backup #备份存放的目录
days=15 #备份在本地保留天数
bakfiles="/root/script /etc" #需要备份的目录或文件,请不要使用快捷方式或通配符
ftpip=XXXXXXXXXXXX #异地备份的FTP地址
ftpuser='username' #异地备份的FTP用户名
ftppw='password' #异地备份的FTP密码
echo =====================================================
date
cd $basedir
#删除备份目录中15天以前备份文件,不包含子目录
find -maxdepth 1 -name "tgz" -mtime +"$days" -exec rm -f {} \;
for bakfile in $bakfiles
do
file=`basename $bakfile`
#压缩打包需要备份的目录,包括权限,文件命名包含当前时间
tar -czpf "$file"_$(date +%Y%m%d-%H%M)tgz $bakfile
#大文件打包前后,缓解磁盘压力,降低I/O错误概率
sleep 10s ;sync;sync
done
#通过FTP上传当天备份的文件到异地
ftp -v -n -i $ftpip <<END
user $ftpuser $ftppw
bin
mput $(date +%Y%m%d)tgz
bye
END
#无注释版:
#!/bin/bash
#=====================================================
#author zhaoyn
#date 2010/12/31
#=====================================================
basedir=/opt/backup
days=15
bakfiles="/root/script /etc"
ftpip=XXXXXXXXXXXX
ftpuser='username'
ftppw='password'
echo =====================================================
date
cd $basedir
find -maxdepth 1 -name "tgz" -mtime +"$days" -exec rm -f {} \;
for bakfile in $bakfiles
do
file=`basename $bakfile`
tar -czpf "$file"_$(date +%Y%m%d-%H%M)tgz $bakfile
sleep 10s ;sync;sync
done
ftp -v -n -i $ftpip <<END
user $ftpuser $ftppw
bin
mput $(date +%Y%m%d)tgz
bye
END
Mysql的备份,如果凌晨可以停止几分钟,那么强烈建议对Mysql执行物理备份,脚本如下
#!/bin/bash
#History
#=====================================================
#When Who What
#2010/3/24 Zhaoyn Create
#
#=====================================================
basedir=/opt/backup
updir=$basedir/updir
timenow=$(date +%Y%m%d-%H%M)
# 删除mysql十四天前的数据,注意,这里仅删除了mysql的tgz文件。
rm -f `find $basedir -name "mysqltgz" -mtime +14`
# 由于数据库在有连接的情况下,直接对数据文件打包是可能出问题的,所以这里我们在打包前要停用数据库,这样直接对数据文件打包,恢复时只需解压数据文件到新环境相应的目录即可,默认是/var/lib/mysql
# 如果白天也要进行数据库备份,请使用mysqldump命令,进行在线备份。恢复也挺方便的。
/etc/rcd/initd/mysqld stop
sleep 5s ;sync;sync
tar -czpf $basedir/mysql$timenowtgz /var/lib/mysql
/etc/rcd/initd/mysqld start
#=====================================================
附件中的脚本文件是有DOS换行符(CR/LF)的,复制文件中的内容到SSH客户端没有问题,如果直接拷贝文件到Linux系统中,可先运行下面的命令:
mv txt sh
dos2unix sh


欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/zz/13370511.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-23
下一篇 2023-07-23

发表评论

登录后才能评论

评论列表(0条)

保存