Подключите удаленный сервер MySQL к Symfony (доктрина) через SSH - PullRequest
0 голосов
/ 26 апреля 2019

Я создаю приложение Symfony, и мне нужен доступ к базе данных, которая находится на другом сервере (через ssh).Как бы я сделал что-то подобное?

Я не смог найти никакой возможности для этого в документации доктрины.

Ответы [ 2 ]

1 голос
/ 26 апреля 2019

, если сервер базы данных не открывает порт базы данных, поэтому вы должны использовать ssh в качестве промежуточного протокола, подобного этому.

$host = 'remote host';
$sshuser = 'ssh user';
$sshpass = 'ssh password';
$dbuser = 'db user';
$dbpass = 'db pass';
$dbname = 'db name';

shell_exec("ssh -p$sshpass ssh -o StrictHostKeyChecking=no -f -L 3307:127.0.0.1:3306 $sshuser@$host");

$dbh = new PDO('mysql:host=127.0.0.1;port=3306;dbname=' .$dbname. '', $dbuser, $dbpass);

затем используйте $ dhb для взаимодействия с вашей базой данных.

может быть, вы должны написать некоторый код в библиотеке доктрины, чтобы воплотить вашу идею.

0 голосов
/ 26 апреля 2019

Вы должны открыть туннель SSH.

См. Могу ли я SSH к MySQL с помощью инструментов GUI? или Доступ к вашему MySQL серверу удаленно через SSH .

Для параметров .yml это выглядиткак локальный сервер MySql, в котором нет ничего особенного.

...