728x90

 

ConnectionPool 생성하기

MySQL 커넥터 Python pooling.MySQLConnectionPool및 pooling.PooledMySQLConnection클래스를 사용하여 연결 풀을 만들고 관리

from mysql.connector import pooling

try:
    connection_pool = pooling.MySQLConnectionPool(pool_name="pynative_pool",
                                                  pool_size=1,
                                                  pool_reset_session=True,
                                                  host='localhost',
                                                  database='python_db',
                                                  user='pynative',
                                                  password='pynative@#29')
  • MySQLConnectionPool 인자
    • pool_name: 풀 이름입니다. 보시다시피 연결 풀 이름으로 pynative_pool을 지정했습니다. 이 인수가 제공되지 않으면 MySQL 커넥터 Python은 호스트, 사용자 및 데이터베이스 이름을 사용하여 이름을 자동으로 설정합니다. 애플리케이션은 다른 이름으로 각 풀을 생성해야 합니다.
    • pool_size: 풀 크기는 풀이 지원할 수 있는 연결 개체의 수입니다. 이 인수를 지정하지 않으면 기본값은 5입니다. 풀 크기는 0 또는 0보다 작을 수 없습니다.
    • pool_reset_session: 연결이 풀로 반환되면 세션 변수를 재설정합니다.
    • user, password, 및 database는 MySQL을 연결하기 위한 추가 연결 인수입니다.

ConnectionPool 가져오기

connection_obj = connection_pool.get_connection()

728x90

MySQL로 연결 풀을 생성, 관리 및 사용하는 Python 예제

from mysql.connector import Error
from mysql.connector import pooling

try:
    connection_pool = pooling.MySQLConnectionPool(pool_name="pynative_pool",
                                                  pool_size=5,
                                                  pool_reset_session=True,
                                                  host='localhost',
                                                  database='python_db',
                                                  user='pynative',
                                                  password='pynative@#29')

    print("Printing connection pool properties ")
    print("Connection Pool Name - ", connection_pool.pool_name)
    print("Connection Pool Size - ", connection_pool.pool_size)

    # Get connection object from a pool
    connection_object = connection_pool.get_connection()

    if connection_object.is_connected():
        db_Info = connection_object.get_server_info()
        print("Connected to MySQL database using connection pool ... MySQL Server version on ", db_Info)

        cursor = connection_object.cursor()
        cursor.execute("select database();")
        record = cursor.fetchone()
        print("Your connected to - ", record)

except Error as e:
    print("Error while connecting to MySQL using Connection pool ", e)
finally:
    # closing database connection.
    if connection_object.is_connected():
        cursor.close()
        connection_object.close()
        print("MySQL connection is closed")
728x90
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기
반응형