晚上群里有个新用户说他的rds用不了,刚好没事做,就帮他跟了一下。
大部分新用户说rds用不了,都是内外网的问题,所以首先就让他确认rds是公网还是内网的,白名单开了没,
一番折腾后,还是说连不上。
首先测试的是他发过来的php网站安装地址,一路next,到填数据库参数的时候,和他确认了下,没有填错(居然没填错!?)。
信心满满的点下安装按钮,一个大大的连接数据库失败提示弹了出来。。这下子麻烦了。。
难道真是rds的问题?打开navicat,填好地址和用户密码,测试通过,连接也正常,
到此,基本上可以确定,rds配置没问题(居然不是90%新用户遇到的问题),下来就只有程序的问题了。
稍后他发了wdcp管理密码,登上去看了一下,没发现什么问题(从来没用过wdcp,其实就是到处乱看)。
找到文件管理的地方,加了个文件显示看phpinfo,也没发现有异常。准备写个测试代码的时候,wdcp宕掉了!
问他拿到ecs的账号密码之后,登录上去,重启了wdcp。顺便在网站主目录下,放了个测试程序,代码很简单
<?php$link=mysql_connect("xxxx.mysql.rds.aliyuncs.com","username","password");
if(!$link) echo "fail";else echo "success";
mysql_close();?>
出现错误提示: Access denied for user 'www'@'localhost' (using password: NO)” from php function ,
www刚好就是刚创建的测试文件的所有者账号。唔。。。
回到wdcp控制台,打开编辑php.in文件,找到 sql_safe_mode 参数,修改成Off, 重启web。
OK,测试代码通过了。再回到前面给的安装程序,顺利安装完成。
至此,php程序连不上rds的问题解决。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。