python 使用mysqldb模块通过ssh隧道连接mysql
2016-05-18 08:37
696 查看
出于安全考虑,数据库服务器只允许堡垒机通过ssh访问,这对日常的使用带来了麻烦。昨天的工作中,就遇到了这样的问题,mysql数据库放在了服务器A上,只允许服务器B来访问,而我在机器C上,可以通过ssh连接服务器B。为了解决在机器C上连接mysql这个问题,用百度搜索解决方法,遗憾的是,找不到什么靠谱的,最后,还是翻墙用了google,终于找到了一种简单可靠的方法。把google赶出中国,让中国的IT技术退步了10分钟。
献上代码:
献上代码:
import MySQLdb from sshtunnel import SSHTunnelForwarder with SSHTunnelForwarder( ('sshhost.domain.com', 22), #B机器的配置 ssh_password="sshpasswd", ssh_username="sshusername", remote_bind_address=('mysqlhost.domain.com', 3306)) as server: #A机器的配置 conn = MySQLdb.connect(host='127.0.0.1', #此处必须是是127.0.0.1 port=server.local_bind_port, user='user', passwd='password', db='dbname')
相关文章推荐
- python 迭代器为什么无法第二次打印元素?
- Python语法二
- python 类型转换及一些内容编辑
- python连接HBase
- Azure File文件共享(6):使用Python开发
- Azure File文件共享(6):使用Python开发
- Codeforces Round #353 (Div. 2) ABCDE 题解 python
- python中的id() 函数深度解剖
- Python爬虫学习资料书籍推荐
- Python文件迭代的用法实例教程
- Twitter的分布式自增ID算法Snowflake实现分析及其Java、Php和Python版
- Python实战:爬虫的基础
- Python performance
- PySide——Python图形化界面
- Python 代码性能优化
- python匹配ip正则
- python 基于次世代验证码识别系统的小demo
- 发现使用python+tushare做量化交易 其实不是很难
- kombu------python的消息库
- python 安装 cairo