MySQL添加用户(用户管理)–MySQL 系列教程之(四)

本文目录
[隐藏]

本篇文章 Linux大学 来为大家介绍一下MySQL用户管理的相关知识。

MySQL添加用户(用户管理)

一、语法

1)添加用户

CREATE USER 'username'@'host' IDENTIFIED BY 'password';

说明:

username – 用户名。

host – 指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost,如果想让该用户可以从任意远程主机登陆,使用通配符%。

password –  该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器。

2)为用户赋权

在添加完用户之后,一般还需要为用户赋权,否则添加用户也就没有什么意义了。

GRANT privileges ON databasename.tablename TO 'username'@'host'

说明:

privileges – 用户的操作权限,如SELECT , INSERT , UPDATE等(详细列表见该文最后面),如果要授予所 的权限则使用ALL。

databasename –  数据库名。

tablename-表名,如果要授予该用户对所有数据库和表的相应操作权限则可用* 表示, 如*.*。

3)撤销用户权限

REVOKE privilege ON databasename.tablename FROM 'username'@'host';

4)修改密码

SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');

5)刷新数据库

在执行完命令后,别忘了刷新数据库使其生效。

flush privileges;

二、实例

添加一个名为test的用户,密码为123,并且有增、删、改、查的权限:

1)添加用户

mysql> CREATE USER 'test'@'localhost' IDENTIFIED BY '123';   
Query OK, 0 rows affected (0.00 sec)

2)为用户赋权

mysql> GRANT ALL ON *.* TO 'test'@'localhost';
Query OK, 0 rows affected, 1 warning (0.00 sec)

注意:用以上命令授权的用户不能给其它用户授权,如果想让该用户可以授权,用以下命令:

GRANT privileges ON databasename.tablename TO 'username'@'host' WITH GRANT OPTION

3)修改密码为456

mysql> SET PASSWORD FOR 'test'@'localhost' = PASSWORD('456');        
Query OK, 0 rows affected, 1 warning (0.00 sec)

4)删除用户

mysql> DROP USER test@'localhost';
Query OK, 0 rows affected (0.00 sec)

5)完成操作后,刷新数据库

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

三、在MySQL中的操作权限

ALTER
Allows use of ALTER TABLE. 
    
ALTER ROUTINE 
Alters or drops stored routines. 
    
CREATE
Allows use of CREATE TABLE. 
    
CREATE ROUTINE 
Creates stored routines. 
    
CREATE TEMPORARY TABLE
Allows use of CREATE TEMPORARY TABLE. 
    
CREATE USER
Allows use of CREATE USER, DROP USER, RENAME USER, and REVOKE ALL PRIVILEGES. 
    
CREATE VIEW
Allows use of CREATE VIEW. 
    
DELETE
Allows use of DELETE. 
    
DROP
Allows use of DROP TABLE. 
    
EXECUTE
Allows the user to run stored routines. 
    
FILE 
Allows use of SELECTINTO OUTFILE and LOAD DATA INFILE. 
    
INDEX
Allows use of CREATE INDEX and DROP INDEX. 
    
INSERT
Allows use of INSERT. 
    
LOCK TABLES 
Allows use of LOCK TABLES on tables for which the user also has SELECT privileges. 
    
PROCESS 
Allows use of SHOW FULL PROCESSLIST. 
    
RELOAD 
Allows use of FLUSH. 
    
REPLICATION 
Allows the user to ask where slave or master 
    
CLIENT 
servers are. 
    
REPLICATION SLAVE 
Needed for replication slaves. 
    
SELECT
Allows use of SELECT. 
    
SHOW DATABASES 
Allows use of SHOW DATABASES. 
    
SHOW VIEW
Allows use of SHOW CREATE VIEW. 
    
SHUTDOWN 
Allows use of mysqladmin shutdown. 
    
SUPER 
Allows use of CHANGE MASTER, KILL, PURGE MASTER LOGS, and SET GLOBAL SQL statements. Allows mysqladmin debug command. Allows one extra connection to be made if maximum connections are reached. 
    
UPDATE
Allows use of UPDATE. 
    
USAGE 
Allows connection without any specific privileges.
查看同系列相邻文章:<< MySQL服务管理–MySQL 系列教程之(三)MySQL管理命令–MySQL 系列教程之(五) >>

您可以选择一种方式赞助本站

支付宝扫一扫赞助

微信钱包扫描赞助

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: