Связь с python mysql через ssh

Я подключаюсь к своему db вручную, используя следующие шаги:

1>load a putty session with ip 1.1.1.1 and port 1111 2>login as: login1 3>login1@1.1.1.1's password: pwd1 4>[login1@G ~]$ ssh login1@2.2.2.2 5>[login1@l ~]$ MySQL -h 3.3.3.3 -u login2 -p'pwd2' -D mydb 

Теперь я могу запросить все, что угодно, например select * from my_table.

У меня есть код selenium webdriver python, откуда я хочу прочитать мой db. Я не могу этого добиться из-за туннеля ssh и 3 IP-адресов.

 from sshtunnel import SSHTunnelForwarder import MySQLdb with SSHTunnelForwarder( ('host', 1111), ssh_password="pwd1 ssh_username="login1", remote_bind_address=('2.2.2.2', 1111)) as server: con = None con = MySQLdb.connect(user='login2',passwd='pwd2',db='mydb',host=3.3.3.3,port=3306) cur = con.cursor() 

Я получаю эту ошибку:

BaseSSHTunnelForwarderError: не удалось разрешить IP-адрес для% s, прервать!

One Solution collect form web for “Связь с python mysql через ssh”

При SSHTunnelForwarder экземпляра SSHTunnelForwarder :

Хостом param является ваш удаленный ssh 2.2.2.2 .
Аргумент для remote_bind_address будет для туннеля, порт – тот, который вы хотите туннелировать, поэтому ваш порт mysql. ('3.3.3.3', 3306)

Затем при подключении к mysql вы хотите, чтобы он прошел через туннель, чтобы получить доступ к экземпляру mysql. Порт туннеля – server.local_bind_port .

 from sshtunnel import SSHTunnelForwarder import MySQLdb with SSHTunnelForwarder( ('2.2.2.2', 1111), ssh_password="pwd1" ssh_username="login1", remote_bind_address=('3.3.3.3', 3306)) as server: con = MySQLdb.connect( user='login2',passwd='pwd2', db='mydb',host=1.1.1.1, port=server.local_bind_port) 
  • Как снова открыть процесс в терминале linux?
  • Python: SSH в устройство Cisco и запуск команд show
  • Распределение Paramiko и Pseudo-tty
  • Трудно установить библиотеку pshon ssh на windows (ssh был заменен на «paramiko»)
  • python ssh в jumpserver, а затем ssh в хост от jumpserver для выполнения команды
  • Как запустить команду bash как системного пользователя, не предоставляя этому пользователю право запускать команды как любой пользователь
  • Код Python для установки ssh на удаленный сервер, а затем подключитесь к MYSQL
  • Как перечислить все папки и файлы в каталоге после подключения через sftp в python
  • Python - лучший язык программирования в мире.