
MySQL存储过程,是的,似乎是一种难得的使用情况。该问题源于开发同学,他提交了许可申请的工作订单,需要激活某些权限。
最初是一个非常正常的操作,但我认为这是非常紧迫的。令我感到羞耻的是,我忙于指导计划和开发,而这种基本的操作功能实际上被忽略了。因此,当我看到一些当前的实施方法时,我仍然希望做一些小事情来解放这些重复性工作。
当然,一方面,我决定采取一些基本工作,以减轻同事的压力,另一方面,为了获得完整的体验,因为许多需求和痛苦点可以轻松地通过练习来捕获关键点。如果我认为这是不合理的,那么不可避免地会有一些改进。例如,部署和安装,例如权限激活。数据库的许可激活是一个相对典型的情况,并且对生命的许可激活甚至对生活有些怀疑。
问题方案仍然非常基本。发展学生需要激活一些基本的权限,声明在标记权限时需要添加,删除,修改和检查的权限以及DDL权限(例如Drop,Drops)等。我认为这是不合适的。实际上,什么样的操作需要如此大量的权限。
我简单地说出了我的立场,并且发展同学的想法易于管理,因此我直接招募了他们。经过简单的交流后,我发现他们的需求场景仍然非常传统。他们需要动态创建一些日常表,因此评估后可以给出所需的权限。对于普通用户,不建议打开权限。主要的起点是能够对SQL进行一些基本审核。甚至手动审核或平台审核都是必要的过程。因此,在交流后,发现启用的权限可以快速删除。对于他们来说,还必须修改存储过程的逻辑,因为在某些特定情况下,他们希望控制逻辑更灵活。
好的,基本的背景简介已经完成。授予基本表和存储程序的权限。在存储过程中要注意的一个重要点是SQL。默认创建是。如果您需要打开与其他用户的电话,建议将其设置为。
所以一个非常简单的句子:
授予,在xxx.xxx上更改为xxx@'xxxx';
不幸的是,发展同学报告说,当他们通过或打开它时,他们看不到存储程序的内容。
因为我们没有可以查看的权限,所以我们几乎无法干预。
可以通过使用命令行来复制此问题:

存储程序没有实质性内容。在那里挣扎了很长时间之后,我发现这是一个古老的问题,这是10年前的一个古老问题。
解决问题的解决方案实际上非常简单,只需此句子:
在mysql.proc上授予xxxx@'xxxx'
因此,精细的许可控制是如此纠结,但确实有效。
例如,如果我们从中学习,我们知道MySQL中的所有内容都是很大的许可,但是我们可能没有明确的概念,即它包含多少权限。
我们可以通过细粒度的许可控制完全扭转局势。
例如,创建用户并授予所有权限。
mysql>在测试中授予全部。* to'''@'%'by';
查询确定,0行,1(0.00秒)
所包括的许可如下:
mysql> show for;
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
| @%|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|授予 *。 * to''@'%'|
|在“ test”上授予所有内容。* to'@'%'|
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
2行(0.00秒)
让我们进行一些收缩。
MySQL>在测试中。*来自 @'%';
查询好的,0行(0.00秒)
看,所有的权限都显示了它们的真实色彩。
mysql> show for;
|为了 @%
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|授予 *。 *''@'%'
|授予,,,,,,,,,索引,alter,lock,loct,view,show view,aLTER,事件,``test'。* to'@'@'%'|
因此,在上面的问题中,如果在 *。 *实际上包含我们需要mysql.proc的细粒度的权限,如果我们要剥离线程,则基本上是例行程序。
扫一扫在手机端查看
-
Tags : mysql存贮过程_MySQL存储过程的权限问题
我们凭借多年的网站建设经验,坚持以“帮助中小企业实现网络营销化”为宗旨,累计为4000多家客户提供品质建站服务,得到了客户的一致好评。如果您有网站建设、网站改版、域名注册、主机空间、手机网站建设、网站备案等方面的需求,请立即点击咨询我们或拨打咨询热线: 13761152229,我们会详细为你一一解答你心中的疑难。


客服1