原创官网
http://www.howtoing.com/how-to-create-a-new-user-and-grant-permissions-in-mysql/

关于MySQL

MySQL是一个开源数据库管理软件,可帮助用户存储,组织和以后检索数据。 它有多种选项来授予特定用户在表和数据库中的细微的权限 - 本教程将简要介绍一些选项。

如何创建新用户

MySQL的教程的第1部分中,我们做了所有在MySQL中编辑root用户,拥有完全访问所有的数据库。 但是,在可能需要更多限制的情况下,可以使用自定义权限创建用户。

让我们从在MySQL shell中创建一个新用户开始:

CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password';

可悲的是,此时newuser没有权限对数据库执行任何操作。 事实上,如果newuser甚至尝试登录(使用密码,密码),他们将无法访问MySQL shell。

因此,首先要做的是为用户提供访问他们将需要的信息的权限。

GRANT ALL PRIVILEGES ON * . * TO 'newuser'@'localhost';

此命令中的星号分别表示它们可以访问的数据库和表(这些命令允许用户在所有数据库和表中读取,编辑,执行和执行所有任务)。

一旦您确定了要为新用户设置的权限,请务必重新加载所有权限。

FLUSH PRIVILEGES;

您的更改现已生效。

如何授予不同的用户权限

以下是用户可以享受的其他常见可能权限的简短列表。

  • ALL PRIVILEGES - 正如我们前面所看到的,这将允许MySQL用户访问指定的数据库(或者如果系统中没有选择数据库)
  • CREATE-允许他们创建新的表或数据库
  • DROP-允许他们删除表或数据库
  • DELETE-允许他们从表中删除行
  • INSERT-允许它们向表中插入行
  • SELECT-允许他们使用Select命令来读取数据库
  • UPDATE-允许他们更新表行
  • GRANT OPTION - 允许他们授予或删除其他用户的权限

要向特定用户提供权限,可以使用此框架:

 GRANT [type of permission] ON [database name].[table name] TO ‘[username]’@'localhost’;

如果要向其授予对任何数据库或任何表的访问权限,请确保在数据库名称或表名称的地方放置星号(*)。

每次更新或更改权限时,请务必使用Flush Privileges命令。

如果您需要撤消权限,则结构与授予的结构几乎相同:

 REVOKE [type of permission] ON [database name].[table name] FROM ‘[username]’@‘localhost’;

正如您可以使用DROP删除数据库一样,您可以使用DROP完全删除用户:

 DROP USER ‘demo’@‘localhost’;

要测试您的新用户,请通过键入注销

 quit 

并使用此命令在终端中重新登录:

mysql -u [username]-p

如何创建新用户和授予MySQL中的权限的更多相关文章

  1. Mysql 5.6创建新用户并授权指定数据库相应权限

    一.环境 Centos 6.9 Mysql 5.6.40 二.步骤 1.使用root用户登陆mysql mysql -uroot -p 输入密码: 2.创建新用户 CREATE USER 'user' ...

  2. oracle创建新用户并授予权限

    1.同时按下WIN键+R键打开“运行”,输入cmd,回车进入命令提示符 2.输入“sqlplus”后按下回车键,提示输入用户名,输入“sys as sysdba”,按下回车,输入口令,即四-13中设置 ...

  3. Linux中创建新用户并赋给指定文件权限

    工作中用到了,写篇日志总结一下. 创建新的用户: 第一种方式: 创建用户: adduser name 创建密码: passwd name(回车后出现修改密码的提示) 该方式创建的用户目录默认在home ...

  4. MySQL中实现DROP USER if EXISTS `test`,即创建新用户时检测用户是否存在

    MySQL中实现DROP USER if EXISTS `test`,即创建新用户时检测用户是否存在    版权声明:本文为博主原创文章,欢迎大家转载,注明出处即可.有问题可留言,会尽快回复,欢迎探讨 ...

  5. Mysql创建新用户后无法登录,提示 Access denied for user 'username'@'localhost' (using password: YES)

    MySQL创建新用户后无法登录,提示 Access denied for user 'username'@'localhost' (using password: YES) ,多半是因为存在匿名用户, ...

  6. mysql 权限分配及创建新用户

    前言 本文主要是介绍mysql创建新用户命令及赋予权限等命令,为了便于理解,文中会给出相关示例.通常情况下,创建用户,修改mysql密码,授权,是需要有mysql里的root权限. 1.创建用户: / ...

  7. linux系统下mysql跳过密码验证登录和创建新用户

    修改MySQL的登录设置: # vi /etc/my.cnf 在[mysqld]的段中加上一句:skip-grant-tables 例如: [mysqld] datadir=/var/lib/mysq ...

  8. mysql创建新用户及新用户不能本地登陆的问题

    最近在搭建hadoop集群,主节点上面安装的MySQL数据库,对着方面不熟悉,为hive.Ooize等服务统一使用的root账号和密码,为了安全一些库对于某些用户是不可见的,所以需要针对不同的服务设置 ...

  9. ubuntu18.04安装mysql以及重置密码创建新用户

    1.安装mysqlsudo apt-get install mysql-serversudo apt-get install mysql-clientsudo apt-get install libm ...

随机推荐

  1. Netty,Thrifty

    小白科普:Netty有什么用? https://mp.weixin.qq.com/s/PTKnRQ_hLf8BBPYnywLenA Thrifty 是基于.net Attribute 实现了标准 Th ...

  2. 《Effective C++》笔记:III(转载)

    转自:http://www.cnblogs.com/destino74/p/3960802.html 条款5:Know what functions C++ silently writes and c ...

  3. java运行jdk连接mysql出现了:Establishing SSL connection without server's identity verification is not recommended

    注意:出现这类提示也不会影响对数据库的增删改查操作,所以不用紧张.. 在运行练习时出现下面的错误信息提示: Establishing SSL connection without server's i ...

  4. hdu 1043 Eight

    欸我一直以为双向bfs是搜完一半再搜另一半呢,妹想到是两个一起搜 然后队列里放的结构体里不能直接存答案,所以做一个邻接表一样的东西,直接指向需要的字符即可 记录状态用康托展开来hash 以及居然是多组 ...

  5. ionic2.1.0 --beta3版本新建页面做弹框时遇到的问题

    新建的页面需要在app.module.ts文件中定义.不然制作页面弹出效果是会报错.

  6. srand()

    //第一次:5 0 第二次:5 16 srand(); //seed为常数,则每次运行产生的随机数一样 printf(); //产生的随机数都是一样的,都是5 srand(time(NULL)); p ...

  7. [Usaco2011 Jan]道路和航线

    Description Farmer John正在一个新的销售区域对他的牛奶销售方案进行调查.他想把牛奶送到T个城镇 (1 <= T <= 25,000),编号为1T.这些城镇之间通过R条 ...

  8. ACM_排序

    除了sort,你还会什么 Time Limit: 1000/500ms (Java/Others) Problem Description: 给出若干人的年龄(1~100之间的整数),把它们按照从小到 ...

  9. Linq 内连接和外连接(转载)

    一.内连接 Model1Container model = new Model1Container(); //内连接 var query = from s in model.Student join ...

  10. [译]libcurl错误码

    CURLcode Almost all "easy" interface functions return a CURLcode error code. No matter wha ...