MySQL授权问题总结


Posted in PHP onMay 06, 2007

我用localhost的root帐号不能连 最后请教DBA组新建用户搞定!

现弄些受权用户的资料 以备不时之需

授权表使用举例

grant用于给增加用户和创建权限,revoke用于删除用户权限。

下面是一些用grant增加用户和创建权限的例子:

mysql> grant all privileges on *.* to test@localhost identified by 'test' with grant option;

这句增加一个本地具有所有权限的test用户(超级用户),密码是test。ON子句中的*.*意味着"所有数据库、所有表"。with grant option表示它具有grant权限。

mysql> grant select,insert,update,delete,create,drop privileges on test.* to test1@'192.168.1.0/255.255.255.0' identified by 'test';

这句是增加了一个test1用户,口令是test,但是它只能从C类子网192.168.1连接,对test库有select,insert,update,delete,create,drop操作权限。

用grant语句创建权限是不需要再手工刷新授权表的,因为它已经自动刷新了。

给用户创建权限还可以通过直接修改授权表:

mysql> insert into user

values("localhost","test",password("test"),"Y","Y","Y","Y","Y","Y","Y","Y","Y","Y","Y","Y","Y","Y");

mysql> flush privileges;

这两句和上面第一句grant的效果是一样的,也是增加了一个本地的test超级用户。我们看到用grant方便多了,而且还不需flush privileges。

mysql> insert into user (host,user,password) values("192.168.1.0/255.255.255.0","test1",PASSWORD("test")); mysql> insert into db values("192.168.1.0/255.255.255.0","test","test1","Y","Y","Y","Y","Y","Y","N","N","N","N") mysql> flush privileges;

这三句和上面第二句grant的效果也是一样的,也是增加了一个只能从C类子网192.168.1连接,对test库有select,insert,update,delete,create,drop操作权限的test1用户,口令是test。要取消一个用户的权限,使用revoke语句。revoke的语法非常类似于grant语句,除了to用from取代并且没有identified by和with grant option子句,下面是用revoke删除用户权限的例子:

mysql> revoke all on test.* from test1@'192.168.1.0/255.255.255.0';

这句revoke就撤消了上面第二句grant创建的权限,但是test1用户并没有被删除,必须手工从user表删除:

mysql> delete from user where user='test1';

mysql> flush privileges;

这样,test1用户就彻底删除了。

这些只是MySQL授权表的简单使用,更多详细的资料请见MySQL提供的手册。

PHP 相关文章推荐
PHP 高手之路(二)
Oct 09 PHP
php dirname(__FILE__) 获取当前文件的绝对路径
Jun 28 PHP
基于PHP Socket配置以及实例的详细介绍
Jun 13 PHP
thinkphp实现多语言功能(语言包)
Mar 04 PHP
php实现的双向队列类实例
Sep 24 PHP
php中使用Ajax时出现Error(c00ce56e)的详细解决方案
Nov 03 PHP
php生成年月日下载列表的方法
Apr 24 PHP
7个鲜为人知却非常实用的PHP函数
Jul 01 PHP
php倒计时出现-0情况的解决方法
Jul 28 PHP
PHP实现将MySQL重复ID二维数组重组为三维数组的方法
Aug 01 PHP
Thinkphp5 微信公众号token验证不成功的原因及解决方法
Nov 12 PHP
PHP的简单跳转提示的实现详解
Mar 14 PHP
不错的PHP学习之php4与php5之间会穿梭一点点感悟
May 03 #PHP
Windows下IIS6/Apache2.2.4+MySQL5.2+PHP5.2.1安装配置方法
May 03 #PHP
什么是MVC,好东西啊
May 03 #PHP
php中的MVC模式运用技巧
May 03 #PHP
php下实现折线图效果的代码
Apr 28 #PHP
php下的权限算法的实现
Apr 28 #PHP
php 中的str_replace 函数总结
Apr 27 #PHP
You might like
E路文章系统PHP
2006/12/11 PHP
php中$_SERVER[PHP_SELF] 和 $_SERVER[SCRIPT_NAME]之间的区别
2009/09/05 PHP
PHP Curl出现403错误的解决办法
2014/05/29 PHP
PHP设计模式之装饰者模式代码实例
2015/05/11 PHP
Smarty foreach控制循环次数的一些方法
2015/07/01 PHP
php等比例缩放图片及剪切图片代码分享
2016/02/13 PHP
php使用Jpgraph创建3D饼形图效果示例
2017/02/15 PHP
phpstudy的php版本自由修改的方法
2017/10/18 PHP
php通过pecl方式安装扩展的实例讲解
2018/02/02 PHP
用javascript实现的激活输入框后隐藏初始内容
2007/06/29 Javascript
“不能执行已释放的Script代码”错误的原因及解决办法
2007/09/09 Javascript
js 实现在离开页面时提醒未保存的信息(减少用户重复操作)
2013/01/16 Javascript
javascript里模拟sleep(两种实现方式)
2013/01/25 Javascript
JS分页效果示例
2013/10/11 Javascript
使用ajaxfileupload.js实现ajax上传文件php版
2014/06/26 Javascript
原生javascript移动端滑动banner效果
2017/03/10 Javascript
原生js获取left值和top值的三种方法
2017/08/02 Javascript
vue 做移动端微信公众号采坑经验记录
2018/04/26 Javascript
Vue多系统切换实现方案
2018/06/05 Javascript
新手必须知的Node.js 4个JavaScript基本概念
2018/09/16 Javascript
Vue2.x通用条件搜索组件的封装及应用详解
2019/05/28 Javascript
layui 弹出层回调获取弹出层数据的例子
2019/09/02 Javascript
vue使用nprogress加载路由进度条的方法
2020/06/04 Javascript
解决vue watch数据的方法被调用了两次的问题
2020/11/07 Javascript
[01:57]2018DOTA2亚洲邀请赛赛前采访-iG
2018/04/03 DOTA
python+matplotlib实现礼盒柱状图实例代码
2018/01/16 Python
Python日志打印里logging.getLogger源码分析详解
2021/01/17 Python
使用javascript和HTML5 Canvas画的四渐变色播放按钮效果
2014/04/10 HTML / CSS
ProBikeKit美国官网:自行车套件,跑步和铁人三项套件
2016/10/13 全球购物
HTC VIVE美国官网:VR虚拟现实眼镜
2018/02/13 全球购物
数控技术应届生求职信
2013/11/13 职场文书
房产转让协议书
2014/04/11 职场文书
Matplotlib绘制混淆矩阵的实现
2021/05/27 Python
Windows server 2012 R2 安装IIS服务器
2022/04/29 Servers
MySQL索引失效场景及解决方案
2022/07/23 MySQL
JS开发前端团队展示控制器来为成员引流
2022/08/14 Javascript