MySQL 5.7 免安裝版配置問題記錄

本文爲 Window10 環境下 ,MySQL 5.7 免安裝版配置過程中,常見問題及報錯處理記錄日誌。

配置文件

解壓免安裝版 MySQL 程序後,在解壓目錄或bin目錄下查找是否存在 ini 配置文件,不存在則創建;配置文件內容大致如下:

[mysql]
# 設置MySQL客戶端默認端口
port=3306
# 設置MySQL客戶端默認字符集
character_set_server=utf8
default-character-set=utf8

[mysqld]
#登錄忽略登錄檢查
#skip_grant_tables
# 設置MySQL默認端口
port=3306
# 設置MySQL安裝目錄
basedir=D:/tools/mysql-5.7.21-winx64
# 設置MySQL數據存放目錄
datadir=D:/tools/mysql-5.7.21-winx64/data
# 設置MySQL默認字符集
character_set_server=utf8
default-character-set=utf8
# 去除NO_ZERO_IN_DATE,NO_ZERO_DATE模式  避免默認時間爲‘0000-00-00 00:00:00’時的1067報錯  (修改後重啓未起效,原因未知)
sql-mode="ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
# 設置最大連接數
max_connections=200
# 創建新表時使用的默認存儲引擎
default-storage-engine=INNODB
# 緩存 innodb 表的索引,數據,插入數據時的緩衝 默認爲 128M 
innodb_buffer_pool_size = 256M
query_cache_type=1
# MySQL 的查詢緩存,最少設置 15M
query_cache_size=32M

[client]
character_set_server=utf8
default-character-set=utf8

配置環境變量

# 新增變量(指定本地MySQL路徑,用於後續切換版本)
MYSQL_HOME=D:\tools\mysql-5.7.21-winx64
# PATH中新增變量 
%MYSQL_HOME%\bin

數據庫初始化及root賬號密碼生成

命令管理器(管理員模式)中,執行以下語句,進行數據庫初始化並生成root賬號隨機密碼:

mysqld --initialize --user=mysql --console

語句執行完畢後,可以在控制檯中看到類似 A temporary password is generated for root@localhost:[此處爲生成的隨機密碼]

image-20200523154349075

配置服務

輸入以下命令,將 MySQL 服務安裝到系統服務中

mysqld --install mysql --defaults-file="D:\tools\mysql-5.7.21-winx64\bin\my.ini"

如不需要安裝服務,則執行以下命令

mysqld --defaults-file="my.ini 配置文件的路徑"

如需刪除已安裝的服務,則執行以下命令

mysqld --remove [已安裝服務名]
# 或
sc delete [已安裝服務名]

安裝好的服務,可以在系統服務中找到。

啓動和停止

已安裝服務,可以使用以下命令啓動 MySQL 數據庫

net start [已安裝服務名]

停止 MySQL 數據庫服務,則執行以下命令

net stop [已安裝服務名]

修改密碼

執行 net start mysql 啓動服務後,執行命令 mysql -u root -p 進行root賬號登錄,根據提示輸入初始密碼,登錄成功後,執行以下命令修改用戶密碼

# set password for [用戶名]@localhost = password('[新密碼]');
set password for root@localhost = password('newPassword');

如未記錄初始密碼,嘗試以下方式處理:


常見問題記錄

忘記密碼處理

參看:免安裝版MySQL安裝完成後登陸1045錯誤處理


錯誤解決記錄

Install/Remove of the Service Denied

mysqld --install 命令執行時報錯,此錯誤爲權限不足導致。

解決方式:

  • 用管理員模式運行命令行窗口後重試即可。

由於找不到 MSVRC120.dll,無法繼續執行代碼。

image-20200507215223674

mysqld --initialize-insecure 初始化時報錯,此錯誤是由於未安裝 vcredist (Visual C++ Redistributable Packages 安裝運行時組件)導致。

解決方式:

  • 下載安裝 vcredist 後,重新在命令行中嘗試命令 mysqld --initialize-insecure

MySQL 服務無法啓動。請鍵入 NET HELPMSG 3523 以獲得更多的幫助。

net start 命令啓動 MySQL 服務時報錯,此問題是因爲 MySQL 的 ini 配置文件,可能是使用 UTF-8 with bom 模式保存導致。

解決方式:

  • 用文本編輯器(如,Sublime Text、nodepad++等)打開配置文件後,以 UTF-8 編碼格式保存即可。

MySQL 服務無法啓動。請鍵入 NET HELPMSG 3534 以獲得更多的幫助。

參看:免安裝MySQL啓動3534錯誤處理

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章