在heroku上部署了我们的应用程序的新版本,并从以前的免费jawsdb实例迁移到数据库。但是现在每次用户注册时都会给出
(Mysql2::Error: INSERT command denied to user <username for instance
我错过了什么
mysql2...
)我之前没有必要授予访问权限或类似内容,任何人都会遇到此问题?
感谢 本
答案 0 :(得分:6)
我的猜测是,他们已停用您的INSERT
资助,因为您已达到计划的最大存储容量。
要验证这是权限问题,请使用应用程序运行的用户登录MySQL提示符,然后输入以下查询:
SHOW GRANTS;
它可能列出很多,但没有列出INSERT
。
答案 1 :(得分:0)
见this link。正如给定链接中所解释的,jawsdb初步计划不允许您添加新数据库。您将获得一个带有一些随机名称的模式,您只能使用它。
答案 2 :(得分:0)
检查您的迁移
例如确保数据库名称匹配。
对我来说,尝试迁移数据时,我遇到了与OP相同的错误。这是一个只有50kb'ish数据库的全新帐户;距离免费计划5mb的限制还很遥远。
在我的SQL导出语句中,正在使用我的本地数据库名称,但是远程MySQL(即JawsDB)服务会自动生成一个数据库名称,这显然是不同的。只需使用find-replace即可更改数据库名称以匹配远程数据库;一切正常。