我在 mysql 和 cloudfoundry 中遇到用户权限问题。
我能够将数据插入到一个表中,我正在尝试将数据插入到另一个表中并遇到以下问题:
mysql> source /home/julien/Documents/donnees/projets/Site-Rencontres/java/src/main/resources/misc/sql/geolocation.sql
ERROR 1142 (42000): INSERT command denied to user 'uEs8kO1Aqdhlr'@'172.30.49.208' for table 'geolocation'
任何人都可以向我解释一下用户权限如何在 cloudfoundry 的 mysql 上工作吗?
编辑 1:一些信息:
+-------------------------------------------------------------------------------------------------------------------------------------------+
| Grants for uEs8kO1Aqdhlr@% |
+-------------------------------------------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'uEs8kO1Aqdhlr'@'%' IDENTIFIED BY PASSWORD '*A826C24476F83F907DC66060E4C2705D92E151ED' WITH MAX_USER_CONNECTIONS 20 |
| GRANT ALL PRIVILEGES ON `de2474fdd53114ebfbb17b3c236676a28`.* TO 'uEs8kO1Aqdhlr'@'%' |
+-------------------------------------------------------------------------------------------------------------------------------------------+
编辑 2:更多信息:
mysql> select user();
+-----------------------------+
| user() |
+-----------------------------+
| uEs8kO1Aqdhlr@172.30.49.208 |
+-----------------------------+
1 row in set (0.80 sec)
mysql> select current_user();
+-----------------+
| current_user() |
+-----------------+
| uEs8kO1Aqdhlr@% |
+-----------------+
1 row in set (0.85 sec)
编辑 3:还有更多信息:
我意识到我的 sql 脚本引用了错误的模式(这里称为 dummy
):
insert into dummy.geolocation
删除“dummy.
”让我可以毫无错误地运行脚本。我不确定为什么这给了我上述错误。如果有人能解释一下,那将很有用...
最佳答案
CF 提供了 mysql 实例和数据库。因此,当您绑定(bind) mysql 服务时,您实际上是将数据库绑定(bind)到您的应用程序。如果您注意到当 vmc 隧道连接到 mysql 服务时,它会为您提供用户名/密码以及名为“名称”的键,即隧道所在的模式名称。针对其他模式的操作将被视为在使用的 CF 帐户之外。
关于mysql - 使用 cloudfoundry 的 vmc 实用程序将数据插入 mysql 表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13892428/