MySQL數據庫之DCL(數據控制語言)


1.MySQL之DCL設置root指定的ip訪問

進入mysql:mysql -uroot -p或者mysql -uroot -h127.0.0.1 -p(host默認為127.0.0.1)

mysql> use mysql; 

mysql> update user set host = 'ip' where user = 'root'; 

mysql> select host, user from user; 

mysql> flush privileges;

2.MySQL之DCL修改密碼以及忘記密碼的解決

MySQL8.0修改密碼問題:MySQL8.0后請使用alter修改用戶密碼,因為在MySQL8.0以后的加密方式為caching_sha2_password,如果使用update修改密碼會給user表中root用戶的authentication_string字段下設置newpassowrd值,當再使用alter user 'root'@'localhost' identified by 'newpassword'修改密碼時會一直報錯,必須清空后再修改,因為authentication_string字段下只能是MySQL加密后的43位字符串密碼,其他的會報格式錯誤,所以在MySQL8.0以后能修改密碼的方法只能是:ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密碼';

MySQL8.0.12重置root密碼

3.MySQL之DCL普通用戶的創建授權以及權限回收

一般地,一個項目對應一個數據庫; 

(1)創建用戶

create user 用戶名@'IP地址' identified by '密碼';

注意:此用戶只能在制定的IP上使用 所有的IP要用%。

(2)用戶授權

grant 權限1,權限2,...... on 數據庫名.* to 用戶名 @IP地址或者%

注意:所有的數據庫就用*.*,所有的權限就用all或者all privileges

(3)撤銷權限

revoke 權限1,權限2,...... on 數據庫名.*from 用戶名 @IP地址或者%

 4.MySQL之DCL用戶權限的查看以及用戶的刪除

(1)查看權限

show grants for 用戶名@IP地址;

(2)刪除用戶

drop user 用戶名@IP地址;

 


免責聲明!

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



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