RError.com

RError.com Logo RError.com Logo

RError.com Navigation

  • 主页

Mobile menu

Close
  • 主页
  • 系统&网络
    • 热门问题
    • 最新问题
    • 标签
  • Ubuntu
    • 热门问题
    • 最新问题
    • 标签
  • 帮助
主页 / 问题 / 567603
Accepted
Vyacheslav Potseluyko
Vyacheslav Potseluyko
Asked:2020-09-18 21:54:44 +0000 UTC2020-09-18 21:54:44 +0000 UTC 2020-09-18 21:54:44 +0000 UTC

如何创建一个只有一个数据库权限的用户?

  • 772

我这样做:

$ mysql -u root -p
mysql> create database your_db_name;
mysql> grant usage on *.* to your_user@localhost identified by 'your_user_password';
mysql> grant all privileges on your_db_name.* to your_user@localhost ;

第三行是做什么的?即,什么是*.*,什么是db_name.*?

如何正确创建一个只有一个数据库权限的mysql用户?

mysql
  • 1 1 个回答
  • 10 Views

1 个回答

  • Voted
  1. Best Answer
    MaxU - stop genocide of UA
    2020-09-19T00:03:02Z2020-09-19T00:03:02Z

    从码头:

    priv_level: {
        *   
    | *.*
    | db_name.*
    | db_name.tbl_name
    | tbl_name
    | db_name.routine_name
    }
    

    特权级别

    可以为整个数据库、表或例程或表中的各个列全局设置权限。某些权限只能设置在某些级别。

    • 使用*.*for priv_level授予全局权限。全局权限包括管理数据库和管理用户帐户的权限,以及所有表、函数和过程的权限。全局权限存储在 mysql.user 表中。

    • db_name.*使用priv_level授予数据库权限*,或仅使用默认数据库。数据库权限包括创建表和函数的权限,以及数据库中所有表、函数和过程的权限。数据库权限存储在 mysql.db 表中。使用 db_name.tbl_name 为 priv_level 授予表权限,或仅使用 tbl_name 指定默认数据库中的表。TABLE 关键字是可选的。

    • 表权限包括选择和更改表中数据的能力。可以为个别列授予某些表权限。

    • 通过为 priv_level 指定一个表并在权限类型后提供列列表来授予列权限。它们允许您精确控制用户可以选择和更改表中的哪些列。

    • 使用 FUNCTION for priv_level 授予 函数权限db_name.routine_name,或仅使用 FUNCTION routine_name 指定默认数据库中的函数。

    • 特权过程使用 PROCEDURE 授予db_name.routine_namepriv_level,或仅使用 PROCEDURE routine_name 指定默认数据库中的过程。


    即,什么是. ,什么是 db_name.*?

    *.*- 所有数据库中的所有对象(在本例中)

    创建只有权访问一个数据库的 mysql 用户的正确方法是什么?

    grant usage on db_name.* to your_user@localhost identified by 'your_user_password';
    

    或者如果您需要在一个数据库中授予所有权限:

    grant all privileges on db_name.* to your_user@localhost identified by 'user_password';
    
    • 3

相关问题

Sidebar

Stats

  • 问题 10021
  • Answers 30001
  • 最佳答案 8000
  • 用户 6900
  • 常问
  • 回答
  • Marko Smith

    如何停止编写糟糕的代码?

    • 3 个回答
  • Marko Smith

    onCreateView 方法重构

    • 1 个回答
  • Marko Smith

    通用还是非通用

    • 2 个回答
  • Marko Smith

    如何访问 jQuery 中的列

    • 1 个回答
  • Marko Smith

    *.tga 文件的组重命名(3620 个)

    • 1 个回答
  • Marko Smith

    内存分配列表C#

    • 1 个回答
  • Marko Smith

    常规赛适度贪婪

    • 1 个回答
  • Marko Smith

    如何制作自己的自动完成/自动更正?

    • 1 个回答
  • Marko Smith

    选择斐波那契数列

    • 2 个回答
  • Marko Smith

    所有 API 版本中的通用权限代码

    • 2 个回答
  • Martin Hope
    jfs *(星号)和 ** 双星号在 Python 中是什么意思? 2020-11-23 05:07:40 +0000 UTC
  • Martin Hope
    hwak 哪个孩子调用了父母的静态方法?还是不可能完成的任务? 2020-11-18 16:30:55 +0000 UTC
  • Martin Hope
    Qwertiy 并变成3个无穷大 2020-11-06 07:15:57 +0000 UTC
  • Martin Hope
    koks_rs 什么是样板代码? 2020-10-27 15:43:19 +0000 UTC
  • Martin Hope
    user207618 Codegolf——组合选择算法的实现 2020-10-23 18:46:29 +0000 UTC
  • Martin Hope
    Sirop4ik 向 git 提交发布的正确方法是什么? 2020-10-05 00:02:00 +0000 UTC
  • Martin Hope
    Arch ArrayList 与 LinkedList 的区别? 2020-09-20 02:42:49 +0000 UTC
  • Martin Hope
    iluxa1810 哪个更正确使用:if () 或 try-catch? 2020-08-23 18:56:13 +0000 UTC
  • Martin Hope
    faoxis 为什么在这么多示例中函数都称为 foo? 2020-08-15 04:42:49 +0000 UTC
  • Martin Hope
    Pavel Mayorov 如何从事件或回调函数中返回值?或者至少等他们完成。 2020-08-11 16:49:28 +0000 UTC

热门标签

javascript python java php c# c++ html android jquery mysql

Explore

  • 主页
  • 问题
    • 热门问题
    • 最新问题
  • 标签
  • 帮助

Footer

RError.com

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

帮助

© 2023 RError.com All Rights Reserve   沪ICP备12040472号-5