我目前已经为我的应用程序在数字海洋中设置了一个临时区域,其中有lamp stack。我的应用程序的框架是laravel5.5和vue2x。
在开发过程中,我一直在使用远程mysql,没有连接错误的问题。但是,当我把它移到staging env时,它给了我拒绝访问的错误。当我仔细查看错误日志时,username@[digital ocean droplet ip]的访问被拒绝,而我已经在laravel的config/database文件下正确配置了远程主机ip的mysql凭据。
所以,我怀疑我是否必须在apache下进行任何配置以允许任何外部mysql连接?我忘了cmd,但我允许sfw firewall允许任何端口3306到apache中的远程服务器ip地址。
感谢您的帮助。
谢谢!
1条答案
按热度按时间tv6aics11#
默认情况下,mysql不会创建具有远程连接访问权限的用户。
首先,您需要在数据库上创建一个允许从外部(%)或特定ip连接的用户
而不是给他特权
可以分别用数据库名和表名替换*s
您还可以检查您的mysql配置(在我的例子中是/etc/mysql/mysql.conf.d/mysqld.cnf)中是否有未注解的这一行
必要时更换ip
重启mysql和apache
然后在.env文件中更新用户和密码并重试!