win7 / mysql-8.0.11-winx64 安裝的測坑步驟
虛驚一場,主要問題是 Navicat Premium 連接 mysql8 Client does not support authentication 。
1. 下載 官網下載壓縮包: mysql-8.0.11-winx64.zip
2. 解壓到想要安裝的目錄:然後在安裝包下新建文件my.ini 內容如下:(註意basedir/datadir...data根據自己的安裝位置配置)
[client]
port=3306
default-character-set=utf8
[mysqld]
#設置mysql的安裝目錄
basedir=D:\DevelopInstall\mysql-8.0.11-winx64
#設置mysql的數據目錄
datadir=D:\DevelopInstall\mysql-8.0.11-winx64\data
character_set_server=utf8
#sql_mode=NO_ENGINE_SUBSTITUTION,NO_AUTO_CREATE_USER
#開啟查詢緩存
explicit_defaults_for_timestamp=true
3. 以管理員身份運行cmd 進入: mysql-8.0.11-winx64/bin目錄下: 執行命令 mysqld –-initialize
(在data下可以看到.err文件,其中藏有你首次登錄root的密碼)如:
A temporary password is generated for root@localhost: Cu/fkq0Mts?t
4. cmd中 執行mysqld install 安裝服務,
5.cmd中 net start mysql 啟動服務
6.cmd中 mysql -u root -p 登陸 .err文件中密碼粘貼過來用於登陸
7.登陸成功。
8*************** 現在我用 Navicat Premium 連接 mysql 提示:Client does not support authentication protocal requested by server; ...
我以為是root沒有允許遠程ip連接於是準備賦予權限:
grant all privileges on *.* to root@‘%‘ identified by ‘123456‘;
mysql> grant all privileges on *.* to root@‘%‘ identified by ‘123456‘;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near ‘ident
ified by ‘123456‘‘ at line 1
-------------反復執行反復錯誤,反復百度查詢錯誤提示,並沒有什麽用處。最後google代理: 一下子就有結果了:
https://stackoverflow.com/questions/50177216/how-to-grant-all-privileges-to-root-user-in-mysql-8-0
我看了上半段: 大意是grant all privileges on *.* to root@‘%‘ identified by ‘123456‘; 報錯啊,mysql8與5.1有差異啊,該怎麽賦予權限給root也能被遠程ip訪問啊。
最後看到
mysql> CREATE USER ‘java‘@‘%‘ IDENTIFIED BY ‘root‘;
Query OK, 0 rows affected (0.31 sec)
mysql> GRANT ALL PRIVILEGES ON . TO ‘java‘@‘%‘ WITH GRANT OPTION;
Query OK, 0 rows affected (0.16 sec)
總之,是得創建新用戶並且順便賦予權限。那麽我就如上改了‘java‘@‘%‘ 用戶用作為遠程連接了。
9.之後還是連不上
Navicat Premium 連接 mysql 提示:Client does not support authentication protocal requested by server; ...
最後:
https://www.cnblogs.com/xiaojian1/p/mysql.html
alter user ‘test‘@‘%‘ identified with mysql_native_password by ‘123‘; 解決煩惱Navicate可以正常連接了。
虛驚一場,主要問題是 Navicat Premium 連接 mysql8 Client does not support authentication 。
win7 / mysql-8.0.11-winx64 安裝的測坑步驟