下載zip安裝包:
下載地址:https://dev.mysql.com/downloads/
進入頁面后可以不登錄。后點擊底部“No thanks, just start my download.”即可開始下載。
或直接下載:https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.17-winx64.zip
環境:Windows 10
一,安裝
1.1,解壓zip包到安裝目錄
比如我的安裝目錄是:D:\MySQL
1.2,配置文件
我們發現解壓后的目錄並沒有my.ini文件,沒關系可以自行創建。在安裝根目錄下添加 my.ini,比如我這里是:D:\mysql\mysql-8.0.17-winx64\my.ini,寫入基本配置:
[mysqld] # 設置3306端口 port=3306 # 設置mysql的安裝目錄 basedir=C:\Program Files\MySQL # 設置mysql數據庫的數據的存放目錄 datadir=E:\database\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 是我數據庫數據文件要存放的位置,各項配置需要根據自己的環境進行配置。
查看所有的配置項,可參考:https://dev.mysql.com/doc/refman/8.0/en/mysqld-option-tables.html
1.3,配置環境參數
1.4,初始化數據庫
前面已經配置好環境參數,這里可以直接以管理員身份打開cmd命令行,執行一下命令:
mysqld --initialize --console
注意!執行輸出結果里面有一段: [Note] [MY-010454] [Server] A temporary password is generated for root@localhost:*fq4+a8b3OdS,其中root@localhost:后面的 “*fq4+a8b3OdS”就是初始密碼(不含首位空格)。在沒有更改密碼前,需要記住這個密碼,后續登錄需要用到。
要是你手快,或者沒記住,那也沒事,刪掉初始化的 datadir 目錄,再執行一遍初始化命令,又會重新生成的。當然,也可以使用安全工具,強制改密碼,用什么方法,自己隨意。
參考:https://dev.mysql.com/doc/refman/8.0/en/data-directory-initialization-mysqld.html
1.5,安裝服務
接着執行命令:
mysqld --install [服務名]
后面的服務名可以不寫,默認的名字為 mysql。當然,如果你的電腦上需要安裝多個MySQL服務,就可以用不同的名字區分了,比如 mysql5 和 mysql8。
安裝完成之后,就可以通過命令net start mysql啟動MySQL的服務了。
參考:https://dev.mysql.com/doc/refman/8.0/en/windows-start-service.html
二,更改密碼
執行命令:
mysql -u root -p
這時候會提示輸入密碼,記住了上面第1.4安裝時的密碼,填入即可登錄成功,進入MySQL命令模式。
my.ini配置文件中MySQL的密碼認證插件默認是“mysql_native_password”
所以直接執行命令修改密碼:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密碼';
至此安裝部署完成。
-----------------------------------------------------------------------------------------------------------------------------------
安裝部署完成后,配置mysql遠程連接,默認情況下,mysql是不允許遠程連接的。
MYSQL 8.0不支持創建用戶時授權,必須先創建,后授權(這是個坑,希望以后的人不會再踩)
1.創建用戶
create user 'username'@'localhost' identified by 'pwd';
例子:create user 'admin'@'%' identified by '123456';
2.賦予權限
grant all privileges on *.* to 'username'@'%' with grant option;
例子:grant all privileges on *.* to 'admin'@'%' with grant option;
-----------------------------------------------------------------------------------------------------------------------------
另外遠程連接時,別忘了防火牆打開3306端口,不然是連不上的。
其他命令,可學習一下:
1.創建用戶 create user 'username'@'localhost' identified by 'pwd' 2.修改訪問權限 在mysql數據下修改user表用戶host為'%' update user set host='%' where user='username' 3.修改密碼 MYSQL8.0密碼默認加密方式為 default_authentication_plugin=caching_sha2_password 所以會造成不兼容問題 alter user 'username'@'localhost' identified with mysql_native_password by 'newpwd' 4.修改操作權限 MYSQL 8.0不支持創建用戶時授權,必須先創建,后授權 grant all privileges on *.* to 'username'@'%' with grant option;