mysql数据库上传ftp服务器中_备份部分mysql表并上传至指定ftp服务器目录中
防偽碼:忘情公子著
前幾天領(lǐng)導(dǎo)安排了一個(gè)任務(wù),讓寫一個(gè)腳本備份某mysql數(shù)據(jù)庫中的部分表,并要將備份好的文件上傳至某ftp服務(wù)器中,于是就有了以下的腳本
#!/bin/bash
#Filename:mysqldump.sh
#Function:backup?a?part?of?tables?from?mysql?databases?then?package?it?and?put?it?to?ftp?server
#Author:Forgotten?Love
#Date:2016-12-15
basedir=/root/backup
curdate=$(/bin/date?+%Y%m%d)
FTPIP=192.168.7.500
FULLNAME=${basedir}/mysqldump_${curdate}.tar.gz
DESTDIR=/OPS/backup
local_filename=$(/bin/basename?$FULLNAME)
DESTFILE=${DESTDIR}/$local_filename
ftpput(){
ftp?-i?-n?<
open?$FTPIP
user?username?password
bin
Passive
cd?$DESTDIR
put?$FULLNAME?$DESTFILE
quit
EOF
}
#put?$FULLNAME?$DESTFILE
#backup?all?tables
echo?"##################################backuping?tables#####################################"
for?tablename?in?bond?institution;do
mysqldump?-uroot?-pgamma23$?ss_product?$tablename?>?${basedir}/${tablename}_$curdate
done
#backup?a?part?of?tables
mysqldump?-uroot?-pgamma23$?ss_product?qb_bond_deal?-w?"create_time"?>?${basedir}/qb_bond_deal_$curdate
echo?"##################################packaging?file#######################################"
cd?$basedir
/bin/tar?zcf?mysqldump_${curdate}.tar.gz?[biq]*_$curdate
echo?"##################################putting?file#########################################"
if?[?-f?mysqldump_${curdate}.tar.gz?];then
ftpput?&>/dev/null
fi
echo?"##################################??finished??#########################################"
本腳本適用于redhat系列操作系統(tǒng),用時(shí)需要更改相應(yīng)的ftp服務(wù)器地址、ftp用戶名、ftp用戶密碼,以及相應(yīng)的備份目錄和文件要上傳到ftp的哪個(gè)目錄中等信息。另外使用時(shí)需要確保腳本中的ftp、mysqldump等命令在系統(tǒng)中已存在方可執(zhí)行本腳本,否則將會報(bào)錯(cuò)。
總結(jié)
以上是生活随笔為你收集整理的mysql数据库上传ftp服务器中_备份部分mysql表并上传至指定ftp服务器目录中的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql定时器每月执行一次_MySQL
- 下一篇: mysql开启perform sch_M