Доступ к удаленной базе данных MySQL на сервере

PHP 7.2.10 Laravel 5.6.39

У меня есть несколько удаленных баз данных MySQL и одна база данных MySQL на моем сервере.

На моем локальном хосте я могу подключиться ко всем базам данных, но на производственном / тестовом сервере я не могу подключиться к удаленным базам данных, показывая ошибку

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

Но как в локальном, так и в тестовом режиме файл .env, содержащий настройки и файл config / databse.php, одинаков. Разрешения для сервера тестирования и локального сервера одинаковы.

Есть что-нибудь, что мне не хватает?

Обновить:

Используя тинкер, я попробовал MySQL соединение и соединение 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,
},
}
>>>

-1

Решение

Ты пробовал php artisan config:clear очистить кешированный конфиг?

Возможно, вы кэшировали старый конфигурационный файл на вашем тестовом сервере.

1

Другие решения

По умолчанию, корень пользователь не сможет получить доступ к удаленной БД. Вам необходимо предоставить необходимые разрешения для того же.

Пожалуйста, посмотрите принятый ответ здесь — Как разрешить удаленное подключение к MySQL

0

По вопросам рекламы [email protected]