我从我们的MySQL数据库中提取了OpenShift v2的备份,并按照此article中的步骤移植到OpenShift v3 Pro计划。
在启动DB之后,我相信我完成了最后一步:
Grant all privileges on <dbname> to <your_v2_username>@localhost, then flush privileges.
通过在mysql终端中执行以下操作:
GRANT ALL PRIVILEGES ON dbName.* TO 'userNameInMySQLSecret'@'localhost';
FLUSH PRIVILEGES;
甚至尝试过这只是为了确保我们都很好:
GRANT ALL PRIVILEGES ON *.* TO 'userNameInMySQLSecret'@'%';
userNameInMySQLSecret与OpenShift v2 DB中使用的相同。
数据库已启动并运行了22天,但今天我收到了关于卡住部署的通知。显然由于某种原因MySQL数据库试图拉出一个新图像(这是否意味着我丢失了存储在DB中的所有数据?)并且在日志中我看到了这个错误:
---> 15:44:23 MySQL started successfully
---> 15:44:23 Setting passwords ...
2018-01-31T15:44:23.388611Z 3 [Note] Access denied for user 'root'@'localhost' (using password: NO)
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
我认为上面的权限可以解决这个问题,但显然我仍然缺少一些东西。我有这个设置在OpenShift v2上运行了近一年没有问题,所以我确信我在新的v3平台上错过了一些配置。
是否可以重新启动并运行此pod,而不会丢失自v2端口以来的所有数据?
如何防止此权限问题重新弹出?
为什么MySQL DB会首先尝试提取新图像?