特权用户如何在MySQL上工作?使用所有使用社交网络网站的用户都具有独特的用户特权,以连接到数据库,或者所有用户使用相同的特权,例如:

$dsn = 'mysql:host=localhost;dbname=social_site';
$username = 'members';
$password = 'pa55word'; 
有帮助吗?

解决方案

不,一般来说,将有一个(或少数)MySQL用户,PHP脚本(或其他服务器端代码)将使用此用户来完成所有数据的获取和设置。在某些情况下,创建具有不同权限级别的少数MySQL用户是有帮助的(因此 select 查询仅使用用户仅使用 select 特权和 insertsupdates 由具有这些特权的单独用户处理)。如果允许远程计算机直接访问MySQL数据库(对于合作伙伴网站或应用程序),则创建特定的MySQL用户为该连接的特定使用权限仅限于他们所需的内容(否)也很常见(否 drop 或者 modify 例如,权限),仅限于其IP地址(您可以将MySQL用户限制在一个地址的连接中)。

最重要的是,您通常只能创建一些用户,并且您的网站/应用程序将仅使用这小群用户来完成所有查询。此外,最好与用户访问数据库,该用户可以使用最少的权限完成任务(在理性之内...不要为每个可能的操作创建单独的用户...通常1-3个用户应覆盖所有用户您想要的权限级别)。如果您创建了大量用户,您将(a)放慢MySQL,因为它必须访问较大的权限表; (b)如果申请在道路上更改,则很难管理权限; (c)调试权限问题更痛苦(您的PHP脚本在做什么方面具有更大的灵活性,并报告是否存在权限问题)。

其他提示

通常,您有一个数据库连接,并将每个用户帐户存储在带有相应用户名和密码的“用户”表中。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top