mysql8.0 安裝 修改密碼 容許遠程鏈接

mysql從5.7一會兒跳躍到了8.0,其中的改變仍是很大,有點這裏就不說了,小夥伴們本身去百度瞭解一下,這裏重點說一下,安裝的事mysql

1.解壓後,文件下下面是沒有my.ini 和 data目錄的,須要本身新建一個my.ini和data目錄sql

my.ini的基本代碼就這幾行配置,足矣,更詳細的本身官網上看(F:\mysql-8.0.11-winx64 是個人解壓路徑)數據庫

[mysqld]
basedir=F:\mysql-8.0.11-winx64
datadir=F:\mysql-8.0.11-winx64\data 
port = 3306
character-set-server=utf8
#忘記密碼時使用
#skip
-grant-tables
#設置協議認證方式(重點啊)
default_authentication_plugin=mysql_native_password

[mysql]
default-character-set=utf8安全

2.配置環境變量,將解壓目錄下的bin文件夾的路徑配置到系統變量中的path下(F:\mysql-8.0.11-winx64\bin)ide

3.以管理員身份運行命令提示符工具

若是順利會產生下面的信息:測試

第4行的信息尤爲重要,這是初始化密碼,請拿筆或者截圖記下,這個隨機密碼會很隨機,隨機到可能有一些符號;加密

提示:若是你關了這個窗口,或者沒記住,那也沒事,刪掉初始化的 datadir 目錄(就是解壓文件夾下的data文件夾)裏面的東西,不要刪除data文件夾,再執行一遍初始化命令,又會從新生成的spa

4.安裝服務 mysqld --install 服務名(能夠不寫,默認是MySql,若是你的電腦上要安裝付哦個mysql,這裏的服務名寫一下作區分),安裝成功後控制它會提示:success ** (忘記了)code

mysqld --install [服務名]

 

5.啓動服務(這時候不要去登陸mysql,登陸不進去的,必需要先啓動)

 

6.登陸mysql,固然是爲了修改密碼啊,那個隨機密碼鬼才能記得住,這時候也不要嘗試用圖形化管理工具(navicat for mysql)去登陸,會報錯的,繼續往下看

這裏踩坑的小朋友通常是密碼輸錯了,或者服務沒啓動,一直登陸不進去。

 

7.修改密碼

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

 注意:重點啊,若是你沒有設置認證方式,默認的密碼加密方式是:caching_sha2_password,而如今不少客戶端工具還不支持這種加密認證方式,鏈接測試的時候就會報錯:client does not support  authentication protocol requested by server; consider upgrading MySQL client,這裏的錯誤信息就是不支持身份認證方式,不要緊,去my.ini裏面在[mysqld]下面加上這句話便可:

default_authentication_plugin=mysql_native_password

 

 8.打開遠程訪問

對於容許遠程訪問,有兩種角色,一種是咱們的root用戶,還有一種是非root用戶,從安全的角度(我也不知道什麼角度,聽別人說的,暫且相信着吧),遠程訪問最後不要用root用戶

用root用戶訪問:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'IDENTIFIED BY '密碼' WITH GRANT OPTION;

 

這裏容許root用戶遠程的時候,若是出現以下的錯誤,就先去把root用的host改爲%,再運行上面那句話,對於mysql用戶管理這一塊不熟悉的朋友們,請看我另外一篇博客--mysql 用戶及權限管理

 

非root用戶,這裏就要先去建立一個用戶

切換數據庫
mysql>use mysql;

建立用戶(user1:用戶名;%:任意ip,也能夠指定,root默認就是localhost;123456:登陸密碼)
mysql>CREATE USER 'user1'@'%' IDENTIFIED BY '123456';

受權,默認建立的用戶權限是usage,就是無權限,只能登陸而已,(all:全部權限,這裏有select,update等等權限,能夠去搜一下;後面的*.*:指定數據庫.指定表,這裏是全部;to後面就是你剛纔建立的用戶)

mysql>grant all on *.* to 'user1'@'%';

注意:用以上命令受權的用戶不能給其它用戶受權,若是想讓該用戶能夠受權,用如下命令: 
GRANT all ON databasename.tablename TO 'username'@'host' WITH GRANT OPTION; 

 

到這裏mysql8.0就安裝完成啦!密碼也改好啦,遠程也能打開了,因而繼續作一個碼農去啦!

相關文章
相關標籤/搜索