加入收藏 | 设为首页 | 会员中心 | 我要投稿 92站长网 (https://www.92zz.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

Mysql怎么备份到Windows共享路径中

发布时间:2022-01-20 13:53:09 所属栏目:MySql教程 来源:互联网
导读:本篇内容介绍了Mysql怎么备份到Windows共享路径中的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! 下面简单的实现了一下如何将MySQL的数据库备份到一
       本篇内容介绍了“Mysql怎么备份到Windows共享路径中”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
 
       下面简单的实现了一下如何将MySQL的数据库备份到一个远程Windows服务器当中。
 
首先需要在Windows(IP:192.168.1.5)上面创建一个共享路径:在D盘下面创建一个目录名为HugoShare,在HugoShare目录的属性中点击Share选项卡,在下拉框中找到Everyone,然后点击Add添加到共享用户组中,在权限中选择Read/Write,再Share一下。在Securiy选项卡中找到Everyone这个用户,看看他对这个目录的权限是不是Full,如果不是编辑一下,为了方便起见,先设置成Full。这个时候,你的192.168.1.5HugoShare应该是可以被任何人访问的。
在MySQL服务端中测试一下上面的共享目录是否能挂载首先创建一个目录,mkdir /mnt/HugoShare/,然后安装cifs工具,apt-get install cifs-utils 安装完成输入下面命令mount.cifs //192.168.1.5/HugoShare /mnt/HugoShare -o user="hugo",pass="woaini"。如果挂载成功会返回0,echo $?就会显示0。也可以mount -l | grep "/mnt/HugoShare"看一下是不是真的挂载上了。
貌似准备工作已经完成,接下来就写一个脚本
#!/bin/bash
 
# mysql数据库备份脚本
 
# 数据库配置
 
USERNAME=root
 
PASSWORD="woaini"
 
DATABASE="hugo"
 
HOSTNAME="localhost"
 
# 备份选项配置
 
BACKUP_SERVER="//192.168.1.5/HugoShare/"
 
BACKUP_SERVER_OPTIONS="user=zed,pass=woaini"
 
BACKUP_DIR=/mnt/HugoShare
 
LOGFILE=$BACKUP_DIR/backup.log
 
DATE=`date '+%Y%m%d-%H%M'`
 
DUMPFILE=$DATE.bak.sql
 
ARCHIVE=$DATE.bak.sql.tgz
 
OPTIONS="-h$HOSTNAME -u$USERNAME -p$PASSWORD $DATABASE"
 
# 检查备份目录是否存在
 
if [ ! -d $BACKUP_DIR ] ;
 
then
 
  mkdir -p $BACKUP_DIR
 
fi
 
# 检查windows目录是否挂载
 
mount -l | grep $BACKUP_DIR > /dev/null 2>&1
 
if [ $? == 1 ]
 
then
 
  mount.cifs $BACKUP_SERVER $BACKUP_DIR -o $BACKUP_SERVER_OPTIONS
 
  echo " ==================" >> $LOGFILE
 
  echo "Windows netshare mounted:$BACKUP_SERVER" >> $LOGFILE
 
fi
 
# 日志功能
 
echo " " >> $LOGFILE    
 
echo "====================" >> $LOGFILE  
 
echo "BACKUP DATE:" $(date +"%y-%m-%d %H:%M:%S") >> $LOGFILE  
 
echo "==================== " >> $LOGFILE  
 
# 备份并归档
 
cd $BACKUP_DIR
 
mysqldump $OPTIONS > $DUMPFILE
 
if [ $? == 0 ] ;
 
then
 
  tar czvf $ARCHIVE $DUMPFILE >> $LOGFILE 2>&1
 
  echo "[$ARCHIVE] backup successful!" >> $LOGFILE
 
  rm -f $DUMPFILE
 
else
 
  echo "Backup failed " >> $LOGFILE
 
fi
 
脚本添加执行权限chmod 777 mysql_dump.sh 看看效果。
 
可以改进的地方:
 
接下来的工作就是设置Windows共享目录的安全,指定用户访问。其次就是修改一下脚本,指定备份的整个数据库还是备份单个表,可以在crond中添加计划任务,并且设置日志的轮询工作。更好的方式是设置日志转发邮件的功能。

(编辑:92站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读