zoukankan      html  css  js  c++  java
  • 如何创建新用户和授予MySQL中的权限

    原创官网
    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
  • 相关阅读:
    Natas29 Writeup(Perl命令注入、00截断、绕过过滤)
    Natas27 Writeup(mysql溢出截断漏洞)
    Natas26 Writeup(PHP反序列化漏洞)
    Natas25 Writeup(目录遍历、头部注入)
    Natas24 Writeup(strcmp绕过漏洞)
    yum提示Another app is currently holding the yum lock; waiting for it to exit
    linux网站
    fastdfs_5.05下载
    sqlog连接虚拟机mysql服务
    java知识博客网站(一些配置和学习的记录)
  • 原文地址:https://www.cnblogs.com/pywjh/p/10574148.html
Copyright © 2011-2022 走看看