2

我在 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'

谁能向我解释一下用户权限如何在 mysql for cloudfoundry 上工作?

编辑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.”允许我运行脚本而不会出现任何错误。为什么这给了我上述错误我不确定。如果有人能解释一下,那将很有用...

4

1 回答 1

1

CF 提供 mysql 实例和数据库。因此,当您绑定 mysql 服务时,您实际上将数据库绑定到您的应用程序。如果您注意到当 vmc 隧道连接到 mysql 服务时,它会为您提供用户名/密码以及一个名为“name”的键,即隧道所在的模式名称。针对其他模式的操作将被视为超出使用的 CF 帐户。

于 2012-12-17T08:00:19.270 回答