mysql grants小记

所属分类: 数据库 / Mysql 阅读数: 1553
收藏 0 赞 0 分享
安装mycheckpoint的时候,给这个监控用户分权限的时候,发现了这个秘密:
复制代码 代码如下:

mysql>
mysql> GRANT ALL PRIVILEGES ON mycheckpoint.* TO 'mycheckpoint_user'@'localhost' IDENTIFIED BY '123456';
ERROR 1470 (HY000): String 'mycheckpoint_user' is too long for user name (should be no longer than 16)
mysql>

grant命令是对mysql数据库进行用户创建,权限或其他参数控制的强大的命令,官网上介绍它就有几大页,要用精它恐怕不是一日半早的事情,权宜根据心得慢慢领会吧!
grant命令的简单介绍是这样的:
The GRANT statement enables system administrators to grant privileges to MySQL user accounts. GRANT also serves to specify other account characteristics such as use of secure connections and limits on access to server resources. To use GRANT, you must have the GRANT OPTION privilege, and you must have the privileges that you are granting.
这段话的意思是说:grant命令允许系统管理员对mysql 用户账号(user account)授予各类权限(grant privileges),grant当然也可以用于设置帐号的其他特征如安全连接和服务资料访问限制等,为使用grant命令,必须有GRANT OPTION 权限,同是你必须有你要授予权限的权限!
使用show grant命令 SHOW GRANTS [FOR user]
该命令的解释是:This statement lists the GRANT statement or statements that must be issued to duplicate the privileges that are granted to a MySQL user account.
如果要需要当前用户的权限,可以使用这下三条命令之一:

SHOW GRANTS;SHOW GRANTS FOR CURRENT_USER;SHOW GRANTS FOR CURRENT_USER();在本机上运行命令的效果(当用使用的root用户连接到mysql)使用grant命令前,需要搞清楚以下信息:grant 的类型,即你要授予什么权限(privilege type),是允许查询?插入行?创建?还是其他等等。grant 的对象类型(priv_type),有三种:TABLE、 FUNCTION、PROCEDURE,还有一种是默认的,就是DATABASE数据库。grant 的对象(priv_level):是作用于所有数据库呢?还是作用于某一数据库,是作用于数据库的所有表,还是某一个单一的表,甚至是表中的某些列!可以这样做个想象,用户就是一个城管执法者:他有那些权限(privilege type),驱赶走鬼?没收走鬼的东西?他管理那类(priv_type)走鬼呢?卖水果的?烘烤的还是卖钸口的?他管理的范围是什么:整个区?某条街道?最后,不同的权限会能或不能作用于不同的对象类型和范围,以下是部分截图,具体可能参考:
dev.mysql.com/doc/refman/5.1/en/privileges-provided.html


以下是某些权限的解数截图,详细在dev.mysql.com/doc/refman/5.1/en/grant.html
更多精彩内容其他人还在看

MySQL中按照多字段排序及问题解决

这篇文章主要介绍了MySQL中按照多字段排序及问题解决的方法,非常的实用,有需要的小伙伴可以参考下。
收藏 0 赞 0 分享

MySQL外键使用详解

两天有人问mysql中如何加外键,今天抽时间总结一下。mysql中MyISAM和InnoDB存储引擎都支持外键(foreign key),但是MyISAM只能支持语法,却不能实际使用。
收藏 0 赞 0 分享

Mysql中LAST_INSERT_ID()的函数使用详解

从名字可以看出,LAST_INSERT_ID即为最后插入的ID值,有了这个实用的函数,我们可以实现很多问题,下面我们就来深入探讨下。
收藏 0 赞 0 分享

MySql insert插入操作的3个小技巧分享

这篇文章主要介绍了MySql insert插入操作的3个小技巧分享,本文讲解了插入的数据来源自其他表、插入时排除(忽略)重复记录、插入时遇到重复记录做更新操作三个小技巧,需要的朋友可以参考下
收藏 0 赞 0 分享

mysql修改自增长主键int类型为char类型示例

这篇文章主要介绍了mysql修改自增长主键int类型为char类型示例,需要的朋友可以参考下
收藏 0 赞 0 分享

Windows下使用Cygwin编译MySQL客户端

这篇文章主要介绍了Windows下使用Cygwin编译MySQL客户端,本文详细的讲解了编译过程,需要的朋友可以参考下
收藏 0 赞 0 分享

MySQL数据库优化推荐的编译安装参数小结

这篇文章主要介绍了MySQL数据库优化推荐的编译安装参数小结,需要的朋友可以参考下
收藏 0 赞 0 分享

MySQL之Field‘***’doesn’t have a default value错误解决办法

这篇文章主要介绍了MySQL之Field‘***’doesn’t have a default value错误解决办法,需要的朋友可以参考下
收藏 0 赞 0 分享

php连接MySQL的两种方式对比

这篇文章主要介绍了php连接MySQL的两种方式对比,一种是原生的链接方式另外一种是PDO方式,附上示例,推荐给大家,有需要的小伙伴可以参考下
收藏 0 赞 0 分享

Mysql InnoDB删除数据后释放磁盘空间的方法

这篇文章主要介绍了Mysql InnoDB删除数据后释放磁盘空间的方法,Innodb数据库对于已经删除的数据只是标记为删除,并不真正释放所占用的磁盘空间,这就导致InnoDB数据库文件不断增长,本文就讲解释放磁盘空间的方法,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多