- 浏览: 2538834 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (676)
- linux运维 (157)
- php (65)
- mysql (78)
- nginx (27)
- apche (18)
- framework (6)
- windows (9)
- IDE工具 (23)
- struts2 (7)
- java (13)
- 移动互联网 (14)
- memcache redis (23)
- shell基础/命令/语法 (37)
- shell (50)
- puppet (4)
- C (11)
- python (9)
- 产品经理 (27)
- Sphinx (4)
- svn (12)
- 设计构建 (12)
- 项目管理 (44)
- SEO (1)
- 网站架构 (26)
- 审时度势 (42)
- 网络 (14)
- 激发事业[书&视频] (81)
- 其它 (12)
- 摄影 (8)
- android (21)
最新评论
-
zhongmin2012:
原文的书在哪里
数据库水平切分的实现原理解析---分库,分表,主从,集群,负载均衡器 -
renzhengzhi:
你好,请问个问题,从master同步数据到slave的时候,s ...
数据库水平切分的实现原理解析---分库,分表,主从,集群,负载均衡器 -
ibc789:
你好,看了你的文章,我想请教个问题, 我在用 redis的时候 ...
redis 的两种持久化方式及原理 -
iijjll:
写得非常好
数据库水平切分的实现原理解析---分库,分表,主从,集群,负载均衡器 -
iijjll:
写得非常好
数据库水平切分的实现原理解析---分库,分表,主从,集群,负载均衡器
对任何一个已经上线的电子商务站点来说,数据备份都是必须的。无论版本更新还是服务器迁移,备份数据的重要性不言而喻。人工备份数据的方式不单耗费 大量时间和精力,还灰常不专业的说。于是,有了下面这段脚本的出现。参考了网上的很多教程,外加自己的测试,以下脚本经测试可用。 #!/bin/bash #Shell Command For Backup MySQL Database Everyday Automatically By Crontab #Author : Carlos Wong #Date : 2010-08-24 #配置参数 USER=root #数据库用户名" >用户名 PASSWORD=××××× #数据库用户密码 DATABASE=TIENIUZAI #数据库名称 WEBMASTER=tieniuzai@qq.com #管理员邮箱地址,用以发送备份失败消息提醒 BACKUP_DIR=/var/www/Data_Backup/topons/ #备份文件存储路径 LOGFILE=/var/www/Data_Backup/topons/data_backup.log #日记文件路径 DATE=`date ‘+%Y%m%d-%H%M’` #日期格式(作为文件名) DUMPFILE=$DATE.sql #备份文件名 ARCHIVE=$DATE.sql.tgz #压缩文件名 OPTIONS=”-u$USER -p$PASSWORD –opt –extended-insert=false –triggers=false -R –hex-blob –flush-logs –delete-master-logs -B $DATABASE” #mysqldump 参数 详情见帮助 mysqldump -help #判断备份文件存储目录是否存在,否则创建该目录 if [ ! -d $BACKUP_DIR ] ; then mkdir -p “$BACKUP_DIR” fi #开始备份之前,将备份信息头写入日记文件 echo ” ” >> $LOGFILE echo ” ” >> $LOGFILE echo “———————————————–” >> $LOGFILE echo “BACKUP DATE:” $(date +”%y-%m-%d %H:%M:%S”) >> $LOGFILE echo “———————————————– ” >> $LOGFILE #切换至备份目录 cd $BACKUP_DIR #使用mysqldump 命令备份制定数据库,并以格式化的时间戳命名备份文件 mysqldump $OPTIONS > $DUMPFILE #判断数据库备份是否成功 if [[ $? == 0 ]]; then #创建备份文件的压缩包 tar czvf $ARCHIVE $DUMPFILE >> $LOGFILE 2>&1 #输入备份成功的消息到日记文件 echo “[$ARCHIVE] Backup Successful!” >> $LOGFILE #删除原始备份文件,只需保 留数据库备份文件的压缩包即可 rm -f $DUMPFILE else echo “Database Backup Fail!” >> $LOGFILE #备份失败后向网站管理者发送邮件提醒,需要mailutils或者类似终端下发送邮件工具的支持 #mail -s “Database:$DATABASE Daily Backup Fail” $WEBMASTER fi #输出备份过程结束的提醒消息 echo “Backup Process Done” 使用: 将以上代码保存到: /usr/sbin/DataBackup (文件名随意,只要不跟系统原有的命令同名即可;代码可以放到任何地方,放在sbin目录下只是为了方便执行,sbin目录下的文件/目录可在终端直接调 用,类似于windows下PATH变量指定的目录) 为脚本添加可执行权限: sudo chmod +x /usr/sbin/DataBackup 执行脚本: sudo DataBackup 如果需要定时执行备份命令的,只需将下面这段代码放到crontab 文件(sudo vim /etc/crontab)中去就可以了: 01 3 * * * root /usr/sbin/DataBackup #它代表着将于每天3点执行DataBackup脚本 小注意一下下: linux 下的shell脚本定义变量的格式为: key=value ,注意他们两者之间的” = “前后不能出现空格,否则系统无法确认该变量。 用红色标注的那行,第一个类似单引号的字符”`”其实不是单引号,它的输入键在键盘ESC键下方。 这个脚本只适合用于一些小站点的备份,因为它是对数据库进行全部备份而不是增量备份,不适合大容量的数据库备份。 Update: 2010-08-24 : 由于服务器上的MySQL配置文件里 的socket项值为 “/tmp/mysql.sock”, 而mysqldump在链接mysql server的时候会去查找位于/var/lib/mysql/目录下的mysql.sock文件。如果没有则会报错: mysqldump: Got error: 2002: Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ 解决方法是:一是,修改mysql配置文件里的socket项的值为 ’/var/lib/mysql/mysql.sock’,不过这种方法需要重启mysql服务,很不厚道。 二是,为/tmp/mysql.sock创建一个软链接到/var/lib/mysql/mysql.sock: ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock
发表评论
-
设置sudo为不需要密码
2015-04-17 09:04 10510有时候我们只需要执 ... -
mysql表修复
2015-04-07 10:16 102861.1命令myisamchk(必须停掉mysql服务,或者所操 ... -
haproxy 安装配置和负载实例
2015-03-27 11:49 11531一、环境说明实验环境 OS CentOS5.4 192.1 ... -
/dev/mapper/VolGroup00-LogVol00 100% 如何处理
2015-03-03 10:51 8209服务器磁盘跑满了, 命令查看 如下 [root@lo ... -
Table_locks_immediate
2014-08-25 15:46 3062Table_locks_immediate表示立即释放表锁数 ... -
Tsar开源:淘宝内部大量使用的系统监控工具
2014-08-07 09:51 971Tsar是淘宝的一个用来收集服务器系统和应用信息的采集报告 ... -
mysql分区
2014-02-21 10:38 1847mysql自5.1开始支持分区 ... -
InnoDB 引擎独立表空间 innodb_file_per_table
2013-02-25 11:14 1309http://deeplyloving.iteye.com ... -
Linux运维常用命令 (转载)
2013-01-31 10:23 25241 删除0字节文件find-type f - ... -
[汇总]shell笔试
2013-01-24 17:32 3363http://president.blog.51cto.co ... -
linux恢复 rm -rf 删除的文件:extundelete
2013-01-24 15:47 8910http://blog.csdn.net/pang6013 ... -
网站排障分析常用的命令
2013-01-21 18:17 1397------------------------------- ... -
mysql监测工具tuning-primer.sh
2013-01-21 17:57 2654【转】http://www.dbasky.net ... -
mysql主从日志的定期清理
2013-01-21 16:24 1153[转]http://wangwei007.blog.51 ... -
迁移vmware服务器后Device eth0 does not seem to be present
2013-01-21 10:58 2249用VMware 安装 linux 6.0 ... -
[转]Mysql报错:Result consisted of more than one row
2013-01-09 16:25 15862Error Code : 1172 Result consi ... -
根据bin log 分析管理员被莫名删除问题
2013-01-04 17:04 1161============== 根据bin log 分析管理 ... -
检测 mysql 的sleep进程数
2013-01-04 14:13 1661#!/bin/sh 注:这个脚 ... -
mysql中select * for update锁表的问题
2013-01-04 14:07 2508先前介绍过SELECT ... FOR UPDATE的用法 ... -
LoadRunner如何监控Linux系统资源 : rpc.rstatd
2012-12-17 14:49 10294一 简述:LoadRunner监控Linux资源时弹出如下错误 ...
相关推荐
MySQL数据库的自动定时备份是数据库管理中的重要环节,它确保了数据的安全性和可恢复性,尤其是在发生意外情况如系统故障、硬件损坏或人为错误时。本教程将详细讲解如何设置MySQL数据库的自动定时备份,包括步骤、所...
通过上述步骤,我们可以构建一个完善的数据库定时备份系统,确保在数据丢失或系统故障时,能够快速恢复到某个已知的良好状态。同时,结合适当的版本控制和远程存储,可以进一步提高数据安全性。
总结来说,通过编写shell脚本,我们可以实现MySQL数据库的自动化备份,包括全量备份和(借助第三方工具的)增量备份。创建并管理备份目录,结合cron job实现定时任务,确保数据的安全性和可靠性。
### Linux下定时备份MySQL数据库的Shell脚本知识点详解 #### 一、背景介绍与重要性 对于每一个在线网站或服务而言,数据备份是一项至关重要的任务。无论是为了应对未来的版本升级,还是服务器迁移的需求,定期备份...
防止误删服务器数据库 ,使用Shell脚本备份数据库: ### 1、需求分析: 1)每天凌晨2:10备份数据库atguiguDB到/data/backup/db 2)备份开始和备份结束能够给出相应的提示信息 3)备份后的文件要求以备份时间为...
mysql数据库定期自动备份的shell脚本。如定期每三天自动备份数据库,并只保存20份备份文件,多余的删除。
今天这个备份分二个版本一个是linux上直接安装的mysql,另一种是docker上安装的mysql。基本操作都一样只是备份sql语句...可以选择设置需要备份的库,自动备份压缩,自动删除 7 天前的备份,需要使用 crontab 定时执行。
shell脚本在这里的作用是管理和控制MySQL数据库的备份操作,而MySQL数据库的版本5.7.8及以上意味着它支持高级特性,如InnoDB存储引擎的优化、JSON字段类型以及更强大的查询能力。 总之,利用shell脚本进行多线程...
mysql数据库备份shell脚本,每天备份,只保留30天的备份数据
下面详细地介绍如何利用Shell脚本来实现MySQL的定时备份、删除旧备份以及恢复数据库的功能。 ### MySQL备份 为了备份MySQL数据库,我们通常使用`mysqldump`工具,它是一个非常有效的命令行工具,专门用于导出MySQL...
本篇文章将详细介绍如何实现这一目标,将远程服务器的MySQL数据库自动定时备份并存储在本地。 首先,我们需要了解MySQL的数据备份类型。常见的备份方式有全量备份和增量/差异备份。全量备份是备份所有数据库或选定...
MySQL数据库在Linux环境下的定时备份是确保数据安全和业务连续性的重要环节。下面将详细介绍如何通过自定义的Shell脚本和Linux的定时任务(Cron)来实现这一目标。 首先,确保你的Linux服务器上已经安装了MySQL服务...
linux系统通过shell脚本,备份mysql数据库,并通过定时任务的配置,每天在设定的时间内执行备份计划
本文将详细介绍如何利用shell脚本来创建MySQL的定时备份,并结合提供的"mysqlbackup.sh"脚本和"添加定时任务.txt"文件,帮助你实现这一功能。 首先,我们来看"mysqlbackup.sh"这个shell脚本。这个脚本通常包含以下...
本文将详细介绍如何通过编写Shell脚本并结合Cron定时任务来实现MySQL数据库的每日自动备份。 #### 一、准备阶段 在开始之前,请确保您的Linux系统已经安装了MySQL服务器以及相关的命令行工具。如果尚未安装,可以...
在Linux环境中,使用shell脚本来实现每天定时备份MySQL数据库是一种常见的自动化操作,它可以帮助系统管理员高效地维护数据库的备份策略,确保数据的安全性。以下将详细介绍如何通过Linux shell实现这个功能。 首先...
2. **数据库定时备份**:数据库备份是防止数据丢失的重要措施。shell脚本可以结合数据库的备份工具(如mysqldump for MySQL,expdp/impdp for Oracle)进行定时备份。通常,备份脚本会包含以下步骤: - 连接到...
总的来说,这个`DB_backup.sh`脚本结合Linux的`crontab`服务,提供了一个简单但实用的MySQL数据库定时备份解决方案。通过调整脚本,可以根据实际需求进行定制,比如备份频率、备份保留天数、备份类型(全量或增量)...
在这个场景下,shell脚本用于自动化备份MySQL数据库,节省手动操作的时间和精力。 MySQL是世界上最流行的开源关系型数据库管理系统,5.7.8版本是在其发展历史中一个重要的里程碑。在该版本之前,数据库的备份主要...
这篇文档将深入解析标题"shell脚本可配置备份mysql5.7.8以前数据库异常sendEmail25发邮件.rar"中的关键知识点,包括shell脚本、MySQL数据库备份、异常处理以及sendEmail服务。 首先,我们要了解shell脚本。Shell...