Zend Framework 1 — подключение к удаленной базе данных через ssh-туннель

Я хочу подключиться к удаленной базе данных моего клиента.

Я могу установить туннель SSH с помощью команды:

ssh -vvv -i path_to_private_key -L 3308:127.0.0.1:3307 ssh_user@ssh_host

и подключиться к его базе данных с помощью:

mysql -u database_user -p -h 127.0.0.1 -P 3308

Но когда я хочу настроить свой проект Zend Framework для чтения данных из этой базы данных, ничего не происходит (даже в журналах ошибок apache2 нет журналов)

Ниже мои конфигурации из файла application.ini:

resources.db.adapter = "mysqli"resources.db.params.host = 127.0.0.1
resources.db.params.port = 3308

resources.db.params.dbname = database_name
resources.db.params.username = database_user
resources.db.params.password = database_password
resources.db.params.profiler = false

Я понятия не имею, что может быть не так. Есть идеи?

1

Решение

Попробуйте это с небольшим изменением вашей команды ssh.

ssh -N -L -i path_to_private_key 3307:mysqlhost:3306 ssh-user@ssh-host

Где 3307 — ваш локальный порт, а mysqlhost — хост mysql, к которому вы подключаетесь, а не localhost. Теперь ваш конфиг должен выглядеть так:

resources.db.adapter = "mysqli"resources.db.params.host = 127.0.0.1
resources.db.params.port = 3307

resources.db.params.dbname = database_name
resources.db.params.username = database_user
resources.db.params.password = database_password

Для справки из руководства:

-N      Do not execute a remote command.  This is useful for just forwarding ports (pro-
tocol version 2 only).

Надеюсь, это поможет.

0

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

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

0

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