MySQL使用dbdump實現(xiàn)傳輸數據铸史,并更換默認存儲目錄

以下備份腳本可一鍵導出MySQL數據庫數據盒刚,操作步驟如下(使用的是MySQL 5.7.21版本):

1、將腳本保存至~/bin/dbdump.sh

2倒庵、在Linux ~/.profile或者.bash_profile用戶環(huán)境初始化文件中增加如下內容(環(huán)境變量內容視情況而定)

附:導出腳本如下褒墨,請復制并保存至~/bin/dbdump.sh

#!/usr/bin/env bash

### file name:dbdump.sh,save?to ~/bin,and add $HOME/bin PATH to ~/.bash_profile or ~/.profile

### usage:?dbdump.sh?all or?1:with data,dbdump.sh?none or?2:without data

####################################################################

## add these environment parameters to ~/.bash_profile or ~/.profile

# export ENV=數據庫

# export db_host=數據庫地址

# export db_port=數據庫端口

# export db_user=數據庫用戶名

# export db_schema= 數據庫用戶名

# export BACKUP_PATH=/data/docker/container/mysql/backup

# export PATH=$HOME/bin:$PATH

####################################################################


date=`date?"+%Y%m%d"`

error_log=${ENV}_dbdump_error.log


mkdir -p $BACKUP_PATH

cd $BACKUP_PATH


exec_dump() {

????echo

????echo?"-- ${ENV} `date +%F\ %T` Database ${db_schema} dump to ${dump_file} start ..."

????if?[ -f ${dump_file} ]; then

????????rm -f ${dump_file}

????fi


????if?[?"v${no_data}"?==?"v"?]; then

????????echo?"mysqldump --add-drop-table --set-gtid-purged=OFF -h ${db_host} -u ${db_user} -P ${db_port} -p -R ${db_schema} 2> ${error_log} | gzip > ${dump_file}"

????????mysqldump --add-drop-table --set-gtid-purged=OFF -h ${db_host} -u ${db_user} -P ${db_port} -p -R ${db_schema}?2> ${error_log} | gzip > ${dump_file}

????else

????????echo?"mysqldump ${no_data} --add-drop-table --set-gtid-purged=OFF -h ${db_host} -u ${db_user} -P ${db_port} -p -R ${db_schema} 2> ${error_log} | sed 's/AUTO_INCREMENT=[0-9]*\s*//g' | gzip > ${dump_file}"

????????mysqldump ${no_data} --add-drop-table --set-gtid-purged=OFF -h ${db_host} -u ${db_user} -P ${db_port} -p -R ${db_schema}?2> ${error_log} | sed?'s/AUTO_INCREMENT=[0-9]*\s*//g'?| gzip > ${dump_file}

????fi


????if?[ -s ${error_log} ] ; then

????????rm -f ${dump_file}

????????cat ${error_log}

????????echo

????????echo?"-- ${ENV} `date +%F\ %T` Database ${db_schema} dump error."

????????exit?1

????else

????????rm -f ${link_file}

????????ln -s ${dump_file} ${link_file}

????????echo

????????echo?"-- ${ENV} `date +%F\ %T` Database ${db_schema} dump to ${dump_file} finished ."

????fi

}


exec_dump_without_data() {

????no_data='--no-data'

????exec_dump

}


if?[ x$1?!= x ]; then

????dump_type=$1

else


????read -p "

????Which dump type?do?you want?


????1> all (with data)

????2> none structure only (no data)


????Input dump type: [1|2] > " dump_type


fi


case?${dump_type} in


????1|all)

????????link_file=${db_schema}_dump_with_data.sql.gz

????????dump_file=${date}_${link_file}

????????exec_dump

????;;

????2|none)

????????link_file=${db_schema}_dump_without_data.sql.gz

????????dump_file=${date}_${link_file}

????????exec_dump_without_data

????;;

????*)

????????echo?"dump type error, nothing going to do."

????????exit?1

????;;


esac

執(zhí)行導出操作:

#導出數據庫全部數據

dbdump.sh?all

dbdump.sh?1

#導出數據結構(不包含數據)

dbdump.sh?none

dbdump.sh?2

輸入密碼后數據庫備份文件將導出至BACKUP_PATH目錄中。

