Mysql纯命令行添加用户

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 创建用户: 命令: 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 .
相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
目录
相关文章
|
存储 缓存 关系型数据库
2.3 【MySQL】命令行和配置文件中启动选项的区别
2.3 【MySQL】命令行和配置文件中启动选项的区别
153 0
|
3月前
|
存储 关系型数据库 MySQL
使用命令行cmd查询MySQL表结构信息技巧分享。
掌握了这些命令和技巧,您就能快速并有效地从命令行中查询MySQL表的结构信息,进而支持数据库维护、架构审查和优化等工作。
379 9
|
3月前
|
SQL 关系型数据库 MySQL
MySQL数据库命令行操作_mysql命令行
下面帮你整理一份MySQL数据库命令行操作的常用命令总结,适合日常开发和管理时快速使用。
|
存储 SQL 关系型数据库
Mysql学习笔记(二):数据库命令行代码总结
这篇文章是关于MySQL数据库命令行操作的总结,包括登录、退出、查看时间与版本、数据库和数据表的基本操作(如创建、删除、查看)、数据的增删改查等。它还涉及了如何通过SQL语句进行条件查询、模糊查询、范围查询和限制查询,以及如何进行表结构的修改。这些内容对于初学者来说非常实用,是学习MySQL数据库管理的基础。
342 6
|
关系型数据库 MySQL 数据库
mysql添加用户并设置数据库权限
mysql添加用户并设置数据库权限
169 1
|
关系型数据库 MySQL
MySQL 服务的启动与停止(通过命令行的方式)
MySQL 服务的启动与停止(通过命令行的方式)
243 0
|
关系型数据库 MySQL 测试技术
MySQL实战基础知识入门(1):登录数据库命令行
MySQL实战基础知识入门(1):登录数据库命令行
189 0
|
关系型数据库 MySQL 数据库
MySQL命令行有哪些操作步骤?
【5月更文挑战第22天】MySQL命令行有哪些操作步骤?
236 1
|
关系型数据库 MySQL 数据库
mysql一些常用命令行操作
mysql一些常用命令行操作
80 0
|
SQL 数据可视化 关系型数据库
MySQL命令行与可视化工具
MySQL命令行与可视化工具

推荐镜像

更多