CentOS7 安裝和配置MySQL8全過程記錄


緣由

最近由於工作調整,很多基礎工作都要准備。對我們研發來講,代碼寫完了還需要部署到生產環境。那就無法避免的要部署生產服務器的環境。由於軟件一直會有更新迭代。這里我們就說下MySQL8.0在CentOS7安裝的一個全過程

配置源

由於默認源已經不再有MySQL軟件信息了,所以需要自己去官方下載並安裝

wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm 
yum localinstall  mysql80-community-release-el7-3.noarch.rpm
yum install mysql-community-client mysql-community-server

服務操作

service mysqld start #啟動
service mysqld restart #重啟
service mysqld stop # 停掉


根據上面的介紹,安裝之后我們需要啟動服務

重置root密碼

啟動服務之后,默認會給root賬號設置一個默認密碼。默認密碼就在 /var/log/mysqld.log 中,如下圖

image.png

mysql -uroot -p  #直接按enter健 然后輸入剛才找到的臨時密碼


進去之后發現輸入任何密碼都會提示如下問題。新的版本安全方面做得非常好。情願麻煩點也要保證安全這種思路我是贊同的

ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.


image.png

重置密碼命令

ALTER USER "root"@"localhost" IDENTIFIED BY "xxxxxxx";

#執行如上命令 不巧的是會遇到其他錯誤 ,整個人都不好了,哈哈
#ERROR 1819 (HY000): Your password does not satisfy the current policy requirements


遵循我們遇到問題解決問題的方針堅持不易的執行下去。根據描述可以看出來就是密碼不符合安全級別(默認需要大小寫字母特殊字符)。按照這種規則設置密碼之后就可以執行重置密碼了


大家可以到 http://www.54php.cn/game/tools/index   這里去生成復雜密碼(承諾不會記錄任何密碼信息)


設置密碼的驗證方式

在使用數據庫客戶端工具連接的時候可能會出現如下錯誤。這個是因為8.0使用了更安全的校驗模式

Authentication plugin 'caching_sha2_password' cannot be loaded

這個解決方案有2個。


方案一:

改變你使用賬號的校驗方式 。這種操作牆裂不建議改變root賬號。保證最高權限的賬號安裝是非常重要的

ALTER USER "root"@"localhost"  IDENTIFIED WITH mysql_native_password BY "xxxxxxx";
FLUSH PRIVILEGES;


方案二:


新增加一個賬號使用支持的驗證方式,並嚴格限制該賬號的權限

CREATE USER root_virtual@localhost IDENTIFIED WITH mysql_native_password  BY 'yyyy';


用戶授權和回收

GRANT select,insert,update ON beian_cms_db.* TO 'root_virtual'@'localhost' WITH GRANT OPTION;

PS: 權限包括 select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file

參考文章


原文地址: CentOS7 安裝和配置MySQL8全過程記錄
標簽: centos    linux    mysql   

智能推薦


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM