linux下简单的mysql/web备份小实例
这个是菜鸟级的运维的mysql的备份小脚本,在这里写出来一是为了做笔记,二是认识一下两个小工具mysqldump/pdumpfs
第一部分是mysql数据的备份
[root@localhost ~]# mkdir -p /usr2/backup/mysql
[root@localhost ~]# vi mysqldump.sh
#!/bin/bash
#author XXX time 2011-10-17
#the backup of localhost mysql data
X=`date +%Y%m%d`
M=/usr/local/mysql/bin
B=/usr2/backup/mysql
$M/mysqldump -uroot --all-databases > $B/$X.sql //本机的mysql为设置登录密码,如果设置密码需要改写这句话($M/mysqldump -uroot -ppassword --all-databases > $B/$X.sql)
tar zcvf $B/$X.tar.gz $B/$X.sql
rm -rf $B/$X.sql
[root@localhost ~]# chmod a+x mysqldump.sh
[root@localhost ~]# ./mysqldump.sh
tar: Removing leading `/' from member names
/usr2/backup/mysql/20111015.sql
以上这个脚本可以加入cron的计划任务中,在定时的时刻执行备份的动作!
[root@localhost ~]# echo " * * * * * root path/XX.sh & >/dev/null" >> /etc/crontab
至于灾难恢复的语句可以这么写
[root@localhost ~]# /usr/local/mysql/bin/mysqldump -uroot -ppassword <$path/`date +%Y%m%d`
每周的备份数据量是很大的,下边的那句话可以写入cron.weekly来清除重叠的数据
[root@localhost ~]# find /usr2/backup/mysql -mtime +6 -exec rm {}\;
第二部分是web数据的备份
这里采用一个新发现的小工具pdumpfs
[root@localhost ~]# yum -y install ruby (安装需要的套件包)
[root@localhost ~]# wget
[root@localhost ~]# rpm -ivh pdumpfs-1.3-1.rh9.rf.i386.rpm
[root@localhost web]# mkdir /usr2/backup/web
[root@localhost ~]# vim web.sh
#!/bin/bash
#author XXX time 2011-10-17
pdumpfs /var/www /usr2/backup/web >/usr2/backup/web/message.log 2>/usr2/backup/web/error.log
[root@localhost ~]# chmod a+x web.sh
同时可以把这个小脚本放入cron的计划任务中定期的执行
[root@localhost ~]# echo " * * * * * root path/XX.sh & >/dev/null" >> /etc/crontab
[root@localhost ~]# ls /usr2/backup/web/ (哲就是备份的数据部分)
2011 error.log latest message.log
第三部分是ssh的异地的无密码复制的设置
两台linux主机,一台ip:192.168.192(也就是服务器本机)另一台是192.168.1.193(作为远程备份主机)
首先在远程备份主机上的操作
[root@localhost ~]# ssh-keygen (生成公匙)
[root@localhost ~]# ssh-copy-id -i /root/.ssh/id_rsa 192.168.1.192(给服务器送去,这步要输入192的密码)
[root@localhost ~]# scp 192.168.1.192:/usr2/backup/mysql/20111015.tar.gz .(这里显示的是可以不使用密码可以直接的从服务器上拷贝东西了,也就是复制的过程。把这里换成脚本就能实现很多的操作)
总结:备份的主要方式有,完整备份,增量备份,差分备份、还有本地和异地备份之分!这里只是一个文件备份的小实例,期待进一步的学习!
关键字:服务器、增量备份、mysql数据、web数据
新文章:
- CentOS7下图形配置网络的方法
- CentOS 7如何添加删除用户
- 如何解决centos7双系统后丢失windows启动项
- CentOS单网卡如何批量添加不同IP段
- CentOS下iconv命令的介绍
- Centos7 SSH密钥登陆及密码密钥双重验证详解
- CentOS 7.1添加删除用户的方法
- CentOS查找/扫描局域网打印机IP讲解
- CentOS7使用hostapd实现无AP模式的详解
- su命令不能切换root的解决方法
- 解决VMware下CentOS7网络重启出错
- 解决Centos7双系统后丢失windows启动项
- CentOS下如何避免文件覆盖
- CentOS7和CentOS6系统有什么不同呢
- Centos 6.6默认iptable规则详解