4
我想通過SSH將我的python程序連接到遠程MySQL數據庫。通過SSH連接到MySQL數據庫
我使用Paramiko進行SSH和SQLAlchemy。
這是我到目前爲止有:
import paramiko
from sqlalchemy import create_engine
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect('host', port=port, username='user', password='pass')
engine = create_engine('mysql+mysqldb://user:[email protected]/db')
我得到一個錯誤:
sqlalchemy.exc.OperationalError: (_mysql_exceptions.OperationalError) (2003, "Can't connect to MySQL server on 'mcsdev.croft-it.com' (60)")
如果服務器通過主機名是已經上市,爲什麼不從遠程自身授予對數據庫的訪問?似乎有點多餘通過SSH連接,然後到MySQL服務器 – fechnert
因爲該程序將分發到許多不同的網站,我們不知道IP。我可以添加一個通配符,但我不認爲這會是理想的 – Mantis
但是,如果在該應用程序運行的每個服務器上都有一個公共ip地址(對於ssh部分),則可以連接到數據庫本身。 – fechnert