|
起因: 因工作需要,在本機(jī)測(cè)試環(huán)境升級(jí)mysql數(shù)據(jù)庫(kù),需逐條執(zhí)行mysql數(shù)據(jù)庫(kù)的sql文件對(duì)數(shù)據(jù)庫(kù)進(jìn)行升級(jí),因此找了些關(guān)于mysql的文章,對(duì)批量升級(jí)數(shù)據(jù)庫(kù)所需的sql文件進(jìn)行升級(jí)。 整理思路:
因此,需對(duì)這些思路進(jìn)行實(shí)踐驗(yàn)證。驗(yàn)證后,整理出操作過(guò)程,分享給廣大猿友。 實(shí)現(xiàn)過(guò)程:
@echo off & setlocal EnableDelayedExpansion
@set source=\.
for /f "delims=" %%i in ('"dir /a/s/b/on *.sql"') do (
set file=%%~fi
set file=!file:/=/!
echo \.
echo %source% !file! >> batch.sql
)
將上方的bat腳本,粘貼到txt文件中,并重命名,這里重命名為: creatsql.bat
\. D:\gzkj\mysql\patchScipt\4.7.25\aa.sql \. D:\gzkj\mysql\patchScipt\4.7.25\bb.sql \. D:\gzkj\mysql\patchScipt\4.7.25\cc.sql \. D:\gzkj\mysql\patchScipt\4.7.25\dd.sql \. D:\gzkj\mysql\patchScipt\4.7.25\ee.sql \. D:\gzkj\mysql\patchScipt\4.7.25\ff.sql \. D:\gzkj\mysql\patchScipt\4.7.25\gg.sql \. D:\gzkj\mysql\patchScipt\4.7.25\hh.sql \. D:\gzkj\mysql\patchScipt\4.7.25\ii.sql
set character_set_client=utf8; set character_set_connection=utf8; set character_set_results=utf8; \. D:\gzkj\mysql\patchScipt\4.7.25\aa.sql \. D:\gzkj\mysql\patchScipt\4.7.25\bb.sql \. D:\gzkj\mysql\patchScipt\4.7.25\cc.sql \. D:\gzkj\mysql\patchScipt\4.7.25\dd.sql \. D:\gzkj\mysql\patchScipt\4.7.25\ee.sql \. D:\gzkj\mysql\patchScipt\4.7.25\ff.sql \. D:\gzkj\mysql\patchScipt\4.7.25\gg.sql \. D:\gzkj\mysql\patchScipt\4.7.25\hh.sql \. D:\gzkj\mysql\patchScipt\4.7.25\ii.sql
@echo off :: 指定MySQL安裝路徑 C: cd C:\Program Files\MySQL\MySQL Server 5.6\bin :: 數(shù)據(jù)庫(kù)名稱 @set db=dbname :: 用戶名 @set userName=username :: 密碼 @set password=aaa123456 :: 獲取文件夾所在絕對(duì)路徑 @set basePath=%~dp0 :: 要執(zhí)行的sql腳本 @set sqlpath=%basePath%\batch.sql :: 連接MySQL數(shù)據(jù)庫(kù)并執(zhí)行sql腳本 -f 腳本執(zhí)行過(guò)程中,出現(xiàn)錯(cuò)誤繼續(xù)執(zhí)行 --default-character-set指定導(dǎo)入數(shù)據(jù)的編碼(與數(shù)據(jù)庫(kù)編碼相同) mysql -f -u %userName% --password=%password% %db% < %sqlpath% --default-character-set=gbk :: 執(zhí)行完成后,不立刻關(guān)閉dos窗口 pause
謹(jǐn)以此文分享給大家,相信也能夠幫到想要如此操作,卻無(wú)從下手的同仁們。
|
|
|
來(lái)自: 新進(jìn)小設(shè)計(jì) > 《待分類》