標籤:
原文:批處理命令篇--配置免安裝mysql
免安裝版的mysql是進行軟體綠色發布的絕佳助手,本文介紹一種使用批處理命令自動設定mysql的方法。
(1)建立三個檔案,分別是:service install.bat,temp.txt,update.sql。
(2)在temp.txt檔案中寫入如下內容:
set PathTemp=
(3)在update.sql檔案中寫入如下內容:
use mysql
update user set host=‘%‘ where user=‘root‘ and host=‘127.0.0.1‘;
update user set password=password(‘root‘) where user=‘root‘ and host=‘%‘;
quit
(4)在service install.bat檔案中寫入如下內容:
@echo offnet stop mysqlrem @echo off的作用是關閉回顯功能rem 找到當前路徑rem 將temp.txt檔案中內容拷貝到temp.bat檔案中rem temp.txt檔案中的內容是“set PathTemp=”rem 特別注意:“=”後面不能加斷行符號copy temp.txt temp.batrem 將路徑添加到temp.bat檔案中cd>>temp.batrem 執行temp.bat檔案中命令rem temp.bat檔案執行後,路徑已經儲存在PathTemp變數中call temp.batrem 刪除temp.bat檔案del temp.batrem 複製 my-default.ini檔案copy my-default.ini my.inirem 設定my.ini的標記位set tag=[mysqld]rem 設定添加到my.ini檔案中的資料庫路徑和資料路徑rem set datadir=datadir=%PathTemp%\data的意思是:rem 將字串“datadir=”、變數PathTemp對應的字串以及字串“\data”賦值給datadir變數set basedir=basedir=%PathTemp%set datadir=datadir=%PathTemp%\datarem 設定運行環境變數homedirset homedir=%PathTemp%\binrem 設定變數延遲rem 注意:使用變數延遲後,相關變數用!!包圍,這樣程式才能正確識別setlocal enabledelayedexpansionrem 迴圈尋找my.ini檔案中的內容for /f "tokens=*" %%i in (my.ini) do (rem 將從my-huge.ini檔案中讀到的字串,賦值給變數pset p=%%irem 如果變數p的內容和my-huge.ini的標記位相同rem 將變數p的內容寫入my.ini檔案中,同時在其後面加入兩行內容:rem basedir的內容和datadir的內容;rem 如果不同,只將變數p的內容寫入my.ini檔案中if "!p!"== "%tag%" (echo !p!>>my.iniecho !basedir!>>my.iniecho !datadir!>>my.ini)if not "!p!"== "%tag%" echo !p!>>my.ini)rem 設定刪除mysql服務的命令set uninstallcmd=.\bin\mysqld.exe removerem 調用刪除命令call !uninstallcmd!rem 設定安裝mysql服務的命令set installcmd=.\bin\mysqld.exe -installrem 調用安裝命令call !installcmd!rem 啟動mysql服務net start mysqlrem 調用update.sql檔案中的sql語句,將mysql的遠端存取方式開啟,以備遠端存取伺服器;rem 同時,將mysql的密碼更改,本批處理命令將mysql密碼更改為root.\bin\mysql -u root <.\update.sqlrem 重啟mysql服務net stop mysqlnet start mysqlpause
(5)運行service install.bat檔案,完成mysql的環境配置,此時就可以通過程式對mysql服務進行調用了。
注意:此時mysql的root使用者的密碼已被更改為“root”,並允許使用者遠端存取mysql。
批處理命令篇--配置免安裝mysql 5.6.22