linux系统中mysql自动备份脚本
mysql数据库中存储着网站最核心最宝贵的数据,如果因为不可预测的原因导致数据损坏或丢失,对一个网站的打击是毁灭性的,一次又一次的教训提醒着我们一定要做好备份,但是手工备份确实比较麻烦,每天都要手工操作一次,如果站多的话简直是一种折磨,不过好在我们可以通过编写好的脚本让系统自动备份数据,省去体力劳动。下面收集了几种自动备份mysql数据库的脚本,一般的站够用了,但要注意:如果数据库过大,或者系统设置不当,都可能导致自动备份失败,因此即使采用了自动备份,也要记得经常查看是否备份成功,以及备份的数据是否完整、可用。
只需要将下面的脚本内容保存为mysqlbackup.sh,并添加到crontab即可。如在ssh中输入:
crontab -e
输入:
00 00 * * * /home/website/mysqlbackup.sh
即为每天00:00自动运行备份脚本。
1、自动导出mysql备份,并上传到指定ftp
#!/bin/bash
#ftp设置
Host=FTP_IP
Username=FTP_user
Passwd=FTP_passwd
#备份mysql并导出到文件
mysqldump -u用户 -p密码 数据库名 > $(date +%Y%m%d)-数据库名.sql
#压缩备份文件
tar -zcvf $(date +%Y%m%d)mysql数据库名.tar.gz $(date +%Y%m%d)*
#上传到ftp
echo "open $Host
user $Username $Passwd
bin
cd /hzg/
prompt off
mput $(date
+%Y%m%d)mysql数据库名.tar.gz
printf "\n"
close
bye"|ftp -i -n
#删除旧的备份文件
rm -rf $(date +%Y%m%d)-数据库名.sql $(date +%Y%m%d)mysql数据库名.tar.gz
#rm -rf $(date +%Y%m%d)*
rm -rf $(date +%Y%m%d)*
2、自动备份mysql数据库,并发送到指定email
#备份并导出mysql数据库到文件
mysqldump -uroot -ppassword --databases db1 db2 db3 >
/home/website/backups/databackup.sql
#压缩备份文件
tar zcf /home/website/backups/databackup.sql.tar.gz
/home/website/backups/
#发送到指定邮箱
echo "主题:数据库备份" |
mutt -a /home/website/backups/mysqlbackup.sql.tar.gz -s "内容:数据库备份" www@gmail.com
#删除旧的备份文件
rm -r /home/website/backups/*
将-ppassword中的password换为自己的root密码,将db1 db2 db3换为你需要备份的数据库名。路径和邮箱等自己替换即可。
也可以用下面的命令直接导出mysql备份为压缩文件:
mysqldump -u用户 -p密码 数据库名 | gzip -c > $(date +%Y%m%d)-数据库名.sql.
linux系统中mysql自动备份脚本的更多相关文章
- Mysql 自动备份脚本
转自: Mysql 自动备份脚本2 - - ITeye技术网站http://kangh.iteye.com/blog/2309091 备份方案: 备份主机:192.168.10.11 数据库服务器:1 ...
- Linux 下的 mysql 自动备份
Linux 下实现自动备份,主要就是编写好执行备份的 shell script( *.sh )文件,设好权限(可读,可执行).然后利用 Linux 定时任务 crontab 来执行备份脚本就可以了.以 ...
- mysql自动备份脚本
linux系统mysql5.6版本实现自动备份步骤 1.sudo mysql --help | grep my.cnf 查找my.cnf文件2.在文件中添加如下行实现免输入密码[mysqldump]u ...
- python编写Mysql自动备份脚本
1、先写一个python脚本 vim /opt/mysql_dump.py #!/usr/bin/env python# -*- coding:utf-8 -*-import osimport tim ...
- ubuntu server 11.10 mysql 自动备份脚本
1.下载最新的备份脚本(AutoMySQLBackup) 点这里下载 2.修改脚本配置部分 vi /root/automysqlbackup-2.5.1-01.sh USERNAME=root PA ...
- windows下远程访问Linux系统中mysql
1,查询MySQL数据库是否允许远程ip访问,命令如下: sql语句: use mysql; select host, user from user; 查询结果为127.0.0.1或者localhos ...
- linux下mysql自动备份脚本
脚本放在 /home/user/mysql_backup.sh crontab # crontab -l # m h dom mon dow command 28 16 * * * /home/ ...
- Linux 下Mysql自动备份脚本
backdb.sh 文件 #!/bin/bash USER="root" PASSWORD="888888" DATABASE="mydb" ...
- linux系统下mySQL数据库 备份方法和脚本
数据库备份1.创建个备份存储目录mkdir /root/backup/2.以下内容写到dbbackup.sh #!/bin/bash cd /data/db_backup/mysqldump -uad ...
随机推荐
- CodeForces 392C Yet Another Number Sequence 矩阵快速幂
题意: \(F_n\)为斐波那契数列,\(F_1=1,F_2=2\). 给定一个\(k\),定义数列\(A_i=F_i \cdot i^k\). 求\(A_1+A_2+ \cdots + A_n\). ...
- 谋哥:搞APP,做得累的都不对!
最近谋哥(微信viyi88)我刚加入“秦王会”,思想收到猛烈地冲击,各位大佬的思维有时候会让我大脑短路,收获不少.同时,我也慢慢发现我一直平静的 心开始浮躁,我发现苗头不对,于是开始静下心来.静下心, ...
- 28、editText只输入英文字母和'-',用于授权码输入
InputFilter filter = new InputFilter() { @Override public CharSequence filter(CharSequence source, i ...
- 微信小程序开发 -- 设置屏幕亮度
wx.setScreenBrightness(OBJECT) 设置屏幕亮度. OBJECT参数说明: 参数 类型 必填 说明 value Number 是 屏幕亮度值,范围 0~1,0 最暗,1 最亮 ...
- TensorFlow学习笔记(6):TensorBoard之Embeddings
本文基于TensorFlow官网的How-Tos写成. TensorBoard是TensorFlow自带的一个可视化工具,Embeddings是其中的一个功能,用于在二维或三维空间对高维数据进行探索. ...
- HDU2013 蟠桃记【递推】
Problem Description 喜欢西游记的同学肯定都知道悟空偷吃蟠桃的故事,你们一定都觉得这猴子太闹腾了,其实你们是有所不知:悟空是在研究一个数学问题!什么问题?他研究的问题是蟠桃一共有多少 ...
- BZOJ3990 [SDOI2015]排序 【搜索】
题目 小A有一个1-2^N的排列A[1..2^N],他希望将A数组从小到大排序,小A可以执行的操作有N种,每种操作最多可以执行一次,对于所有的i(1<=i<=N),第i中操作为将序列从左到 ...
- 《快速开发》通过Maven创建WebService项目Hello World!
有多快? 整个过程3分钟.不用下载jar包,不用一步一步创建Web Project... 你需要的就是在Maven库里选一个archetype,然后一路Next~ 先看结果: 准备好了吗?我们起飞: ...
- java面试题之如何判断一个对象是否应该被回收
常用的有两种办法: 引用计数法:(无法解决对象循环引用的问题,导致对象无法被回收) 可达性分析:
- bzoj 2300 [HAOI2011]防线修建 set动态维护凸包
题目大意 动态删点,求凸包周长 分析 反过来变成动态加点 用set维护平衡树 具体是找到凸包上左右两点 拆开 就可以把左边当作顺时针求的一个凸包,右边当作逆时针求的一个凸包,像栈那样出set就好了 注 ...