官網下載zip包,我下載的是64位的:html
下載地址:https://dev.mysql.com/downloads/mysql/mysql
下載zip的包:web
下載後解壓:(解壓在哪一個盤均可以的)sql
我放在了這裏 E:\web\mysql-8.0.11-winx64 ,順便縮短了文件名,因此爲 E:\web\mysql-8.0.11。數據庫
進入 計算機--高級系統設置--高級--環境變量函數
而後新建系統變量加密
變量值改成本身mysql解壓的路徑spa
變量名:MYSQL_HOME插件
變量值:E:\web\mysql-8.0.11xml
path裏添加:%MYSQL_HOME%\bin;(分號不要忘記)
以管理員身份運行cmd
程序--輸入cmd 找到cmd.exe 右鍵以管理員身份運行
進入E:\web\mysql-8.0.11\bin 下
執行命令:mysqld --initialize-insecure --user=mysql 在E:\web\mysql-8.0.11目錄下生成data目錄
執行命令:net start mysql 啓動mysql服務,若提示:服務名無效...(請看步驟:1.5);
提示:服務名無效
解決方法:
執行命令:mysqld -install 便可(不須要my.ini配置文件 注意:網上寫的不少須要my.ini配置文件,其實不須要my.ini配置文件也能夠,我以前放置了my.ini文件,反而提示服務沒法啓動,把my.ini刪除後啓動成功了)
若出現提示「服務正在啓動或中止中,請稍後片刻後再重試一次」,須要去資源管理器中把mysql進程全結束了,從新啓動便可。
登陸mysql:(由於以前沒設置密碼,因此密碼爲空,不用輸入密碼,直接回車便可)
E:\mysql-5.7.20-winx64\bin>mysql -u root -p
Enter password:
查詢用戶密碼命令:mysql> select host,user,authentication_string from mysql.user;
host: 容許用戶登陸的ip‘位置’%表示能夠遠程;
user:當前數據庫的用戶名;
authentication_string: 用戶密碼(後面有提到此字段);
默認root密碼爲空的話 ,下面使用navicat就沒法鏈接,因此咱們須要修改root的密碼。
這是很關鍵的一步。此處踩過N多坑,後來查閱不少才知道在mysql 5.7.9之後廢棄了password字段和password()函數;authentication_string:字段表示用戶密碼。
下面直接演示正確修改root密碼的步驟:
1、若是當前root用戶authentication_string字段下有內容,先將其設置爲空,不然直接進行二步驟。
2、使用ALTER修改root用戶密碼,方法爲 ALTER user 'root'@'localhost' IDENTIFIED BY '新密碼'。以下:
此處有兩點須要注意:一、不須要flush privileges來刷新權限。二、密碼要包含大寫字母,小寫字母,數字,特殊符號。
修改爲功; 從新使用用戶名密碼登陸便可;
注意: 必定不要採起以下形式該密碼:
這樣會給user表中root用戶的authentication_string字段下設置了newpassword值;
當再使用ALTER USER 'root'@'localhost' IDENTIFITED BY 'newpassword'時會報錯的;
由於authentication_string字段下只能是mysql加密後的41位字符串密碼;其餘的會報格式錯誤;
*THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE
至此,安裝mysql和修改root密碼告一段落。開始navicat for mysql篇。
時間有限,navicat的下載和破解註冊就很少講了 有須要的下面留郵箱,發給大家,下面說說出問題的地方。
帳號密碼都正確,鏈接報錯1251。OK 咱們先來看看這個改動:
在MySQL 8.04前,執行:SET PASSWORD=PASSWORD('[新密碼]');可是MySQL8.0.4開始,這樣默認是不行的。由於以前,MySQL的密碼認證插件是「mysql_native_password」,而如今使用的是「caching_sha2_password」。
so,咱們這裏須要再次修改一次root密碼。
先登陸進入mysql環境:執行下面三個命令。(記得帶上分號)
一、use mysql;
二、ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密碼';
三、FLUSH PRIVILEGES;
OK.如今再去重連。perfect!