创建MySQL用户帐户和授予权限

创建一个新的MySQL用户帐户

向MySQL用户帐户授予特权

显示MySQL用户帐户权限

从MySQL用户帐户撤消权限

删除现有的MySQL用户帐户

测试对数据库的访问

MySQL是最流行的开源关系数据库管理系统。MySQL服务器允许我们创建许多用户帐户并授予适当的特权,以便用户可以访问和管理数据库。

所有命令均以root或管理用户身份在MySQL Shell中执行。创建用户帐户并定义其权限所需的最低特权为CREATE USER和GRANT。

要访问MySQL Shell,请键入以下命令,并在出现提示时输入您的MySQL root用户密码:mysql -u root -p

如果您尚未为MySQL超级用户设置密码,则可以忽略该-p开关。

创建一个新的MySQL用户帐户

千万不要将Web应用程序配置为使用root用户访问MySQL。应该使用单独的,特定于应用程序的用户。首先以管理用户身份登录MySQL。

MySQL中的用户帐户由用户名和主机名部分组成。

要创建一个新的MySQL用户帐户,请运行以下命令:

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

将占位符值替换为newuser您想要的新用户名,并将占位符值user_password替换为用户密码。

在上面的命令中,hostname部分设置为localhost,这意味着用户将只能从本地主机(即从运行MySQL Server的系统)连接到MySQL服务器。

要授予其他主机的访问权限,例如,要授予IP为10.8.0.5的计算机具有访问权限,请运行:CREATE USER 'newuser'@'10.8.0.5' IDENTIFIED BY 'user_password';

要创建可以从任何主机进行连接的用户,请使用’%'通配符作为主机部分:CREATE USER 'newuser'@'%' IDENTIFIED BY 'user_password';

向MySQL用户帐户授予特权

可以向用户帐户授予多种类型的特权。您可以在此处找到MySQL支持的特权的完整列表。

最常用的特权是:

ALL PRIVILEGES –授予用户帐户所有特权。

CREATE–允许用户帐户创建数据库和表。

DROP-允许用户帐户删除数据库和表。

DELETE -允许用户帐户从特定表中删除行。

INSERT -允许用户帐户在特定表中插入行。

SELECT –允许用户帐户读取数据库。

UPDATE -允许用户帐户更新表行。

要向用户帐户授予特定特权,可以使用以下语法:

GRANT permission1, permission2 ON database_name.table_name TO 'database_user'@'localhost';

例如:

授予特定数据库上用户帐户的所有特权:

GRANT ALL PRIVILEGES ON database_name.* TO 'database_user'@'localhost';

授予所有数据库用户帐户的所有特权:

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

授予用户帐户对数据库中特定表的所有特权:

GRANT ALL PRIVILEGES ON database_name.table_name TO 'database_user'@'localhost';

在特定数据库上为用户帐户授予多个特权:

GRANT SELECT, INSERT, DELETE ON database_name.* TO database_user@'localhost';

本人就授予了名为linkai的用户账号在任何计算机上对所有数据库的特权

mysql> GRANT ALL PRIVILEGES ON *.* TO 'linkai'@'%' with grant option;

Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;(然后刷新一下)

Query OK, 0 rows affected (0.00 sec)

显示MySQL用户帐户权限

要查找授予特定MySQL用户帐户的特权,请使用以下SHOW GRANTS语句:

SHOW GRANTS FOR 'database_user'@'localhost';

±--------------------------------------------------------------------------+

| Grants for database_user@localhost |

±--------------------------------------------------------------------------+

| GRANT USAGE ON . TO ‘database_user’@‘localhost’ |

| GRANT ALL PRIVILEGES ON database_name.* TO ‘database_user’@‘localhost’ |

±--------------------------------------------------------------------------+

2 rows in set (0.00 sec)

其中,database_name和localhost自己替换。

从MySQL用户帐户撤消权限

从用户帐户撤消一项或多项特权的语法与授予特权时几乎相同。

例如,要撤消特定数据库上用户帐户的所有特权,请使用以下命令:

REVOKE ALL PRIVILEGES ON database_name.* FROM 'database_user'@'localhost';

删除现有的MySQL用户帐户

要删除MySQL用户帐户,请使用以下DROP USER语句:

DROP USER 'user'@'localhost'

上面的命令将删除用户帐户及其特权。

测试对数据库的访问

mysql -u database_name -p -h localhost database_name

例如:

