【发布时间】:2014-11-27 15:21:56
【问题描述】:
我必须在本地主机上为我网站的每个用户提供单独的 phpmyadmin 界面。我想用php脚本来做。为了实现它,我需要新创建用户帐户,而不是从 phpmyadmin 界面,而是通过编辑实际配置文件并在那里输入用户名、密码、权限等数据。
那么有谁知道如何编辑配置文件为 phpmyadmin 添加新用户,并且每个用户只能看到自己的数据库。
【问题讨论】:
标签: phpmyadmin
我必须在本地主机上为我网站的每个用户提供单独的 phpmyadmin 界面。我想用php脚本来做。为了实现它,我需要新创建用户帐户,而不是从 phpmyadmin 界面,而是通过编辑实际配置文件并在那里输入用户名、密码、权限等数据。
那么有谁知道如何编辑配置文件为 phpmyadmin 添加新用户,并且每个用户只能看到自己的数据库。
【问题讨论】:
标签: phpmyadmin
There's no such thing as a phpMyAdmin user,您所说的是 MySQL 用户帐户。结果,用户帐户不存储在配置文件中,而是存储在 MySQL 数据库本身中。您可以通过许多不同的工具创建 MySQL 用户,并且不限于使用 phpMyAdmin 来创建。我建议使用任何连接到 MySQL 的脚本语言来直接运行 SQL queries(例如 PHP 上的 Python)——这样您就可以将它集成到您的工作流程中,并尽可能自动化地编写脚本。
phpMyAdmin 可以帮助您快速获得正确的 SQL 语法;从主页的“用户”选项卡中,只需单击与具有您要使用的权限的现有用户相对应的“导出”按钮。为您提供正确的 SQL 以复制并粘贴到您的脚本中。
根据您的描述,您可能希望 SQL 类似于
GRANT USAGE ON *.* TO 'foo'@'%' IDENTIFIED BY PASSWORD '*E8D46CE25265E545D225A8A6F1BAF642FEBEE5CB';
GRANT ALL PRIVILEGES ON `foo`.* TO 'foo'@'%';
请注意,如果您的 MySQL 针对 PAM 进行身份验证,则有更多现有的工具可用于创建用户,但这是 MySQL 商业版本的一项功能,因此您的可用性可能会有所不同。
【讨论】: