python 使用mysqldb模块通过ssh隧道连接mysql
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                python 使用mysqldb模块通过ssh隧道连接mysql
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.                        
                                出于安全考慮,數(shù)據(jù)庫服務(wù)器只允許堡壘機(jī)通過ssh訪問,這對日常的使用帶來了麻煩。昨天的工作中,就遇到了這樣的問題,mysql數(shù)據(jù)庫放在了服務(wù)器A上,只允許服務(wù)器B來訪問,而我在機(jī)器C上,可以通過ssh連接服務(wù)器B。為了解決在機(jī)器C上連接mysql這個問題,用百度搜索解決方法,遺憾的是,找不到什么靠譜的,最后,還是×××用了google,終于找到了一種簡單可靠的方法。把google趕出中國,讓中國的IT技術(shù)退步了10分鐘。
import MySQLdbfrom sshtunnel import SSHTunnelForwarderwith SSHTunnelForwarder(('sshhost.domain.com', 22), #B機(jī)器的配置ssh_password="sshpasswd",ssh_username="sshusername",remote_bind_address=('mysqlhost.domain.com', 3306)) as server: #A機(jī)器的配置,數(shù)據(jù)庫IP,端口conn = MySQLdb.connect(host='127.0.0.1', # 此處必須是是127.0.0.1port=server.local_bind_port,user='user', # 數(shù)據(jù)庫用戶passwd='password', # 數(shù)據(jù)庫密碼db='dbname') # 庫名轉(zhuǎn)載于:https://blog.51cto.com/moerjinrong/2149354
總結(jié)
以上是生活随笔為你收集整理的python 使用mysqldb模块通过ssh隧道连接mysql的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
                            
                        - 上一篇: 仓储层当前有接口 IRepository
 - 下一篇: 我们在大学图书馆发现了三本有毒的书