MySQL用户管理

来源:互联网 发布:java条件查询数据库 编辑:程序博客网 时间:2024/06/07 01:33

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

服务器管理


原创粉丝点击