您好,登錄后才能下訂單哦!
本文主要給大家介紹mysql數(shù)據(jù)庫遷移及腳本開發(fā),希望可以給大家補充和更新些知識,如有其它問題需要了解的可以持續(xù)在億速云行業(yè)資訊里面關(guān)注我的更新文章的。
公司新平臺上線,老數(shù)據(jù)庫中有一些原本的用戶數(shù)據(jù)需要遷移到新平臺,特地開發(fā)這個腳本,以保證數(shù)據(jù)的完整性,以及效率性 #!/bin/bash ##到出舊數(shù)據(jù)庫中需要的表echo "請在腳本語言目錄下準備3個文件,一個為tables.txt,里面列出需要從舊數(shù)據(jù)庫中導(dǎo)出的表名,另一個是oldmysqlauth舊數(shù)據(jù)庫的用戶賬號密碼以及數(shù)據(jù)庫,第三個是newmysqlauth新數(shù)據(jù)庫的用戶賬號密碼以及數(shù)據(jù)庫,分別列出格式為: 1 2 3 ..." counts=`awk 'BEGIN{t=0;} { t++; } END{print t; }' tables.txt` i=1 mkdir sql if [ -e tables.txt ] && [ -e oldmysqlauth ] && [ -e newmysqlauth ]; then while [ $i -le $counts ]; do table=`awk -v awk_i="$i" 'NR==awk_i{print}' tables.txt`; /usr/bin/mysqldump -u`awk 'NR==1{print}' oldmysqlauth` -p`awk 'NR==2{print}' oldmysqlauth` `awk 'NR==3{print}' oldmysqlauth` $table > sql/$table.sql i=$((i+1)) done else echo "程序需要文件不完整,請檢查" fi echo "已經(jīng)將您需要的表從舊的數(shù)據(jù)庫中導(dǎo)出,即將進行數(shù)據(jù)表還原" ##將舊數(shù)據(jù)庫中導(dǎo)出的表導(dǎo)入新數(shù)據(jù)庫中 k=1 if [ -e tables.txt ] && [ -e oldmysqlauth ] && [ -e newmysqlauth ]; then while [ $k -le $counts ]; do table=`awk -v awk_k="$k" 'NR==awk_k{print}' tables.txt`; /usr/bin/mysql -u`awk 'NR==1{print}' newmysqlauth` -p`awk 'NR==2{print}' newmysqlauth` `awk 'NR==3{print}' newmysqlauth` < /root/datapopulate/sql/$table.sql k=$((k+1)) done else echo "程序需要文件不完整,請檢查" fiecho "已經(jīng)將舊數(shù)據(jù)庫中的表遷移到新的數(shù)據(jù)庫中,謝謝使用!"
看了以上關(guān)于mysql數(shù)據(jù)庫遷移及腳本開發(fā),希望能給大家在實際運用中帶來一定的幫助。本文由于篇幅有限,難免會有不足和需要補充的地方,如有需要更加專業(yè)的解答,可在官網(wǎng)聯(lián)系我們的24小時售前售后,隨時幫您解答問題的。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。