ssh 访问数据库
1:首先下载SSHTunnelForwarder
pip install SSHTunnelForwarder
2,代码如下
with SSHTunnelForwarder(
('110.51.55.144', 22), # B机器的配置 # 测试服务器的ip
ssh_password="", #测试服务器的密码
ssh_username="ubuntu", # 测试服务器的用户
remote_bind_address=('127.0.0.1', 3306)) as server: # A机器的配置 # 这里是固定死的
# 这个是利用sqlalchemy 连接
self.client = create_engine(
"mysql+pymysql://{sql_user}:{sql_password}@{sql_host}:3306/{sql_db}?charset=utf8".format(
sql_host='127.0.0.1', # 这个固定
sql_db=DBParems.sql_db.value, # 测试环境的mysql 数据库
sql_user=DBParems.sql_user.value, # 测试环境 sql用hu
sql_password=DBParems.sql_password.value, #测试环境sql 密码
sql_port=server.local_bind_port # 这个不用懂
))
# 这个是利用MySQLdb 连接
self.conn = MySQLdb.connect(host='127.0.0.1', # 此处必须是是127.0.0.1
port=server.local_bind_port,
user=DBParems.sql_user.value,
passwd=DBParems.sql_password.value,
db=DBParems.sql_db.value)