用dbdump.sh all 生成一個.gz數據壓縮文件

sftp IP地址 連接到對應IP數據庫服務器上擎宝,將gz壓縮文件傳輸過去

gunzip *.gz文件? 解壓數據文件

如果默認存儲目錄容量不夠

修改數據庫數據存儲目錄

mysql -uroot -p 登錄mysql

select @@datadir; 查看當前數據存儲目錄

sudo service mysqld stop?

停止數據庫服務

在內容空間充足的目錄下? 創(chuàng)建存儲目錄郁妈,例如:/data

cp /var/lib/mysql /data

vim /etc/my.cnf

[client]

port=3306

socket=/data/mysql/mysql.sock

[mysqld]

datadir=/data/mysql

socket=/data/mysql/mysql.sock

啟動服務

sudo service mysqld start?

再次登錄mysql中? 驗證存儲目錄是否更改

更改成功后,在解壓縮的sql目錄下 執(zhí)行這個命令

nohup mysql -u數據庫賬號 -p'數據庫密碼' 數據庫 < *.sql &

ps -ef | grep mysql??

查看數據庫進程绍申,會有進程在跑

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末噩咪,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子极阅,更是在濱河造成了極大的恐慌胃碾,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,884評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件筋搏,死亡現(xiàn)場離奇詭異仆百,居然都是意外死亡,警方通過查閱死者的電腦和手機奔脐,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,347評論 3 385
  • 文/潘曉璐 我一進店門俄周,熙熙樓的掌柜王于貴愁眉苦臉地迎上來吁讨,“玉大人,你說我怎么就攤上這事峦朗〗ㄉィ” “怎么了?”我有些...
    開封第一講書人閱讀 157,435評論 0 348
  • 文/不壞的土叔 我叫張陵波势,是天一觀的道長翎朱。 經常有香客問我,道長尺铣,這世上最難降的妖魔是什么闭翩? 我笑而不...
    開封第一講書人閱讀 56,509評論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮迄埃,結果婚禮上疗韵,老公的妹妹穿的比我還像新娘。我一直安慰自己侄非,他們只是感情好蕉汪,可當我...
    茶點故事閱讀 65,611評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著逞怨,像睡著了一般者疤。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上叠赦,一...
    開封第一講書人閱讀 49,837評論 1 290
  • 那天驹马,我揣著相機與錄音,去河邊找鬼除秀。 笑死糯累,一個胖子當著我的面吹牛,可吹牛的內容都是我干的册踩。 我是一名探鬼主播泳姐,決...
    沈念sama閱讀 38,987評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼暂吉!你這毒婦竟也來了胖秒?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 37,730評論 0 267
  • 序言:老撾萬榮一對情侶失蹤慕的,失蹤者是張志新(化名)和其女友劉穎阎肝,沒想到半個月后,有當地人在樹林里發(fā)現(xiàn)了一具尸體肮街,經...
    沈念sama閱讀 44,194評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡风题,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,525評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片俯邓。...
    茶點故事閱讀 38,664評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡骡楼,死狀恐怖熔号,靈堂內的尸體忽然破棺而出稽鞭,到底是詐尸還是另有隱情,我是刑警寧澤引镊,帶...
    沈念sama閱讀 34,334評論 4 330
  • 正文 年R本政府宣布朦蕴,位于F島的核電站,受9級特大地震影響弟头,放射性物質發(fā)生泄漏吩抓。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,944評論 3 313
  • 文/蒙蒙 一赴恨、第九天 我趴在偏房一處隱蔽的房頂上張望疹娶。 院中可真熱鬧,春花似錦伦连、人聲如沸雨饺。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,764評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽额港。三九已至,卻和暖如春歧焦,著一層夾襖步出監(jiān)牢的瞬間移斩,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,997評論 1 266
  • 我被黑心中介騙來泰國打工绢馍, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留向瓷,地道東北人。 一個月前我還...
    沈念sama閱讀 46,389評論 2 360
  • 正文 我出身青樓舰涌,卻偏偏與公主長得像风罩,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子舵稠,可洞房花燭夜當晚...
    茶點故事閱讀 43,554評論 2 349

推薦閱讀更多精彩內容