1. 程式人生 > >Python通過ssh連線MySQL

Python通過ssh連線MySQL

機器A

通過機器B

登入機器C的MySQL

 

import pymysql

from sshtunnel import SSHTunnelForwarder

 

server = SSHTunnelForwarder(

    ssh_address_or_host=('機器B的IP', 22), # 指定ssh登入的跳轉機的address

    ssh_username='機器B的使用者名稱', # 跳轉機的使用者

    ssh_password='機器B的密碼', # 跳轉機的密碼

    remote_bind_address=('機器C的IP', 3306)

)

server.start()

 

db = pymysql.connect(

    host='127.0.0.1',

    port=server.local_bind_port,

    user='機器C的使用者名稱',

    passwd='機器C的密碼',

    db='資料庫名'

)

cur = db.cursor()

cur.execute('select * from article limit 1')

data = cur.fetchall()

print(data)

db.close()

 

server.close()