很久很久沒寫部落格了,自從跳槽之後就特別忙,也就是那種真正的996工作,今天有個同事問我ssh連線到資料庫要我幫忙,他說問了很多人都不會,然後確實我覺得可以分享一下,因為ssh連線資料庫安全效能會更高。不多bb了,進入正題。
首先通過ssh方式連線mysql需要匯入乙個sshtunnelforwarder的工具包,我是直接在pycharm的terminal執行pip install sshtunnel也就是ssh的通道工具,既然是連線mysql資料庫那麼也需要pip install pymysql。我強烈推薦在ide pycharm的terminal中pip安裝,不推薦在powershell中pip安裝,因為在powershell中pip安裝之後需要對映,如果環境變數設定有問題可能需要手動 對映,會比較麻煩,所以小夥伴還是在terminal中安裝吧。
安裝好了之後就敲**吧。
import pymysql
from sshtunnel import sshtunnelforwarder
import os
def connect_mysql():
server = sshtunnelforwarder(ssh_address_or_host=('ssh**資訊的位址', 埠號),
ssh_username='ssh連線使用者的登入名',
ssh_password='pwd密碼',
remote_bind_address=('遠端連線的位址,我們是雲端的連線位址', 3306))
server.start()
conn = pymysql.connect(host='資料庫連線資訊的連線位址',
port=server.local_bind_port,#這個不變
user='資料庫使用者的id',
passwd='使用者的賬號密碼',
db='要連線的資料庫名')
return conn
dbconn = connect_mysql()
cursor = dbconn.cursor()
後面的**就不寫了哈,直接增刪改查就ok了。 python SSH連線工具類
import os import paramiko class sshconnectionutils hostname port 22 username password ssh def init self,hostname,port,username,password self.hostname ...
python ssh登入 python ssh連線
pip install paramiko 檢視並啟動ssh服務 service ssh status 新增使用者 useradd d home zet zet passwd zet 賦予ssh許可權 vi etc ssh sshd config 新增allowusers zet 客戶端 coding...
Python基礎 Python連線MySQL
什麼是 pymysql?pymysql 是在 python3.x 版本中用於連線 mysql 伺服器的乙個庫,python2中則使用mysqldb。pymysql 遵循 python 資料庫 api v2.0 規範,幷包含了 pure python mysql 客戶端庫。pymysql 安裝 在使用...