Python通過ssh連線MySQL

2021-08-28 21:35:30 字數 710 閱讀 7904

機器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()

通過SSH連線遠端主機

要通過終端連線乙個遠端主機,正常的配置是直接在命令列中 ssh user 192.168.1.1 然後輸入秘密就好了.如果想通過ssh的方式進行免密碼登入,就要進行一定的配置.這裡的環境是mac linux之間的連線,首先通過命令列生成ssh密匙.一般在home目錄下的.ssh資料夾 隱藏 生成密匙...

OpenSUSE無法通過SSH連線

一 使用命令列 rpm qa grep ssh檢視是否已安裝ssh。linux kelh rpm qa grep ssh openssh 5.8p1 4.1.i586 libssh4 0.4.8 7.1.i586 ksshaskpass 0.5.3 2.1.i586 libssh2 1 1.2.7 ...

C 通過SSH連線MySql

出於安全考慮,有的時候資料庫伺服器只能通過ssh訪問,比如mysql服務裝在了伺服器a上,並且a機器只允許b機器才能訪問,而部署環境可能在c機器上,這時候就要c伺服器通過b伺服器連線a伺服器,這時候就需要用到ssh方式連線,需要ssh.net類庫 如下 using mysql.data.mysqlc...