精华网络内容 :http://www.qqread.com/network/
2. Privileges EXECUTE
GRANT EXECUTE ON p TO peter
[WITH GRANT OPTION];
上面的特权是决定你是否可以使用或执行存储过程的特权,过程创建者默认拥有这个特权。
3. Privileges SHOW ROUTINE?
GRANT SHOW ROUTINE ON db6.* TO joey
[WITH GRANT OPTION];
因为我们已经有控制视图的特权了:GRANT SHOW VIEW。所以在这个基础上,为了保证兼容,日后可能会添加GRANT SHOW ROUTINE特权。这样做是不太符合标准的,在写本书的时候,MySQL还没实现这个功能。
4. Privileges Invokers and Definers 特权调用者和定义者
CREATE PROCEDURE p26 ()
SQL SECURITY INVOKER
SELECT COUNT(*) FROM t //
CREATE PROCEDURE p27 ()
SQL SECURITY DEFINER
SELECT COUNT(*) FROM t //
GRANT INSERT ON db5.* TO peter; //
现在我们测试一下SQL SECURITY子句吧。Security是我们前面提到的程序特性的一部分。你root用户,将插入权赋给了peter。然后使用peter登陆进行新的工作,我们看peter可以怎么使用存储过程,注意:peter没有对表t的select权力,只有root用户有。
5. Privileges Invokers and Definers
/* Logged on with current_user = peter */使用帐户peter登陆
mysql> CALL p26();
ERROR 1142 (42000): select command denied to user
'peter'@'localhost' for table 't'
mysql> CALL p27();
+----------+
| COUNT(*) |
+----------+
| 1 |
+----------+
1 row in set (0.00 sec)
当peter尝试调用含有调用保密措施的过程p26时会失败。那是因为peter没有对表的select的权力。
但是当petre调用含有定义保密措施的过程时就能成功。原因是root有select权力,Peter有root的权力,因此过程可以执行。
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
相关专题
- MySQL数据备份 (1912篇文章)
- MySQL (1788篇文章)
- MySQL安全 (9813篇文章)
- 存储过程 (2956篇文章)
- 城域网专题 (7812篇文章)
- 网络存储—光纤通道 (3015篇文章)
- ASP.NET教程 (8422篇文章)
- 服务器存储专栏 (8299篇文章)
- FreeBSD使用教程 (6551篇文章)
- mysql 存储过程 (23篇文章)
- MySQL数据库配置技巧 (87次浏览)
- 深入了解MySQL系统日常管理 (0次浏览)
- 如何保护MySQL重要数据 (0次浏览)
- 浅析MySQL数据库常用管理 (0次浏览)
- 缓存PHP页面代码 可减轻CPU和MYSQL负担 (0次浏览)
- 浅析Tomcat5配置Mysql JDBC数据库连接池 (0次浏览)
- MySQL数据库敏感数据安全保护六大措施 (0次浏览)
- apache+php+mysql+serv_u迷你傻瓜安装程序 (0次浏览)
- Oracle,SQL Server,MySQL的自增变量设置 (0次浏览)
- Win2003下APACHE+PHP5+MYSQL4+PHPMYADMIN的简 (0次浏览)



