В общем, ситуация такая: есть postgres база, к которой возможно подключиться единственным способом - приконнектиться по ssh к линукс консоли, в которой запущен sql-клиент. Да, извращенство, но по другому никак.
Я сейчас использую SharpSSH, но она насквозь глючная и достала меня вконец. Посоветуйте, пожалуйста, что получше, можно даже с ссылками на примеры использования.))
Можно взять консольный ssh-клиент, и запустить его в туннельном режиме. Подойдет plink.exe из комплекта putty
PS даже если вы не будете его использовать - имеет смысл сравнить уровень глюков при использовании разных библиотек, взяв plink за идеал, как гарантированно работающее решение.
Что-то я не очень понял, чем мне поможет ssh-туннель. В базовом варианте я могу подключиться путти к удаленной машине, к консоли, где автоматом запускается баш-скрипт, который запускает psql, настроенный на подключение к базе, запущенной на третьей машине (которая находится в локалке со второй). Я могу писать запросы и получать ответы.
А моя программулина сейчас делает (ну, или пытается) то же самое, то есть, подключается по ssh к удаленной машине, отправляет запросы, получает ответ в виде текста и парсит его.
Я на самом деле не программист и во всем этом разбираюсь слабо)) просто мне надоело писать запросы руками и обрабатывать их в экселе)
Вы написали: "Я сейчас использую SharpSSH, но она насквозь глючная и достала меня вконец." Я предложил относительно простой способ проверить, это действительно SharpSSH глючная, или же способ подключения к базе выбран крайне неудачный.
А, понял. Но так или иначе, либа все равно работает не правильно. Если я правильно понимаю стримы, при попытке чтения должен возвращаться либо результат, либо отсутствие его, если в стриме пусто. А sharpSSH при попытке чтения стрима возвращает результат, если в стриме что-то есть. А если там пусто - вешает поток до того момента, как там появятся данные. Либо насовсем вешает - тут уж как повезет.
Но и способ подключения выбран крайне неудачно - но другого нет (я так думал).
Но я сегодня попробовал пробросить туннель еще раз через путти - и в этот раз все получилось)) И обожекакоесчастье, теперь могу использовать нормальную postgres библиотеку, а не парсить текст в псевдографике))