0
我試圖實現mysql池,但有一個問題: 我從一個env變量解析mysql連接憑證,這基本上是一個字典,並有多個數據庫憑證。問題在池中多個mysql連接
dict={'db1': {'username':**** ,'password':**** ,'database':*****,'host':****,'uri': mysql url with username ,password,database},
'db2': {'username': ****, 'hostname': *****,host: ******, 'password': ***,'uri': mysql url with username ,password,database}}
global conn
conn={}
def connect():
cred=json.loads(os.environ['dict'])
for db in cred:
multiple_databases=cred[db]['uri']
url=urlparse.urlparse(multile_databases)
conn[db]={'user':'url.username','password':'url.password','host':'url.hostname','database':'url.path[1:]'}
cnx = mysql.connector.connect(pool_name = "mypool",
pool_size = 3,
**conn[db])
connect()
問題在這裏只有一個連接正在打開,它是針對數據庫'db2'的。
當我執行相同的代碼而沒有執行池,兩個連接工作正常/打開。
for db in cred:
multiple_databases=cred[db]['uri']
url=urlparse.urlparse(multile_databases)
conn[db]=mysql.connector.connect(user=url.username,password=url.password,host=url.hostname,database=url.path[1:])
問題:在執行池時,爲什麼兩個連接都沒有打開?