Подключение к “недоступной” mysql базе

Данная проблема подключения к серверу, доступ к которому закрыт возникла, когда понадобилось отредактировать blob поле в таблице, но поскольку руками это сделать практически невозможно, а phpnuke не показывает эти поля, то нужно использовать mysqlfront или аналог.

Существует препятствие – доступ на сервер закрыт снаружи, т.е. мы можем подключиться только из скриптов на localhost (127.0.0.1) – как это делает phpmyadmin. Тут то и оказывается, что это не вся правда, поскольку существует протокол ssh, в котором есть очень полезная функция перенаправления (forwarding) портов, а это значит, что можно порт 3306 – на котором обычно висит mysql (да и любой другой, по желанию) перенаправить на свою машину. Для этого нам понадобится ssh клиент (должен заметить, что у вас должен быть shell-доступ на удаленный сервер).

Я для этого использую putty, поэтому расскажу на его примере.
Создаем/загружаем подключение к нужному хосту
Переходим на закладку SSH->Tunnels
Добавляем новый порт (Add new forwarded port) в поле Source указываем 3306, или тот порт, который больше нравится – на него будет осуществляться подключение mysqlfront, в поле destination указываем localhost:3306 – это те данные, по которым подключение осуществляется на самом сервере – например phpmyadmin’ом
Подключаемся к хосту и запускаем mysqlfront или что там есть.

Собсно все, работаем  🙂

Для юниксового клиента все проще ssh host.name -L 3306:localhost:3306

Similar Posts

  • Add-in stable alpha

    Ура! Я наконец-то сделал более-менее стабильный адд-ин, который может работать не только на моей машине 🙂 На данный момент реализовано: 1. Компиляция 1.1. Компилируется каждый файл по отдельности. Файлы берутся из проекта в студии. 1.2. Ошибки/предупреждения парсятся и выводятся в формате, который понимает студия, благодаря чему можно кликнуть на ошибку и перейти на строчку в…

  • Memory Management

    Вот и подошли вплотную к своему менеджеру памяти. Очень интересная задача оказалась – завраппить маллоки и operator new. Оказалось, что ничего мегасложного в этом нету, главное выделять память так, чтобы она была выравнена на правильные границы 🙂 Хотя то, что я сделал – это пока еще мелочь, дальше хуже – надо будет свой хип делать…

  • espresso test failure

    Если внезапно вы решили подключить espresso и начать писать тесты, а потом после очередных манипуляций вдруг тесты приложения перестали запускаться и начали бросать исключение NoClassDefFoundError YourActivity, то вполне вероятно, что может спасти совершенно нелогичное действие: Добавить исключения суппорт либы в gradle для компиляции espresso (в моём случае espresso-contrib) androidTestCompile (‘com.android.support.test.espresso:espresso-contrib:2.2’) { exclude group: ‘com.android.support’ exclude…

  • Румыния: день 5 (последний)

    30.04.2008 Среда, 10:00 (окрестности Куртеа де Аргеш) Проснулись в палатке, осмотрелись, погрелись на солнышке, позавтракали и отправились к Видрару. При свете дня горы выглядели намного дружелюбнее чем предыдущей ночью, мы остановились возле плотины, теперь уже для «экскурсии». Дамба не зря входит в пятёрку грандиознейших в Европе. Её высота 166 метров, а протяжённость – 305, озеро,…

  • Снова пьянка

    На выходные ездили на дачу к нашей малой, формально – праздновать защиту магистров, реально – просто “погулять”. На этот раз было прикольнее чем прошлые пьянки – там есть футбольное поле. Мы посидели на пляже и пошли играть в футбол. Хорошая игра, тем более на фоне ЧМ 🙂 Отбегались так, что когда вернулись назад, то и…