MySQL在Linux下如何实现定时备份!!!
点击上方"Java学习之道",选择"关注"公众号
每天10:24,干货准时送达!
作者:testcs_dn(微wx笑)
地址:https://blog.csdn.net
/testcs_dn/article/details/48829785
0、概述
备份是容灾的基础,是指为防止系统出现操作失误或系统故障导致数据丢失,而将全部或部分数据集合从应用主机的硬盘或阵列复制到其它的存储介质的过程。而对于一些网站、系统来说,数据库就是一切,所以做好数据库的备份是至关重要的!
1、备份是什么?
2、为什么要备份
3、容灾方案建设
0、存储介质
光盘
磁带
硬盘
磁盘阵列
DAS:直接附加存储
NAS:网络附加存储
SAN:存储区域网络
云存储
这里主要以本地磁盘为存储介质讲一下计划任务的添加使用,基本的备份脚本,其它存储介质只是介质的访问方式可能不大一样。
1、查看磁盘空间情况:
既然是定时备份,就要选择一个空间充足的磁盘空间,避免出现因空间不足导致备份失败,数据丢失的恶果!
存储到当前磁盘这是最简单,却是最不推荐的;服务器有多块硬盘,最好是把备份存放到另一块硬盘上;有条件就选择更好更安全的存储介质;
df -hFilesystem
2、创建备份目录:
上面我们使用命令看出/home下空间比较充足,所以可以考虑在/home保存备份文件;
cd /homemkdir backupcd backup
3、创建备份Shell脚本:
注意把以下命令中的DatabaseName换为实际的数据库名称;
当然,你也可以使用其实的命名规则!
vi bkDatabaseName.sh
输入/粘贴以下内容:
#!/bin/bashmysqldump -uusername -ppassword DatabaseName > /home/backup/DatabaseName_$(date +%Y%m%d_%H%M%S).sql
对备份进行压缩:
#!/bin/bashmysqldump -uusername -ppassword DatabaseName | gzip > /home/backup/DatabaseName_$(date +%Y%m%d_%H%M%S).sql.gz
注意:
1、把 username 替换为实际的用户名;
2、把 password 替换为实际的密码;
3、把 DatabaseName 替换为实际的数据库名;
4、添加可执行权限:
chmod u+x bkDatabaseName.sh
添加可执行权限之后先执行一下,看看脚本有没有错误,能不能正常使用;
./bkDatabaseName.sh
5、添加计划任务
检测或安装 crontab
确认crontab是否安装:
执行 crontab 命令如果报 command not found,就表明没有安装
如时没有安装 crontab,需要先安装它。
添加计划任务
执行命令:
crontab -e
这时就像使用vi编辑器一样,可以对计划任务进行编辑。
输入以下内容并保存:
*/1 * * * * /home/backup/bkDatabaseName.sh
具体是什么意思呢?
意思是每一分钟执行一次shell脚本“/home/backup/bkDatabaseName.sh”。
6、测试任务是否执行
很简单,我们就执行几次“ls”命令,看看一分钟过后文件有没有被创建就可以了!
如果任务执行失败了,可以通过以下命令查看任务日志:
# tail -f /var/log/cron
输出类似如下:
Sep 30 14:01:01 bogon run-parts(/etc/cron.hourly)[2503]: starting 0anacronSep 30 14:01:01 bogon run-parts(/etc/cron.hourly)[2512]: finished 0anacronSep 30 15:01:01 bogon CROND[3092]: (root) CMD (run-parts /etc/cron.hourly)Sep 30 15:01:01 bogon run-parts(/etc/cron.hourly)[3092]: starting 0anacronSep 30 15:01:02 bogon run-parts(/etc/cron.hourly)[3101]: finished 0anacronSep 30 15:50:44 bogon crontab[3598]: (root) BEGIN EDIT (root)Sep 30 16:01:01 bogon CROND[3705]: (root) CMD (run-parts /etc/cron.hourly)Sep 30 16:01:01 bogon run-parts(/etc/cron.hourly)[3705]: starting 0anacronSep 30 16:01:01 bogon run-parts(/etc/cron.hourly)[3714]: finished 0anacronSep 30 16:15:29 bogon crontab[3598]: (root) END EDIT (root)
(完)
- | 更多精彩文章 -
常见 8种SQL 避坑指南
玩转springboot2.x之统一异常处理篇
一次心惊肉跳的服务器误删文件的恢复过程
[面试现场]如何编程获得最多的年终红包奖?
-END-
喜欢本文的朋友们,欢迎扫码关注订阅号Java学习之道,收看更多精彩内容!
一 起努力吧!
你也可以顺手点个在看
MySQL在Linux下如何实现定时备份!!!相关推荐
- 如何在linux下写脚本定时备份mysql数据库
我们在工作中可以这么做减少数据丢失概率 1. 先在某个文件夹下创建一个脚本,这里命名为back_up_database.sh,在/mnt/data_dump/这目录下 #!/bin/bash base ...
- (技能篇)Mysql在linux下的全量热备份
相关命令: #创建备份目录 mkdir -p /mysqlbackup #进入创建的备份目录中 cd /mysqlbackup #如果mysql运行在mysql用户和用户组下面,root表示用户,my ...
- linux设置定时备份任务,Linux下Oracle设置定时任务备份数据库的教程
1.查看数据库的字符集 数据库的字符集必须和linux下设置的环境变量一致,不然会有乱码. 以下两个sql语句都可以查到: select * from nls_database_parameters ...
- mysql在linux下的安装
mysql在linux下的安装 安装环境:系统是 centos6.5 1.下载 下载地址:http://dev.mysql.com/downloads/mysql/5.6.html#downloads ...
- oracle定时任务可以备份么,Linux下Oracle设置定时任务备份数据库的教程
1.查看数据库的字符集 数据库的字符集必须和Linux下设置的环境变量一致,不然会有乱码. 以下两个sql语句都可以查到: select * from nls_database_parameters ...
- MySQL——在Linux下安装和卸载MySQL
MySQL--在Linux下安装和卸载MySQL 摘要:本文主要学习了如何在Linux系统中安装和卸载MySQL数据库. 查看有没有安装过MySQL 使用命令查看有没有安装过: 1 [root@loc ...
- mysql在linux下的安装_mysql在linux下的安装
3.添加用户组和用户 #添加用户组 groupadd mysql #添加用户mysql 到用户组mysql useradd -g mysql mysql 4.安装 cd /usr/local/mysq ...
- 【MySql】linux下,设置mysql表名忽略大小写
[障碍再现] 状况描述01: 在LINUX下调一个程序经常报出找不到表,但是我明明是建了表的, 测试的时候,遇到一些问题,从Windows平台访问虚拟机中的Web应用,经常报出找不到表,但自己明明在数 ...
- linux 安装 mysql off,linux下安装mysql
linux 下卸载和安装 mysql linux 环境 CentOS 6.4 安装包:Community Server下载地址:http://www.mysql.com/downloads/mysql ...
最新文章
- java knn kd树_KNN算法之KD树(K-dimension Tree)实现 K近邻查询
- Hadoop生态hive(五)Hive QL数据库
- 我两个月来对Quarkus的了解
- 约数研究问题的算法优化和推导证明(洛谷P1403题题解,Java语言描述,含Latex公式编辑知识)
- 我的docker随笔3:实现加速器,加快拉取镜像速度
- Spring 基础 编写基本的控制器(系列号3)
- pcm转换在线工具_律师必备的PDF在线转换工具,推荐5款,全免费!
- GridView控件RowDataBound事件中获取列字段的几种途径
- Three.js案例分析系列1--webgl_animation_cloth 草坪上漂浮的白布
- 大数据经典书籍良心推荐
- 英语动名词可以做什么句子成分
- winform datagridview 没有出现垂直滚动条 上下_木门安装中出现问题如何解决?
- 表格自适应 css,css 表格自适应一些方法总结
- 手机间高速传输---微传
- 基于jquery的轮播图组件开发-1
- Python去水印操作
- 去别人家做客脚臭尴尬,但是现在用了爱锝就好了 !
- ant+jmeter接口测试
- 创建Maven父子项目及发布到tomat的完整过程
- 【H5微信授权】简单实现H5页面微信授权功能,微信开发者工具报错 系统错误,错误码-1,undefined解决办法【详细】