我正在使用mysql在heroku上创建一个新项目(他们有一个名为JawsDB的插件,它给了我一个mysql主机,用户名,密码)。 (更新:我也试过使用他们的其他mysql插件,ClearDB,我有完全相同的问题)
我可以像这样连接到数据库(我可以'显示数据库'以查看其中的内容):
mysql -h izm96dhhnwr2ieg0.cbetxkdyhwsb.us-east-1.rds.amazonaws.com -u knu81lzn5m79u3rx -p[given_password]
问题:当我创建数据库nptest
时,我得到:
Access denied for user 'knu81lzn5m79u3rx'@%' to database 'nptest'
我尝试过授予所有权限,例如:
grant all privileges on *.* to 'knu81lzn5m79u3rx'@'%' identified by '[given_password]';
但是这给了我:
Access denied for user 'knu81lzn5m79u3rx'@'%' (using password: YES)
我也试过创建一个新用户,但当然它是“拒绝访问”,因为我也没有创建用户权限。
授予此用户访问权限的正确方法是什么?
答案 0 :(得分:5)
啊!答案是,jawsDB的初步计划为您提供了一个与其他人共享服务器上的特定数据库(具有一个神秘的名称),因此您无权创建新的数据库。在说明书中并不清楚,所以现在我用好的旧数据库和#34; tbkrv66g085ulngi" :)
答案 1 :(得分:0)
为了进一步澄清Diane的答案,可以通过mysql客户端登录JawsDB并运行show databases
来找到神秘的数据库名称,或者它是运行heroku config
时可以找到的JAWSDB_URL的最后一个参数。 。
答案 2 :(得分:0)
我认为,如果在生产模式下使用它,将会解决问题