mysql创建本地用户及赋予数据库权限的方法示例

我们从自然手上收到的最大礼物就是生命。我必须拼命的奔跑我知道有很多人等着看我狼狈跌倒的下场嘲笑我不自量力

前言

大家在安装 mysql 时通常会生成一个超级用户 root,很多人之后就一直沿用这一个用户,虽然这会很方便,但超级用户权限太大,在所有地方使用它通常是一个安全隐患。

这一点跟操作系统的用户管理也是类似的,多数人贪图方便都直接使用 administrator 或 root 用户,其实是一种不建议的做法。

那么,要如何在 mysql 中创建 root 之外的用户并赋予相应权限呢?

我们直接来看一个示例:

CREATE USER ‘golden‘@'localhost' IDENTIFIED BY ‘gd2017‘;
GRANT ALL ON myapp.* TO ‘golden‘@'localhost';
FLUSH PRIVILEGES;

对上述语句,这里简单解析一下:

1、create user 语句用于创建用户(及密码)。

其中 golden 是用户名,gd2017 是密码。localhost 则表明是本地用户。

2、grant 语句用于对用户进行赋权。

其中,all 表示所有的权限,包括对数据的增删改查及更改数据库;myapp 为具体某个数据库名,myapp.* 表示该数据库下所有的表(以及视图等);golden 则为刚才所建立的用户名。

3、flush 语句使更改生效。

拓展:

通常,以上设置能满足一般的需求了,更细化的配置,可以参考 mysql 官方在线文档(5.7 版):

https://dev.mysql.com/doc/refman/5.7/en/create-user.html

https://dev.mysql.com/doc/refman/5.7/en/grant.html

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对的支持。

您可能有感兴趣的文章
centos7安装MySQL教程

MySQL常用SQL查询语句(含复杂SQL查询)

MySQL细数发生索引失效的情况

mysqlenum字段类型的谨慎如何使用

Mysql体系化探讨令人头疼的JOIN运算