2017-10-14 34 views
0

使用以下命令无法迁移.sql文件,以JawsDb(MySQL的)

mysql -h erxv1bzckceve5lh.cbetxkdyhwsb.us-east-1.rds.amazonaws.com -u 
remoteUsername -premotePassword java-play-app < mazzo_play_app.sql 

我收到的控制台以下错误:

ERROR 1044 (42000): Access denied for user 'mh45rmnau81wvfct'@'%' to database 'java-play-app' 

什么我需要做的正是以做这个连接? 谢谢, CM

回答

0

您需要将该用户的访问权授予涉及的模式。如果你有root权限,你可以这样做。

GRANT ALL PRIVILEGES ON mydb.* TO 'myuser'@'%' 

在这种情况下,您似乎无法直接访问MySQL。 的官方指南(https://devcenter.heroku.com/articles/jawsdb)报道:

1)从原来的数据库转储数据:

mysqldump -h OLDHOST -u OLDUSER -pOLDPASS OLDDATABASE > backup.sql 

2)将数据在新的DB:

mysql -h NEWHOST -u NEWUSER -pNEWPASS NEWDATABASE < backup.sql 
+0

感谢响应。我尝试过这样的事情。所以让我澄清一下。在你的语法中,'myuser'@'%'代表'root',即访问我试图导出的数据库的用户?或者'myuser'代表'mh45rmnau81wvfct',它是远程数据库的用户名。并且@'%'代表@'localhost'?或@'remotehost'? –

+0

'myuser'将是您希望向其授予访问权限的用户,在您的示例'mh45rmnau81wvfct'中。 '%'是通配符,这意味着应允许该用户从任何主机连接。有关详细信息,请查阅[手册](https://dev.mysql.com/doc/refman/5.7/en/adding-users.html)。 –

+0

但是,如何在远程服务器上执行此操作?我在我的本地机器上从我的SQL终端发出该命令。 –