mysql創建賬號及管理權限


mysql創建賬號及管理權限

0、mysql版本8.0.15,服務器版本:RHEL 6.5

1、創建用戶名密碼

mysql> use mysql;
mysql> create user 'username'@'%' identified  by 'password';

2、賦權

mysql> grant all privileges on *.* to 'username'@'%' with grant option;(授權全部數據庫,***危險操作***,(查看PS2))

3、刷新權限

mysql> flush privileges;

PS1:創建用戶密碼時候報錯如下

mysql> create user 'username'@'%' identified  by 'password';
ERROR 3009 (HY000): Column count of mysql.user is wrong. Expected 51, found 50. Created with MySQL 80013, now running 80015. Please use mysql_upgrade to fix this error.

百度后是mysql升級后報錯,重新升級,之后可以順利創建mysql用戶

[root@localhost bin]# cd /usr/local/mysql/bin/
[root@localhost bin]# mysql -uroot -proot
(執行各種檢查升級)

PS2:回收權限

mysql> REVOKE all privileges ON *.* FROM 'username'@'%';(回收所有權限)
mysql> flush privileges;(刷新權限)
mysql> grant all privileges on databasename.* to 'username'@'%' with grant option;(將databasename數據庫所有權限賦給username用戶)
mysql> flush privileges;(刷新權限)

PS3:賦權命令拆分分析

命令:grant all privileges on databasename.* to 'username'@'%' with grant option
grant/REVOKE                 賦權/回收權限
all privileges                    所有權限,可以寫成SELECT, INSERT, UPDATE, REFERENCES,
									DELETE, CREATE, DROP, ALTER, INDEX,
                                                                       CREATE VIEW, SHOW VIEW
on
databasename.*               數據庫名.數據表 *代表所有
to 
'username'@'%';              '用戶名'@'所有ip訪問';  %代表所有ip訪問,可以寫具體ip、localhost


免責聲明!

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



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