Usage

create_pool_and_get_connection

create_pool_and_get_connection.py
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#!/usr/bin/env python

import sys
import logging

from mysql.connector import Error

from dbpool import (
    ConnectionPool,
    PoolOption,
    PoolError,
)

logging.basicConfig()
logger = logging.getLogger(__name__)

if __name__ == "__main__":
    op = PoolOption(min_idle=2, max_idle=4)
    mysql_settings = {
        'host': 'localhost',
        'port': 3306,
        'username': 'tester',
        # 'password': 'Rae9nie3pheevo',
        'password': 'Rae9nie3pheevoquai3aeh',
        'database': 'sbtest',
    }
    try:
        pool = ConnectionPool(op, **mysql_settings)
    except Error as e:
        logger.error(e)
        sys.exit(1)

    db_conn = None
    try:
        db_conn = pool.borrow_connection()
        cur = db_conn.cursor()
        cur.execute('SELECT 123')
        print(cur.fetchall())
        cur.close()
        db_conn.close()
    except PoolError as e:
        logger.error(e)
        sys.exit(1)
    except Error as e:
        logger.error(e)
        sys.exit(1)

    pool.close()