如何在WIndows上安裝和使用MySQL 8.0數據庫

如何在Windows安裝和使用MySQL 8.0數據庫:

一、簡介

之前,給大家分享了《如何在Linux服務器上安裝MySQL 8.0數據庫》,教程鏈接:https://www.bilibili.com/video/av48488984,今天給大家分享以下如何在windows上安裝和使用MySQL 8.0數據庫,MySQL官方給我們提供兩種安裝包:

工具

  1. Windows 10
  2. MySQL 8.0.15

說明:此博客中調用Windows命令的地方,有時用引號括起來(""),實際上和不用引號效果是一樣的,如果你的目錄裏包含空格,那麼必須使用引號括起來。

1.exe可執行安裝包:

​ 這個類型的安裝包也就是圖形化安裝包,很簡單,程序會默認安裝到windows的程序默認安裝目錄。也就是C:\Program Files\或者C:\Program Files (x86)\。

2.zip壓縮包:

​ 這種windows安裝包不是源代碼,官方將已經編譯好了的可執行程序文件+配置文件打包成一個zip格式的文件,我們在安裝時可以放到我們自己喜歡的目錄。

​ 因爲exe可執行安裝包的安裝方式比較簡單,直接根據提示一路的“下一步”就完成了,今天給大家演示zip壓縮包的安裝方式。

二、安裝步驟

(一)解壓安裝包到安裝目錄

(二)創建一個配置文件

(三)選擇MySQL服務器類型

(四)初始化數據目錄

(五)第一次啓動MySQL服務器

(六)通過命令行啓動和關閉MySQL服務

(七)將MySQL自帶工具添加到環境變量中【可選】

(八)將MySQL註冊爲爲Windows的服務【可選】

(九)測試你安裝MySQL服務【可選】

(十)更改數據庫賬號驗證方式與密碼加密方式【可選】

三、安裝過程

安裝之前,我們先下載安裝包,如圖所示:
在這裏插入圖片描述

下載鏈接:https://dev.mysql.com/downloads/mysql/

(一)解壓安裝包到安裝目錄

1.因爲我們是全新安裝,所以不考慮其他情況,根據官方文檔,我們可以直接把解壓之後的內容放在C:\mysql,當然,你可以選擇其他合理的目錄(注意:避免中文目錄);

2.有的解壓工具解壓之後會有兩層目錄,直接把裏面那層提取出來重命名即可;

(二)創建一個配置文件

1.如果你想在運行MySQL數據庫服務的時候指定一些參數,那麼你就可以在命令行中聲明,或者使用一個配置文件來代替,MySQL服務在運行的時候會去讀取配置文件的內容。當然了,我們使用配置文件的方式指定運行時的一些參數是最方便的。

2.當MySQL在Windows中啓動時,它會從多個地方查找配置文件,比如C:\還有MySQL的安裝目錄。MySQL會尋找名爲my.ini的文本配置文件,所以,爲了避免衝突,最好只使用一個配置文件。

3.如果我們的安裝目錄在C:\mysql,數據的保存保存目錄在C:\mysql\data,那麼我們可以在mysql安裝目錄創建一個my.ini文件,並使用一個文本編輯工具如Notepad++定義我們的參數,我們需要創建一個[mysqld]節點,並寫入如下內容:

[mysqld]
# 指定mysql的安裝目錄
basedir=C:/mysql
# 指定數據保存的目錄
datadir=C:/mysql/data

反斜槓(/)是Unix風格的目錄分割符號,MySQL會自定識別並解析,你可以使用Windows的文件路徑分割符號–斜槓(\),但是一定要使用雙斜槓,別問爲什麼,官方就這樣說的:

[mysqld]
# 指定mysql的安裝目錄
basedir=C:\\mysql
# 指定數據保存的目錄
datadir=C:\\mysql\\data

(三)選擇服務器類型

下表是MySQL 8.0系列中Windows的可用服務器:

二進制文件名 m描述
mysqld 支持命名管道的經過優化的二進制文件
mysqld-debug 和mysqld一樣,但是使用完全debug和內存自動檢查方式來編譯

我們這一步暫時不需要做什麼,需要了解一下就行了

(四)初始化數據目錄

  1. 說明:
    使用exe可執行文件安裝時,數據目錄初始化是自動的。但是我們使用zip壓縮包來安裝MySQL是沒有默認的數據庫保存目錄的,我們需要手動初始化一下數據庫保存目錄。

  2. 數據目錄初始化過程:
    我們需打開windows自帶的命令行工具,並且進入MySQL的安裝目錄,執行以下命令

