基於 python 3
python 2 還沒測試
importpymysql as mysql
from sshtunnel import
sshtunnelforwarder
server = sshtunnelforwarder(('
ip', '
port
'), #
跳板機ip及埠
ssh_username='
username
', #
跳板機賬號
ssh_password='
password
', #
跳板機密碼
remote_bind_address=('
database_ip
', '
database_port
')) #
目標資料庫伺服器ip、埠
server.start() #
啟動連線管道
conn =mysql.connect(
host='
127.0.0.1
', #
此處必須是是127.0.0.1
port=server.local_bind_port, #
api固定寫法
user='
username
', #
目標資料庫賬號
passwd='
password
', #
目標資料庫密碼
db='
database_name
') #
目標資料庫名稱
cur = conn.cursor() #
獲取資料庫游標
sql = "
select * from fq_wealth_user where login_name='test888';
"cur.execute(sql)
#執行sql
alldata = cur.fetchall() #
獲取所有執行sql的結果
(alldata)
#conn.commit()
cur.close() #
關閉游標
conn.close() #
關閉資料庫連線
SSH通過外網連線內網主機
主機處於內網中時,因為沒有公網ip,所以對公網是不可見的,可以利用公網伺服器進行 連線內網主機 ssh nfr 8899 localhost 22 root b位址 p 22 f 後台執行ssh指令 c 允許壓縮資料 n 不執行遠端指令 r 將遠端主機 伺服器 的某個埠 到本地端指定機器的指定埠 l...
通過SSH隧道連線遠端MySQL資料庫
命令 ssh ncpf root 111.111.111.111 l 3316 127.0.0.1 3306 引數 c 使用壓縮功能,是可選的,加快速度。p 用乙個非特權埠進行出去的連線。f 一旦ssh完成認證並建立port forwarding,則轉入後台執行。n 不執行遠端命令。該引數在只開啟 ...
Python隧道連線內網資料庫
coding utf 8 import pymysql as mysql from sshtunnel import sshtunnelforwarder pip install sshtunnel import pandas as pd author tli file 本地連線內網資料庫 time...