我已经撤消了一个现有项目,并试图使其在本地运行(在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 rollback
或npm 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)
答案 0 :(得分:0)
我发现了问题所在。当我用实际的用户名替换$ C9_USER时,它可以工作。 Cloud9手册似乎提出了其他建议,但是我需要输入实际值而不是引用环境变量。