怎么从docker 内部去连接host 上的mysql

一般来说数据最好放在一个公共的地方,这样在多个docker 可以共享这些数据. 这篇文章就是讲怎么从docker 内部去连接host上的 mysql 数据库. 因为我的host 有public ip, 所以没有什么特别的东西,直接连接就OK了. 如果是连接内网ip 可能需要一些额外配置,具体没有试过.

1. 先选一个 python 连接mysql 的module, 考虑到在 怎样远程访问 MySQL 里讲到的加密方式不匹配造成的连接不了的问题,就选取了mysql 官方出品的 Connector/Python. 在Docker内部安装这个包.

pip install mysql-connector-python

2. 尝试连接, ok. [1]

#!/usr/bin/env python
# coding=utf-8

import mysql.connector

def connectdb():
    print('连接到mysql服务器...')
    # 打开数据库连接
    # 用户名:hp, 密码:Hp12345.,用户名和密码需要改成你自己的mysql用户名和密码,并且要创建数据库TESTDB,并在TESTDB数据库中创建好表Student
    db = mysql.connector.connect(user="hp", passwd="Hp12345.", database="TESTDB", use_unicode=True)
    print('连接上了!')
    return db

Ref:

[1] Python操作MySQL数据库的三种方法

转载请注明出处 http://www.cnblogs.com/mashuai-191/
原文地址:https://www.cnblogs.com/mashuai-191/p/9510783.html