Mysql纯命令行添加用户

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 创建用户: 命令: 1 CREATE USER 'username'@'host' IDENTIFIED BY 'password'; 说明:username – 你将创建的用户名, host – 指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost,  如果想让该用户可以从任意远程主机登陆,可以使用通

创建用户:

命令:

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

说明:username – 你将创建的用户名, host – 指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost,  如果想让该用户可以从任意远程主机登陆,可以使用通配符%. password –  该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器.

例子:

1
2
3
4
5
CREATE  USER  'dog' @ 'localhost'  IDENTIFIED  BY  '123456'
CREATE  USER  'pig' @ '192.168.1.101_'  IDENDIFIED  BY  '123456'
CREATE  USER  'pig' @ '%'  IDENTIFIED  BY  '123456'
CREATE  USER  'pig' @ '%'  IDENTIFIED  BY  ''
CREATE  USER  'pig' @ '%' ;

授权:

命令:

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

说明: privileges – 用户的操作权限,如SELECT , INSERT , UPDATE  等(详细列表见该文最后面).如果要授予所的权限则使用ALL.;databasename –  数据库名,tablename-表名,如果要授予该用户对所有数据库和表的相应操作权限则可用*表示, 如*.*.
例子:

1
2
GRANT  SELECT INSERT  ON  test. user  TO  'pig' @ '%'
GRANT  ALL  ON  *.*  TO  'pig' @ '%' ;

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

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

设置与更改用户密码

命令:

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

如果是当前登陆用户用

1
SET  PASSWORD  PASSWORD ( "newpassword" );

撤销用户权限 

命令:

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

说明: privilege, databasename, tablename – 同授权部分.
例子

1
REVOKE  SELECT  ON  *.*  FROM  'pig' @ '%' ;

注意: 假如你在给用户’pig’@'%’授权的时候是这样的(或类似的):GRANT SELECT ON test.user TO  ‘pig’@'%’, 则在使用REVOKE SELECT ON *.* FROM  ‘pig’@'%’;命令并不能撤销该用户对test数据库中user表的SELECT 操作.相反,如果授权使用的是GRANT SELECT ON  *.* TO ‘pig’@'%’;则REVOKE SELECT ON test.user FROM  ‘pig’@'%’;命令也不能撤销该用户对test数据库中user表的Select 权限.

具体信息可以用命令SHOW GRANTS FOR ‘pig’@'%’; 查看.

删除用户

命令:

1
DROP  USER  ‘username’@'host’;

一个典型的数据库建表, 建用户过程:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
创建用于localhost连接的用户并指定密码 
mysql>  create  user  'pcom' @ 'localhost'  identified  by  'aaa7B2249'
Query OK, 0  rows  affected (0.00 sec) 
     
创建数据库 
mysql>  create  database  pcom  default  character  set  utf8  collate  utf8_bin; 
Query OK, 1 row affected (0.00 sec) 
     
给本地用户授权, 这里不需要指定密码 
mysql>  grant  all  on  pcom.*  to  'pcom' @ 'localhost'
Query OK, 0  rows  affected (0.00 sec) 
     
给其他IP地址下的用户授权, 注意: 这里必须指定密码, 否则就可以无密码访问 
mysql>  grant  all  on  pcom.*  to  'pcom' @ '192.168.0.0/255.255.0.0'  identified  by  'aaa7B2249'
Query OK, 0  rows  affected (0.00 sec) 
     
同理 
mysql>  grant  all  on  pcom.*  to  'pcom' @ '172.20.0.0/255.255.0.0'  identified  by  'aaa7B2249'
Query OK, 0  rows  affected (0.00 sec) 
     
Done!

附表:在MySQL中的操作权限

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
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  SELECT …  INTO  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 .
相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
9月前
|
存储 缓存 关系型数据库
2.3 【MySQL】命令行和配置文件中启动选项的区别
2.3 【MySQL】命令行和配置文件中启动选项的区别
41 0
|
1月前
|
关系型数据库 MySQL 数据库
mysql添加用户并设置数据库权限
mysql添加用户并设置数据库权限
|
6天前
|
SQL 数据可视化 关系型数据库
MySQL命令行与可视化工具
MySQL命令行与可视化工具
|
1月前
|
关系型数据库 MySQL 数据库
MySQL命令行有哪些操作步骤?
【5月更文挑战第22天】MySQL命令行有哪些操作步骤?
31 1
|
19天前
|
SQL Oracle 关系型数据库
mysql和oracle 命令行执行sql文件 数据库执行sql文件 执行sql语句
mysql和oracle 命令行执行sql文件 数据库执行sql文件 执行sql语句
|
19天前
|
关系型数据库 MySQL Linux
Linux下mysql添加用户并授权数据库权限
Linux下mysql添加用户并授权数据库权限
33 0
|
11月前
|
存储 关系型数据库 MySQL
MySQL下载与安装、mysql服务启动与停止、mysql使用cmd命令行登录、SQLyog下载与安装,sqlyog登录与操作mysql(一)
MySQL下载与安装、mysql服务启动与停止、mysql使用cmd命令行登录、SQLyog下载与安装,sqlyog登录与操作mysql
256 0
|
1月前
|
关系型数据库 MySQL Java
Mysql命令行配置(防误区)
Mysql命令行配置(防误区)
|
1月前
|
存储 关系型数据库 MySQL
|
10月前
|
关系型数据库 MySQL
MySQL 服务的启动与停止(通过命令行的方式)
MySQL 服务的启动与停止(通过命令行的方式)
73 0