Python連接Mysql、Influxdb、Redis的方法
阿新 • • 發佈:2018-09-13
import redis參數 int host conn 讀取配置 efault auth password 一、在配置文件中配置相關連接參數
在conf.ini中:
#mysql參數
[Mysql] host = 192.168.1.2 port = 3306 user = root passwd = pswdmysql db = student #InfluxDB參數 [InfluxDB] host = 192.168.1.3 port = 8086 user = root passwd = pswdinflux db = student #Redis參數 [InfluxDB] host = 192.168.1.4 port = 6379 user = root passwd = pswdredis
二、讀取配置文件參數,返回連接對象``
/usr/bin/env python
coding:utf-8
auther:yuanmuc
connect to mysql,influxdb,redis
from influxdb import InfluxDBClient
import MySQLdb
import redis
import sys
reload(sys)
sys.setdefaultencoding(‘uft-*8‘)
def DBcon(): cf = ConfigParser.SafeConfigParser() cf.read("conf.ini") mysql的參數 MysqlHost = cf.get(‘Mysql‘,‘host‘) MysqlPort = cf.get(‘Mysql‘,‘port‘) MysqlUser = cf.get(‘Mysql‘, ‘user‘) MysqlPwd = cf.get(‘Mysql‘, ‘passwd‘) MysqlDb = cf.get(‘Mysql‘, ‘db‘)
influxdb的參數
InfHost = cf.get(‘InfluxDB‘,‘host‘)
InfPort = cf.get(‘InfluxDB‘, ‘port‘)
InfUser = cf.get(‘InfluxDB‘, ‘user‘)
InfPwd = cf.get(‘InfluxDB‘, ‘passwd‘)
InfDB = cf.get(‘InfluxDB‘, ‘db‘)
redis的參數 RedisHost = cf.get(‘Redis‘,‘host‘) RedisPort = cf.get(‘Redis‘, ‘port‘) RedisUser = cf.get(‘Redis‘, ‘user‘) RedisPwd = cf.get(‘Redis‘, ‘passwd‘)
#連接mysql
MysqlCon = MySQLdb.connect(host=MysqlHost,port=int(MysqlPort),user=MysqlUser,passwd=MysqlPwd,db=MysqlDb,charset=‘utf-8‘)
MysqlCur = MysqlCon.cursor()
#連接influxdb
Influxdb_Client = InfluxDBClient(InfHost,InfPort,InfUser,InfPwd,InfDB)
#連接redis
pool = redis.ConnectionPool(host=RedisHost,port=RedisPort,password=RedisPwd,decode_responses=True)
Redis_Client = redis.Redis(connection_pool=pool)
返回連接
return MysqlCon,MysqlCur,Influxdb_Client,Redis_Client
def MysqlClose():
MysqlCon.close()
MysqlCur.close()
if __name__ == ‘__main__‘:
MysqlCon, MysqlCur, Influxdb_Client, Redis_Client = DBcon()
Python連接Mysql、Influxdb、Redis的方法