已測試可用的版本 MySQL 8.0; 環境: windows7/10MySQL 8.0.15免安裝版 項目需求 需要實現一個自動化MySQL配置安裝及初始化資料庫(初始化包括:設置用戶名和密碼)。 批處理 用來對某對象進行批量的處理,即可通過批處理讓相應的軟體執行自動化操作。 MySQL免安裝版使 ...
已測試可用的版本
MySQL 8.0;
環境:
windows7/10
MySQL 8.0.15免安裝版
項目需求
需要實現一個自動化MySQL配置安裝及初始化資料庫(初始化包括:設置用戶名和密碼)。
批處理
用來對某對象進行批量的處理,即可通過批處理讓相應的軟體執行自動化操作。
MySQL免安裝版使用步驟:
1.配置環境變數
2.創建MySQL配置文件
3.註冊MySQL服務
4.啟動MySQL服務
5.設置MySQL資料庫用戶名密碼為指定的賬戶密碼。
本文章問題的解決方式就是使用批處理來實現以上步驟。
1、下載mysql安裝包
下載mysql-8.0.15-winx64.zip,地址https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.15-winx64.zip
2、寫bat文件
把文件夾解壓縮到D盤(或解壓到其他位置),在目錄下新建初始化資料庫.bat、初始化密碼.bat和setpwd.sql
初始化資料庫.bat內代碼的內容為
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
@ECHO ON
@echo 設置環境變數
@SET sqlpath=%~dp0
@setx /M PATH "%sqlpath%bin;%path%"
@echo 初始化資料庫配置文件
@del %sqlpath%\my.ini
@echo [mysqld]>>%sqlpath%\my.ini
@echo port=3306>>%sqlpath%\my.ini
@echo basedir=%sqlpath%>>%sqlpath%\my.ini
@echo datadir=%sqlpath%\data>>%sqlpath%\my.ini
@echo max_connections=200>>%sqlpath%\my.ini
@echo max_connect_errors=10>>%sqlpath%\my.ini
@echo character- set -server=utf8mb4>>%sqlpath%\my.ini
@echo default -storage-engine=INNODB>>%sqlpath%\my.ini
@echo default_authentication_plugin=mysql_native_password>>%sqlpath%\my.ini
@echo [mysql]>>%sqlpath%\my.ini
@echo default -character- set =utf8mb4>>%sqlpath%\my.ini
@echo [client]>>%sqlpath%\my.ini
@echo default -character- set =utf8mb4>>%sqlpath%\my.ini
@echo port=3306>>%sqlpath%\my.ini
@%sqlpath%\bin\mysqld.exe --initialize-insecure --lower- case -table-names=1 --user=mysql --console
@echo 開始安裝資料庫
@%sqlpath%\bin\mysqld.exe --install
@net start mysql
@pause
|
初始化密碼.bat內代碼的內容為
1 2 3 4 5 |
@ECHO ON
@echo 初始化密碼
@SET sqlpath=%~dp0
@%sqlpath%\bin\mysql.exe -uroot < %sqlpath%\setpwd.sql
@pause
|
setpwd.sql內容為
1 2 3 4 5 6 7 8 |
use mysql;
select Host, User from user;
update user set authentication_string= '' where user= 'root' ;
update user set host= '%' where user= 'root' ;
flush privileges;
alter user 'root' @ '%' IDENTIFIED WITH mysql_native_password BY '123456' ;
flush privileges;
exitru
|
如需重新初始化,新建重新初始化資料庫.bat,內容為
1 2 3 4 5 6 7 |
@ECHO ON
@echo 重新初始化
@SET sqlpath=%~dp0
net stop mysql
mysqld --remove
rmdir /s/q %sqlpath%\data
del %sqlpath%\my.ini
|
本文來自博客園,作者:古道輕風,轉載請註明原文鏈接:https://www.cnblogs.com/88223100/p/install-mysql_by_bash.html