使用Mysql過程中經常需要使用到免安裝版本(綠色版)的Mysql,開始網上搜了一大堆,但還真是不怎麼好用。
只好自己琢磨了一番,現在放出來和大家分享下:
//安裝啟動服務
@ECHO OFF<br />if exist "%cd%/my.ini" goto startsrv<br />for /f %%i in ('net start') do if %%i==MySQL goto MySQL_IsRunning<br /> goto MySQL_NotRunning<br />:MySQL_IsRunning<br /> echo "found Server!"<br />net stop mysql<br />"%cd%"/bin/mysqld.exe -remove<br />goto createmyini<br />:MySQL_NotRunning<br /> echo "not found!"<br />:createmyini<br />rem -------------------------------------------------------<br />rem edit my.ini<br />setlocal enabledelayedexpansion<br />set realpath=<br />set replaced=/<br />set all=/<br />for /f "delims=" %%i in ('cd') do (<br /> set str=%%i<br /> set "str=!str:%replaced%=%all%!"<br /> set realpath=!str!<br />)<br />echo [client] >>my.ini<br />echo default-character-set=utf8 >>my.ini<br />echo port=3306 >>my.ini<br />echo [server] >>my.ini<br />echo default-character-set=utf8 >>my.ini<br />echo port=3306 >>my.ini<br />echo [mysql] >>my.ini<br />echo default-character-set=utf8 >>my.ini<br />echo [mysqld] >>my.ini<br />echo port=3306 >>my.ini<br />rem 下面兩句根據實際情況可進行修改<br />echo basedir=%realpath%/>>my.ini<br />echo datadir=%realpath%/data/>>my.ini<br />echo default-character-set=utf8 >>my.ini<br />echo default-storage-engine=INNODB >>my.ini<br />echo max_connections=100 >>my.ini<br />echo query_cache_size=8M >>my.ini<br />echo table_cache=256 >>my.ini<br />echo tmp_table_size=9M >>my.ini<br />echo myisam_max_sort_file_size=100G >>my.ini<br />echo myisam_max_extra_sort_file_size=100G >>my.ini<br />echo myisam_sort_buffer_size=18M >>my.ini<br />echo key_buffer_size=11M >>my.ini<br />echo read_buffer_size=64K >>my.ini<br />echo read_rnd_buffer_size=256K >>my.ini<br />echo sort_buffer_size=256K >>my.ini<br />echo innodb_additional_mem_pool_size=2M >>my.ini<br />echo innodb_flush_log_at_trx_commit=1 >>my.ini<br />echo innodb_log_buffer_size=1M >>my.ini<br />echo innodb_buffer_pool_size=18M >>my.ini<br />echo innodb_log_file_size=5M >>my.ini<br />echo innodb_thread_concurrency=8 >>my.ini<br />rem edit my.ini end.<br />rem ---------------------------------------------------------------<br />"%cd%"/bin/mysqld.exe -install<br />:startsrv<br />net start MySQL<br />Pause<br />@ECHO ON<br />
//關閉卸載服務
@ECHO off<br />Set CURRENT_DIR=%cd%<br />Set MYSQL_HOME=%CURRENT_DIR%<br />net stop mysql<br />bin/mysqld.exe -remove<br />del "%cd%"/my.ini
指令碼中關鍵區段都加有注釋,如有問題歡迎大家一起討論。
同時附上自己已經做好的免安裝包(版本為5.1.47),指令碼任何版本適用
mysql安裝包(CSDN不能傳大附件,只好用這個U蛋了,請謹慎下載)
如果你已經有了主檔案部分,你也可以直接把bat檔案放到mysql主目錄下即可
mysql的指令碼.bat