用户和授予执行权限仅在云Sql中自动删除

时间:2015-01-07 04:25:27

标签: google-cloud-sql

CLOUD SQL VERSION& DB ENGINE:目前我们的CLOUD MYSQL版本是5.6.21 n DB ENGINE是INNODB

1。在Mysql中创建用户

创建用户'USERNAME'@'HOSTNAME'由'PASSWORD'标识;

但是这个用户并没有永久存储在mysql.user表中。如果脚本端或服务器重新启动任何问题,则会在表中删除此用户...有时,创建的用户密码将变为空。

2.Likewise授予执行权限也无法正常工作。

在程序Schemaname上授予执行权限。 Spname To'USERNAME'@'%';

此执行权限有效,但授权用户立即消失。

我们尝试的其他解决方案是:

1.Flush Tables-创建用户后

2.Flush Privilges-授予任何授权访问/撤销访问权限

但这两个解决方案在Google Cloud Sql中也不起作用,但问题仍然存在。

但是我们在本地Mysql版本中没有这个问题,它只能在Google Cloud Sql上重现。

我们在前端应用程序中遇到此问题。

任何人都知道如何在Google Cloud Sql中解决此问题...

1 个答案:

答案 0 :(得分:2)

我无法重现创建用户在Cloud SQL实例中无法生存的事实。

以下是我测试的方式(我用(edited)替换了一些敏感信息。)

首先,我连接到现有实例并创建一个名为xxx的用户,并检查它是否显示在mysql.user表中。

$ mysql -uroot -proot -h (edited)
mysql> SELECT host,user,password FROM mysql.user;
+-----------+------+-------------------------------------------+
| host      | user | password                                  |
+-----------+------+-------------------------------------------+
| localhost | root |                                           |
| 127.0.0.1 | root |                                           |
| ::1       | root |                                           |
| localhost |      |                                           |
| %         | root | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
+-----------+------+-------------------------------------------+
5 rows in set (0.07 sec)

mysql> CREATE USER xxx@'%' IDENTIFIED BY 'xxx';
Query OK, 0 rows affected (0.61 sec)

mysql> SELECT host,user,password FROM mysql.user;
+-----------+------+-------------------------------------------+
| host      | user | password                                  |
+-----------+------+-------------------------------------------+
| localhost | root |                                           |
| 127.0.0.1 | root |                                           |
| ::1       | root |                                           |
| localhost |      |                                           |
| %         | root | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
| %         | xxx  | *3D56A309CD04FA2EEF181462E59011F075C89548 |
+-----------+------+-------------------------------------------+
6 rows in set (0.06 sec)

mysql> Bye

然后我重新启动Cloud SQL实例。

$ gcloud sql instances restart (edited) --project (edited)
Restarting Cloud SQL instance...done.
Restarted [https://www.googleapis.com/sql/v1beta3/projects/(edited)/instances/(edited)].
$

然后我再次连接并检查mysql.user表。

$ mysql -uroot -proot -h (edited)
mysql> SELECT host,user,password FROM mysql.user;
+-----------+------+-------------------------------------------+
| host      | user | password                                  |
+-----------+------+-------------------------------------------+
| localhost | root |                                           |
| 127.0.0.1 | root |                                           |
| ::1       | root |                                           |
| localhost |      |                                           |
| %         | root | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
| %         | xxx  | *3D56A309CD04FA2EEF181462E59011F075C89548 |
+-----------+------+-------------------------------------------+
6 rows in set (0.07 sec)

mysql> Bye
$