访问被拒绝的MySQL(使用Cloud9)

时间:2019-01-28 20:30:25

标签: mysql

我已经撤消了一个现有项目,并试图使其在本地运行(在Cloud9 IDE中)。但是,我在与MySQL数据库连接时遇到问题。

我相信某些环境变量已正确设置。按照Cloud9的说明,密码保持为空。 我使用了mysql -u root -p,然后可以成功访问MySQL数据库,而无需提交密码。

DB_NAME=c9
DB_USER=$C9_USER
DB_PASS=
DB_HOST=127.0.0.1
DB_DRIVER=mysql
DB_PORT=3306

现在我在数据库中运行npm run rollbacknpm run migrate或其他任何内容时,都会收到错误消息:

  

错误:ER_ACCESS_DENIED_ERROR:用户的访问被拒绝   '$ C9_USER'@'localhost'(使用密码:否)

然后我将环境变量中的$C9_USER替换为root,然后运行npm run migrate。这次它起作用了,并且没有产生错误。

但是我对这一切还是陌生的,我不确定自己所做的事是否真的可以。根据Cloud9手册,我应该使用$C9_USER,为什么那对我不起作用?同样,当我现在运行npm run rollback时,我又遇到了另一个错误(但可能无关):

  

错误:ER_ERROR_ON_RENAME:将“ ./c9/#sql-1827_4a”重命名为错误   './c9/sent_emails'(错误号:150)

1 个答案:

答案 0 :(得分:0)

我发现了问题所在。当我用实际的用户名替换$ C9_USER时,它可以工作。 Cloud9手册似乎提出了其他建议,但是我需要输入实际值而不是引用环境变量。