bin\mysqld --defaults-file=C:\mysql\my.ini --initialize --console

參數說明:
–defaults-file:參數指定我們配置文件所在的位置,我們在上面(二)中把配置文件my.ini放在在安裝目錄中,所以這裏的參數值是 C:\my.ini。
–initialize:參數爲初始化的指定參數,初始化過程會root用戶生成可用於本地登錄的隨機密碼,你需要記住;實際是我們還可以使用–initialize-insecure參數進行目錄初始化,不過這個參數不會生成隨機密碼。
–console:這個參數就不用詳細說了,反正官方這樣指定的。

(五)第一次啓動MySQL服務器

注意:必須先完成初始化才能啓動MySQL

  1. 啓動MySQL服務器
    通過msqld命令啓動服務

    C:\> "C:\mysql\bin\mysqld" --console
    
  2. 使用root賬號登錄
    通過使用–initialize或 -initialize-insecure初始化之後,可以正常啓動服務器,我們需要給'root'@'localhost'帳戶分配新密碼,如果你修改密碼,新版本的MySQL是不能正常使用的:

    如果使用–initialize初始化數據庫,使用以下命令,這時候我們輸入隨機生成的密碼:

    bin\mysql -u root -p 
    

    如果使用 -initialize-insecure初始化數據庫目錄,我們在root沒有密碼的情況下登錄

    mysql -u root --skip-password
    
  3. 連接數據庫之後,使用以下命令修改密碼

    ALTER USER 'root'@'localhost' IDENTIFIED BY '你的密碼';
    

(六)通過命令行啓動和關閉MySQL服務

  1. 我們可以從控制檯窗口啓動服務,如下:
    C:\> "C:\mysql\bin\mysqld"
    
  2. 我們可以從控制檯窗口關閉服務,如下,輸入密碼後服務就被關閉:
    C:\> "C:\mysql\bin\mysqladmin" -u root shutdown -p
    
    如果root賬號沒有密碼,不需要加-p參數

(七)將MySQL自帶工具添加到環境變量中【可選】

  1. 這部分是可選的,將MySQL自帶工具添加到PATH環境變量中我們會更方便從命令行窗口調用。操作如下:

  2. 在桌面右鍵單擊“ 我的電腦”圖標,然後選擇“ 屬性”->“系統屬性”->“高級”->“環境變量”->“系統變量”,編輯 “PATH” 變量,添加mysql安裝目錄下的bin目錄絕對路徑即可。

(八)將MySQL註冊爲爲Windows的服務【可選】

​ 這部分是可選的,我們可以將MySQL註冊爲windows服務,方便我們以圖形化方式進行啓動管理。也可以隨時移除,但是在操作前,一定要停止MySQL服務。同時,執行下面操作需要Windows管理員權限,所以我們需要使用管理員身份打開命令行。

  1. 註冊服務:
    C:\> "C:\mysql\bin\mysqld" --install mysql --defaults-file="C:\mysql\my.ini" 
    
  2. 移除服務:
    C:\> SC DELETE mysql
    C:\> "C:\mysql\bin\mysqld" --remove
    

(九)測試服務器【可選】

​ 這部分是可選的,你可以通過執行以下任何命令來測試MySQL服務器是否正常工作:

C:\> "C:\mysql\bin\mysqlshow"
C:\> "C:\mysql\bin\mysqlshow" -u root mysql
C:\> "C:\mysql\bin\mysqladmin" version status proc
C:\> "C:\mysql\bin\mysql" test

(十)更改數據庫賬號驗證方式與密碼加密方式【可選】

  1. 這部分是可選的,在MySQL 8.0系列中,默認的身份驗證插件已將 mysql_native_password更改爲 caching_sha2_password,並且在 ‘root’@'localhost’管理帳戶中默認使用caching_sha2_password驗證方式。

  2. 以現在的情況來說,默認情況下很多開源程序如wordpress、typecho是不可以直接連接的,所以使用MySQL8.0數據庫,你可以更改默認驗證方式,你還可以新建一個專門用於你項目開發的一個數據庫賬號,並使用mysql_native_password驗證方式。

    以下方法可更改root用戶的驗證方式。

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

​ 經過我的測試,默認情況下MySQL 8.0使用第三方工具默認也是不能連接的,如果有需要,你需要更改一下密碼的加密方式:

ALTER USER 'root'@'localhost' IDENTIFIED BY '密碼' PASSWORD EXPIRE NEVER;

請尊重作者的知識產權,禁止轉載
參考:https://dev.mysql.com/doc/refman/8.0/en/windows-install-archive.html

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