1.MySQL的用户管理
MySQL的用户信息都保存在数据库mysql的user表中,因此MySQL的用户操作实际上就是对mysql.user表的增删查改的操作,下图中展示了mysql.user的表结构:
从图中可以看到,在该表中可以设置用户的所有信息,包括用户名,密码,权限等等。
Notice:password字段是通过PASSWORD('')函数生成的。
除了修改user表的方式来操作MySQL用户外,MySQL有一些额外的命令用于创建或删除MySQL用户。
2.创建用户
2.1.CREATE USER创建无权限用户
语法:CREATE USER user [IDENTIFIED BY [PASSWORD] 'password'][, user [IDENTIFIED BY [PASSWORD] 'password']] ...
示例:create user test@localhost identified by 'test';//创建一个用户名为test,密码为test的用户,该用户没有任何权限
2.2.GRANT方式创建带权限用户
语法:GRANT [ALL | [SELECT,DELETE...]] PRIVILEGES ON {databasename|*}.{tablename|*}... TO username IDENTIFIED BY password;
示例:GRANT ALL PRIVILEGES ON *.* TO test@% IDENTIFIED BY 'test';
3.删除用户
语法:DROP USER username;//username指的是带host的username,即test@localhost,如果不指定host,host就为%.
示例:DROP USER test@localhost;
4.MySQL权限说明
4.1查看某个用户的权限
mysql> show grants for root@localhost;
4.2各权限解释
|
权限 |
列 |
说明 |
|
CREATE |
Create_priv |
创建数据库和表 |
|
DROP |
Drop_priv |
抛弃(删除)数据库和表 |
|
GRANT OPTION |
Grant_priv |
数据库、表或保存的程序 |
|
REFERENCES |
References_priv |
未使用 |
|
ALTER |
Alter_priv |
修改表和索引 |
|
DELETE |
Delete_priv |
表 |
|
INDEX |
Index_priv |
创建或抛弃索引 |
|
INSERT |
Insert_priv |
向表中插入新行 |
|
SELECT |
Select_priv |
检索表中的记录 |
|
UPDATE |
Update_priv |
修改现存表记录 |
|
CREATE VIEW |
Create_view_priv |
视图 |
|
SHOW VIEW |
Show_view_priv |
视图 |
|
ALTER ROUTINE |
Alter_routine_priv |
保存的程序 |
|
CREATE ROUTINE |
Create_routine_priv |
保存的程序 |
|
EXECUTE |
Execute_priv |
保存的程序 |
|
FILE |
File_priv |
读或写服务器上的文件 |
|
CREATE TEMPORARY TABLES |
Create_tmp_table_priv |
服务器管理 |
|
LOCK TABLES |
Lock_tables_priv |
服务器管理 |
|
CREATE USER |
Create_user_priv |
服务器管理 |
|
PROCESS |
Process_priv |
查看服务器中执行的线程信息或杀死线程 |
|
RELOAD |
Reload_priv |
重载授权表或清空日志、主机缓存或表缓存 |
|
REPLICATION CLIENT |
Repl_client_priv |
服务器管理 |
|
REPLICATION SLAVE |
Repl_slave_priv |
服务器管理 |
|
SHOW DATABASES |
Show_db_priv |
服务器管理 |
|
SHUTDOWN |
Shutdown_priv |
关闭服务器 |
|
SUPER |
Super_priv |
服务器管理 |
MySQL用户管理与权限详解
本文介绍了MySQL中如何进行用户管理,包括创建、删除用户及设置权限等操作,并详细解释了各种权限的作用。
4694

被折叠的 条评论
为什么被折叠?



