在服务器中访问远程mysql数据库laravel

1yjd4xko  于 2021-06-18  发布在  Mysql
关注(0)|答案(2)|浏览(368)

php 7.2.10拉维5.6.39
我有多个远程mysql数据库和一个mysql数据库在我的服务器。
在localhost中,我可以连接到所有数据库,但在生产/测试服务器中,我无法连接到远程数据库,显示错误

Database [mysqlRemoteOne] not configured.", exception: "InvalidArgumentException

但是在本地和测试中,包含设置和config/database.php的.env文件是相同的。测试服务器和本地服务器的权限相同。
有什么,我不见了吗?
更新:
使用tinker,我尝试了mysqli连接和pdo连接,结果

ubuntu@ip-172-31-30-158:/var/www/html/app$ php artisan tinker
Psy Shell v0.9.9 (PHP 7.2.10-0ubuntu0.18.04.1 — cli) by Justin Hileman
>>> mysqli_connect('myhost', 'user', 'password', 'db')
=> mysqli {#3054
     +affected_rows: null,
     +client_info: null,
     +client_version: null,
     +connect_errno: null,
     +connect_error: null,
     +errno: null,
     +error: null,
     +error_list: null,
     +field_count: null,
     +host_info: null,
     +info: null,
     +insert_id: null,
     +server_info: null,
     +server_version: null,
     +stat: null,
     +sqlstate: null,
     +protocol_version: null,
     +thread_id: null,
     +warning_count: null,
   }
>>> new PDO('mysql:host=myhost;dbname=db', 'user', 'password');
=> PDO {#3053
     inTransaction: false,
     attributes: {
       CASE: NATURAL,
       ERRMODE: SILENT,
       AUTOCOMMIT: 1,
       PERSISTENT: false,
       DRIVER_NAME: "mysql",
       SERVER_INFO: "Uptime: 1136758  Threads: 27  Questions: 95411  Slow queries: 0  Open                                                                   s: 4155  Flush tables: 1  Open tables: 413  Queries per second avg: 0.083",
       ORACLE_NULLS: NATURAL,
       CLIENT_VERSION: "mysqlnd 5.0.12-dev - 20150407 - $Id: 38fea24f2847fa7534543                                                                   ae0acafe387 $",
       SERVER_VERSION: "5.7.24-0ubuntu0.16.04.1",
       STATEMENT_CLASS: [
         "PDOStatement",
       ],
       EMULATE_PREPARES: 1,
       CONNECTION_STATUS: "myhost via TCP/IP",
       DEFAULT_FETCH_MODE: BOTH,
     },
   }
>>>
dxxyhpgq

dxxyhpgq1#

默认情况下,根用户将无法访问远程数据库。您需要为相同的应用程序授予必要的权限。
请看这里接受的答案-如何允许远程连接到mysql

idfiyjo8

idfiyjo82#

你试过了吗 php artisan config:clear 清除缓存配置?
可能您已经在测试服务器上缓存了旧的配置文件。

相关问题