mysql5.7用戶管理及權限分配

    越來越多的項目開始選擇使用mysql5.7版本了。在這裏整理一下mysql5.7用戶管理及權限分配的一些常用命令,以供後期工作中的需要!

mysql for yum源下載:

centos7:https://repo.mysql.com//mysql80-community-release-el7-1.noarch.rpm 

centos6:https://repo.mysql.com//mysql80-community-release-el6-1.noarch.rpm 

  1. mysql5.7默認root用戶密碼:

    mysql5.7在安裝啓動後會默認設置root用戶的密碼,該祕密爲系統隨機產生,可以通過mysql.log日誌文件獲取,如下圖,默認使用yum安裝mysql5.7後的默認日誌路徑:

    image.png

  2. 修改root用戶密碼:

    shell>mysql -u root -p  #輸入第一步獲取的隨機密碼

    mysql>use mysql;

    mysql>update user set authentication_string = password('rootpasswd'), password_expired = 'N', password_last_changed = now() where user = 'root'; #注意:mysql5.7中passwd字段已經更新爲authentication_string,password_expired:在MySQL版本5.6.6版本起,添加了password_expired功能,它允許設置用戶的過期時間;

    mysql>flush privileges;

  3. 如果忘記root用戶密碼,可以參考這篇帖子進行操作:https://www.cnblogs.com/activiti/p/7810166.html 

  4. 用戶授權:

    由於mysql5.7版本不允許直接給用戶授權,所以給指定用戶授權前,先創建該用戶。

    mysql>CREATE USER 'username'@'host' IDENTIFIED BY 'password';   #用戶默認必須含有字母、特殊字符,大小寫、數字、特殊字符的隨機數

    mysql>GRANT ALL PRIVILEGES ON databasename.* TO server@'localhost' IDENTIFIED BY 'passwd' WITH GRANT OPTION;

    mysql>FLUSH PRIVILEGES;

    #如果不想設置的密碼那麼複雜,可以通過下面的命令進行設置

    mysql>set global validate_password_policy=0; 

    或配置文件中修改成:

    [mysqld]

    validate_password_policy=0; 


關於密碼過期問題的探討,請參考這篇帖子:https://blog.csdn.net/chszs/article/details/50651264 

ERROR 1819 (HY000): Your password does not satisfy the current policy requirements 錯誤參考:https://www.cnblogs.com/ivictor/p/5142809.html 



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章