MySQL 在 Windows 下安裝教程、避坑指南

MySQL 是一個關係型數據庫管理系統,由瑞典 MySQL AB 公司開發,2008 年被 SUN 公司收購,後 SUN 公司又被 Oracle 公司收購。

一、下載

MySQL 官網 https://www.mysql.com/

點擊 DOWNLOADS 進入下載地址,會看到幾個不同的版本:

  • MySQL Enterprise Edition:企業版(收費)
  • MySQL Cluster CGE:高級集羣版(收費)
  • MySQL Community Edition:社區版(開源免費,但官方不提供技術支持)

通常我們用的都是社區版。點擊進入社區版,看到一大堆東西,有點愣住了,不用急,其實點第一個 MySQL Community Server 的下載就可以了。

所以真正的下載地址其實是:https://dev.mysql.com/downloads/mysql/

拉到下面,選擇 Windows 系統。

這裏提供安裝版和解壓版,安裝版是 32 位的(當然 64 位系統下也能安裝),解壓版是 64 位的。

點擊 Download 後會跳轉到如下頁面,這是叫你註冊/登錄的,不理它,點擊左下角的 No thanks, just start my download. 開始下載。


安裝版是 32 位的,而現在的機器多半是 64 位機,雖然 32 位的程序也可以安裝,但是並不建議。安裝版的安裝也比較容易,所以這裏只講解壓版的安裝。

二、解壓版配置

1、配置環境變量

將安裝包解壓到你要安裝的目錄,將 bin 目錄添加至環境變量。
添加環境變量

2、配置 my.ini

在根目錄下新建一個 my.ini 文件。
my.ini

my.ini 中添加如下配置:

[mysqld]
; 設置3306端口
port=3306
; 設置mysql的安裝目錄
basedir=C:\\gl\\SQL\\mysql-8.0.18-winx64
; 設置mysql數據庫的數據的存放目錄
datadir=C:\\gl\\SQL\\mysql-data
; 允許最大連接數
max_connections=200
; 允許連接失敗的次數。這是爲了防止有人從該主機試圖攻擊數據庫系統
max_connect_errors=10
; 服務端使用的字符集默認爲UTF8
character-set-server=utf8
; 創建新表時將使用的默認存儲引擎
default-storage-engine=INNODB
; 默認使用“mysql_native_password”插件認證
default_authentication_plugin=mysql_native_password
[mysql]
; 設置mysql客戶端默認字符集
default-character-set=utf8
[client]
; 設置mysql客戶端連接服務端時默認使用的端口
port=3306
default-character-set=utf8

注意:basedir 和 datadir 要改成你自己的目錄。

陷阱:

default_authentication_plugin=mysql_native_password 這一句必須要加上,否則可能導致 root 的初始密碼無法登陸。

3、初始化數據庫

以管理員身份 運行 cmd,切換至安裝目錄的 bin 目錄下,輸入如下命令:

mysqld --initialize --console

默認的服務名就是 mysql,也可以指定服務名

mysqld --initialize --console 服務名

一般是不會去指定服務名的,但是如果你的電腦上需要安裝多個 MySQL 服務,就可以用不同的名字區分。

執行成功後,會顯示 root 的初始密碼,如下圖,這個密碼需要保存下來。
root 密碼

如果命令中不加 --console,則在 cmd 窗口將不顯示日誌信息。可以到 data 目錄(my.ini 中 datadir 配置的目錄)下找一個 .err 的文件,也可以查看日誌信息。

陷阱 1

可能會報“找不到 MSVCP140.dll”

找不到 MSVCP140.dll

MSVCP140.dll 是 Visual Studio C++ 2015 Redistributable 的組成文件。

一般出現這個問題,是因爲沒有安裝 Visual C++ Redistributable for Visual Studio 2015 所致。這個必須安裝,否則後面服務無法啓動。
下載地址:https://www.microsoft.com/zh-CN/download/details.aspx?id=48145

如果已安裝,則可以修復一下。

亦可下載一個 MSVCP140.dll,複製到 C:\Windows\System32,運行如下批處理命令註冊 dll

@echo 開始註冊
copy msvcp140.dll %windir%\system32\
regsvr32 %windir%\system32\msvcp140.dll /s
@echo msvcp140.dll註冊成功
@pause

註冊成功之後再運行上述 MySQL 命令,就可以正常初始化數據庫了。當然不建議這麼做。


陷阱 2

執行完成之後,仔細查看輸出的信息,可能會有如下警告:

'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous.

utf 8 目前是字符集 UTF8MB3 的別名,在將來的版本中將被 UTF8MB4 替換。請考慮使用 UTF8MB4,以便明確無誤。

如果出現的話,我們只需將 my.ini 文件中的 utf8 替換成 UTF8MB4

3.2、安裝服務

安裝服務:

mysqld -install

啓動服務:

net start mysql

如果上一步中你指定了另外的服務名,將 mysql 改爲你指定的服務名。

登錄數據庫:

mysql -u root -p

這時提示需要輸入密碼,就是前文讓你保存的密碼。

登錄成功後顯示如下:

修改密碼:
執行以下語句,即可將密碼改爲 root

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';

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