文档章节

linux 上做mysql备份数据的还原

yeqiang2015
 yeqiang2015
发布于 2017/12/22 10:35
字数 296
阅读 4
收藏 0


#数据库还原
echo $1 
echo $2 
echo $3

#!/bin/bash
# MYSQLDBUSERNAME是MySQL数据库的用户名,可自定义
MYSQLDBUSERNAME=$1
# MYSQLDBPASSWORD是MySQL数据库的密码,可自定义
MYSQLDBPASSWORD=$2
# MYSQBASEDIR是MySQL数据库的安装目录,--prefix=$MYSQBASEDIR,可自定义
MYSQBASEDIR=/usr/local/mysql
# MYSQL是mysql命令的绝对路径,可自定义
MYSQL=$MYSQBASEDIR/bin/mysql
# MYSQLDUMP是mysqldump命令的绝对路径,可自定义
MYSQLDUMP=$MYSQBASEDIR/bin/mysqldump


# BACKDIR是数据库备份的存放地址,可以自定义修改成远程地址
BACKDIR=/home/backup/mysql
# 恢复数据选择的目录
 
TODAY=$3

echo $TODAY
RECOVERYDIR=$BACKDIR/$TODAY


# 获取MySQL中有备份目录下的备份文件
DBLIST_TMP=`ls -p $RECOVERYDIR`

#获取目录下的所有文件名称,保存到一个变量中去
DBLIST=($(echo $DBLIST_TMP))

#echo "集合内中元素为: ${DBLIST[@]}"
# 从数据库列表中循环取出数据库名称,执行备份操作
for recoveryName in ${DBLIST[@]}

    do 
    
    echo $RECOVERYDIR/$recoveryName
    
 gunzip < $RECOVERYDIR/$recoveryName | mysql --user=${MYSQLDBUSERNAME}

--password=${MYSQLDBPASSWORD} 

    
    # 检查执行结果,如果错误代码为0则输出成功,否则输出失败
    [ $? -eq 0 ] && echo "${recoveryName} has been recoveried successful"

                              || echo "${recoveryName} has been recoveried failed"
    # 等待3s,可自定义
    /bin/sleep 3
done

© 著作权归作者所有

yeqiang2015
粉丝 2
博文 21
码字总数 7740
作品 0
丰台
后端工程师
私信 提问
删库跑路?这篇文章教你如何使用xtraback备份MySQL数据库

一、mysqldump备份方式是采用逻辑备份。最大的缺陷就是备份和恢复的速度都慢,对于一个50G的数据库而言,这个速度还是可以接受的,但是如果数据库非常大,那在使用mysqdump备份就不是太合适了...

dragon_tech
2018/10/25
21
0
MySQL备份工具之mysqlbinlog

前言 增量备份 是指在一次全备份或上一次增量备份后,以后每次的备份只需备份与前一次相比增加或者被修改的文件。这就意味着,第一次增量备份的对象是进行全备后所产生的增加和修改的文件;第...

IT--小哥
2016/12/19
153
0
MySQL数据库备份的10个教程

MySQL 是用于交互式网站开发的最为知名的开源数据库系统。如果你使用的 MySQL 数据库,你应当经常有规律地备份数据,以防数据丢失(译注:不管用什么类型的数据都得定期备份)。这里有10个自...

Neo_
2012/03/27
144
0
MySQL之备份还原,主从复制,主主复制。

数据库作为我们的日常工作中不可缺少的部分,那它内部数据的重要性显而易见,所以数据安全至关重要。确保数据的安全,我们就必须做好数据备份。简单说几个MySQL常用的备份工具以及如何利用这...

chinahaike
2014/07/01
0
0
mysql备份还原(视图、存储过程)

mysql备份还原(视图、存储过程) 最近在工作的时候,要将原来在本机开发的 MySQL存储过程迁往另一Linux操作系统下的MySQL数据库,因为表结构等已经在目标数据库中存在了,不想直接拷贝数据库...

kevin89
2012/09/10
794
0

没有更多内容

加载失败,请刷新页面

加载更多

聊聊Tomcat中的连接器(Connector)

上期回顾 上一篇文章《Tomcat在SpringBoot中是如何启动的》从main方法启动说起,窥探了SpringBoot是如何启动Tomcat的,在分析Tomcat中我们重点提到了,Tomcat主要包括2个组件,连接器(Conne...

木木匠
41分钟前
3
0
OSChina 周一乱弹 —— 熟悉的味道,难道这就是恋爱的感觉

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @xiaoshiyue :好久没分享歌了分享张碧晨的单曲《今后我与自己流浪》 《今后我与自己流浪》- 张碧晨 手机党少年们想听歌,请使劲儿戳(这里)...

小小编辑
今天
1K
20
SpringBoot中 集成 redisTemplate 对 Redis 的操作(二)

SpringBoot中 集成 redisTemplate 对 Redis 的操作(二) List 类型的操作 1、 向列表左侧添加数据 Long leftPush = redisTemplate.opsForList().leftPush("name", name); 2、 向列表右......

TcWong
今天
28
0
排序––快速排序(二)

根据排序––快速排序(一)的描述,现准备写一个快速排序的主体框架: 1、首先需要设置一个枢轴元素即setPivot(int i); 2、然后需要与枢轴元素进行比较即int comparePivot(int j); 3、最后...

FAT_mt
昨天
4
0
mysql概览

学习知识,首先要有一个总体的认识。以下为mysql概览 1-架构图 2-Detail csdn |简书 | 头条 | SegmentFault 思否 | 掘金 | 开源中国 |

程序员深夜写bug
昨天
12
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部