- 浏览: 2519461 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (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 10478有时候我们只需要执 ... -
mysql表修复
2015-04-07 10:16 102551.1命令myisamchk(必须停掉mysql服务,或者所操 ... -
haproxy 安装配置和负载实例
2015-03-27 11:49 11507一、环境说明实验环境 OS CentOS5.4 192.1 ... -
/dev/mapper/VolGroup00-LogVol00 100% 如何处理
2015-03-03 10:51 8123服务器磁盘跑满了, 命令查看 如下 [root@lo ... -
Table_locks_immediate
2014-08-25 15:46 2982Table_locks_immediate表示立即释放表锁数 ... -
Tsar开源:淘宝内部大量使用的系统监控工具
2014-08-07 09:51 942Tsar是淘宝的一个用来收集服务器系统和应用信息的采集报告 ... -
mysql分区
2014-02-21 10:38 1817mysql自5.1开始支持分区 ... -
InnoDB 引擎独立表空间 innodb_file_per_table
2013-02-25 11:14 1279http://deeplyloving.iteye.com ... -
Linux运维常用命令 (转载)
2013-01-31 10:23 24971 删除0字节文件find-type f - ... -
[汇总]shell笔试
2013-01-24 17:32 3336http://president.blog.51cto.co ... -
linux恢复 rm -rf 删除的文件:extundelete
2013-01-24 15:47 8876http://blog.csdn.net/pang6013 ... -
网站排障分析常用的命令
2013-01-21 18:17 1366------------------------------- ... -
mysql监测工具tuning-primer.sh
2013-01-21 17:57 2627【转】http://www.dbasky.net ... -
mysql主从日志的定期清理
2013-01-21 16:24 1133[转]http://wangwei007.blog.51 ... -
迁移vmware服务器后Device eth0 does not seem to be present
2013-01-21 10:58 2222用VMware 安装 linux 6.0 ... -
[转]Mysql报错:Result consisted of more than one row
2013-01-09 16:25 15812Error Code : 1172 Result consi ... -
根据bin log 分析管理员被莫名删除问题
2013-01-04 17:04 1131============== 根据bin log 分析管理 ... -
检测 mysql 的sleep进程数
2013-01-04 14:13 1611#!/bin/sh 注:这个脚 ... -
mysql中select * for update锁表的问题
2013-01-04 14:07 2488先前介绍过SELECT ... FOR UPDATE的用法 ... -
LoadRunner如何监控Linux系统资源 : rpc.rstatd
2012-12-17 14:49 10241一 简述:LoadRunner监控Linux资源时弹出如下错误 ...
相关推荐
防止误删服务器数据库 ,使用Shell脚本备份数据库: ### 1、需求分析: 1)每天凌晨2:10备份数据库atguiguDB到/data/backup/db 2)备份开始和备份结束能够给出相应的提示信息 3)备份后的文件要求以备份时间为...
mysql数据库定期自动备份的shell脚本。如定期每三天自动备份数据库,并只保存20份备份文件,多余的删除。
今天这个备份分二个版本一个是linux上直接安装的mysql,另一种是docker上安装的mysql。基本操作都一样只是备份sql语句...可以选择设置需要备份的库,自动备份压缩,自动删除 7 天前的备份,需要使用 crontab 定时执行。
Linux下定时备份MySQL数据库的Shell脚本.pdf
Mysql备份,shell脚本运行代码,创建各自不同的目录文件
linux系统通过shell脚本,备份mysql数据库,并通过定时任务的配置,每天在设定的时间内执行备份计划
Python定时备份mysql数据库,比shell写的要简洁的多,以后扩展也会很容易,并且只保留最新的几个数据库备份文件
主要介绍了shell脚本实现mysql定时备份、删除、恢复功能,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
同样的备份脚本也可用于生产环境MySQL数据库定时备份。 环境:CentOS 7.5 / MySQL 5.7 #!/bin/sh # 数据库账号信息 DB_USER=root DB_PWD=root DB_HOST=127.0.0.1 DB_PORT=3306 # MYSQL所在目录 MYSQL_DIR=/home/...
mysql数据库每天凌晨3点备份数据库的脚本,带具体命令参数注释,稍微修改即可使用。需配合linux的定时任务命令
每天定时备份mysql数据库任务,删除指定天数前的数据,保留指定天的数据; 需求: 1,每天4点备份mysql数据; 2,为节省空间,删除超过3个月的所有备份数据; 3,删除超过7天的备份数据,保留3个月里的 10...
linux中mysql定时备份shell脚本,生产环境中使用过,只需要脚本中相应的ip地址、端口、账号和密码就可以使用
下面这段Linux的Shell脚本用于每日自动备份MySQL数据库,可通过Linux的crontab每天定时执行
两个linux下mysql数据库备份脚本,带压缩功能,定时删除,附带脚本说明,运维必知的,自己上传防止丢失,经典脚本,因为百度有很多表述不清,所以自己总结了这些脚本,作为个人知识库,分享给所有人
1. 创建shell脚本 vim backupdb.sh 创建脚本内容如下: #!/bin/sh db_user="root" ... /usr/bin/mysqldump :mysql数据库安装目录下的mysqldump备份工具路径 dbname :需要备份的数据库名字 /home/
Linux 服务器上的程序每天都在更新 MySQL 数据库,于是就想起写一个 shell 脚本,结合 crontab,定时备份数据库。其实非常简单,主要就是使用 MySQL 自带的 mysqldump 命令。 #!/bin/bash # Shell script to ...
1、备份语句 代码如下: # /usr/local/mysql/bin/mysqldump -utest -ptest test –socket=/tmp/mysql.3306.sock > /usr/local/mysql_backup/3306/test-`date +%Y%m%d`.sql.gz 语句说明: /usr/local/mysql/...
shell脚本 Linux定时任务crontab 数据备份dump 数据库都有一个导出数据库内数据和结构的命令,就是备份。 将备份的数据还原会将原来的数据中的表删了重建,再插入备份中的数据,这是恢复。 这一点需要注意,如果...