我已经建立了一个Amazon RDS mysql数据库和一个amazon ec2服务器。我从服务器访问mysql数据库时遇到了很多问题,并且谷歌已经梳理了几个小时,越来越接近解决方案了。我现在有一个非常有希望而又奇怪的问题。
在服务器上,我的网站空间位于var / www / html中。我最终能够通过php的mysqli_connect()从位于该目录中的文件访问数据库,但当我从子目录中的文件调用mysqli_connect()时使用相同的参数(例如,位于var中的文件) / www / html / PNM),我得到那个该死的"用户拒绝访问(密码:是)"错误。我完全难过了。为什么我的访问权限是在顶级目录中授予的,而不是它的子目录?
编辑:忘记提及,当我尝试使用我的macbook pro上的localhost使用mysqli_connect访问数据库时,连接适用于所有文件。
此外,我已经尝试从数据库授予权限
GRANT ALL PRIVILEGES ON [all tables] to '[username that i'm giving]'@'%';
和
GRANT ALL PRIVILEGES ON [all tables] to '[username that i'm giving]'@'%' IDENTIFIED BY
'[password that I'm giving]';