以user_1用户身份登录mysql_创建MySQL用户帐户和授予权限相关推荐

  1. 用户 'sa' 登录失败。原因: 该帐户被禁用。的解决方案

    用户 'sa' 登录失败.原因: 该帐户被禁用 打开security(安全性) -- logins(登录名) ,右键选中sa,选择properties(属性),点击Status(状态)切换到状态面板, ...

  2. 如何以用户身份登录MySQL_解析:如何以普通用户的身份运行 MySQL

    在Windows平台上,能够使用普通用户账户以Windows服务方式运行服务器. 在Unix平台上,不是任何用户都能启动并运行MySQL服务器mysqld的.但是,处于安全方面的原因,应避免以Unix ...

  3. linuxl下创建mysql用户和组_实验四 Linux下用户和组的管理

    Linux命令行界面下的用户和组的管理 groupadd创建用户组: # groupadd [-g gid [-o]] [-r] [-f] group 参数: -g gid: group's ID 值 ...

  4. linuxl下创建mysql用户和组_Linux中用户与用户组管理

    1.基础知识 Linux作为一种多用户的操作系统(服务器系统),允许多个用户同时登陆到系统上,并响应每个用户的请求. 任何需要使用操作系统的用户,都需要一个系统账号,账号分为:管理员账号与普通用户账号 ...

  5. mysql 使用手册 权限_创建MySQL用户及用户权限管理

    通过grant [aɪ'dɛntɪfaɪd] 命令创建用户并授权 grant命令简单语法 grant all privileges on dbname.* to username@localhost  ...

  6. sharepoint2013以其他用户身份登录

    在我新建了SharePoint 2013的网站后, 发现界面与2010有一些不同,比如缺少了"以其他用户身份登录",这给我的测试带来很大不便. 在找了一些国外网站后,终于找到了解决 ...

  7. linux .desktop权限,如何在Ubuntu Xenial Xerus 16.04 Linux Desktop上以root用户身份登录

    您可能已经注意到,默认情况下,Ubuntu Xenial Xerus 16.04 Linux Desktop不具备以root管理员用户身份登录的功能.每次尝试以root用户身份在终端上登录都会导致Lo ...

  8. 26:第三章:开发通行证服务:9:【注册/登录】接口:验证码校验OK后,先根据手机号去查查该用户是否已存在,如果用户不存在就创建这个用户;(tkmybatis查询构建查询条件,雪花算法,枚举类等等)

    说明: (1)本篇博客内容:继续开发[注册/登录]接口: ● 在[25:第三章:开发通行证服务:8:[注册/登录]接口:接收并校验"手机号和验证码"参数:]中,[注册/登录]接口, ...

  9. mysql 如何修改用户密码_如何更改MySQL用户密码

    在本教程中,我们将向您展示如何更改MySQL用户密码.这些说明应适用于任何现代Linux发行版,例如Ubuntu 18.04和CentOS7. 先决条件 根据系统上运行的MySQL或MariaDB服务 ...

最新文章

  1. 大数据能力提升项目| 学生成果展系列之一
  2. linux libssh2 实例
  3. nginx源码安装教程(CentOS)
  4. c++ const 类型检查
  5. 2014 ACM/ICPC 鞍山赛区网络赛(清华命题)
  6. uvalive5796(图论、桥、并查集)
  7. 飞桨领航团邀你出战!黑客松线下48H Coding Party等你来
  8. 美登杯”上海市高校大学生程序设计邀请赛 Problem E 、 小 花梨 的数组 (线段树)...
  9. Material Design设计技巧
  10. C Linux 文件加锁 lock fcntl
  11. 仿百篮应用市场(已开源)
  12. 【推荐】到伊甸园玩体感游戏吧!
  13. LeetCode 一题多解 | 53. 最大子数组和:五种解法完全手册
  14. 通俗易懂的欧拉回路——哥尼斯堡七桥问题
  15. esd win10 /win8 最简单快速的安装方法 双系统、vhd、wimboot+VHD
  16. AutoSar CAN网络管理状态机理解
  17. 2022《中国企业敏捷实践白皮书》调研全面启动
  18. Instant类使用
  19. 分享关于饿了么的需求文档
  20. CNN卷积神经网络:花卉分类

热门文章

  1. Orange Pi Zero2 (全志H616) 开箱配置
  2. 《学习笔记56》—— python爬虫显示乱码 b‘\x1f\x8b\x08\x00\x00\x00\x00\x00\...‘
  3. 关于emqx的 “not responding to pings”问题(Windows)
  4. 实验一:鸢尾花数据集分类
  5. 银行转账java mysql_如何编写一个银行转账案例?
  6. 基于快照实现远程数据只读复制
  7. china-pub登录问题
  8. 第一章 信息资源管理基础
  9. PC端“交易猫”网站爬虫项目
  10. JavaScript学习(十八)--鼠标事件(鼠标点击松开移动效果)