dbMysqlConfig.cnf
[dbMysql]
host = 127.0.0.1
port = 3306
user = root
password = wonderful2021
db_name = test001
charset = utf8
直接读取配置文件进行链接
# -*- ecoding: utf-8 -*-
# @ModuleName: test002
# @Function:
# @Author: darling
# @Time: 2022-05-05 20:01
import configparser
import pymysql
from loguru import logger
from pymysql import Connection
db_config = configparser.ConfigParser()
db_config.read_file(open('./dbUntils/dbMysqlConfig.cnf', encoding='utf-8', mode='rt'))
conn: Connection = pymysql.connect(
host=db_config.get('dbMysql', 'host'), # 连接名称,默认127.0.0.1
user=db_config.get('dbMysql', 'user'), # 用户名
passwd=db_config.get('dbMysql', 'password'), # 密码
port=int(db_config.get('dbMysql', 'port')), # 端口,默认为3306
db=db_config.get('dbMysql', 'db_name'), # 数据库名称
charset=db_config.get('dbMysql', 'charset'), # 字符编码
)
# 根据SQL获取数据
def get_all_for_sql(sql):
logger.info('开始执行数据SQL')
logger.info(sql)
# 打开数据库连接
# 使用 cursor() 方法创建一个游标对象 cursor
cursor = conn.cursor()
# 使用 execute() 方法执行 SQL 查询
cursor.execute(sql)
# 使用 fetchall() 方法获取s所有数据.
data = cursor.fetchall()
conn.close()
logger.info('数据SQL执行完毕')
return list(data)
if __name__ == '__main__':
get_all_for_sql('select * from table')
读取配置文件创建连接池进行链接
# -*- ecoding: utf-8 -*-
# @ModuleName: test002
# @Function:
# @Author: darling
# @Time: 2022-05-05 20:01
import configparser
import pymysql
from dbutils.pooled_db import PooledDB
from loguru import logger
db_config = configparser.ConfigParser()
db_config.read_file(open('./dbUntils/dbMysqlConfig.cnf', encoding='utf-8', mode='rt'))
mysql_conf = {
'host': db_config.get('dbMysql', 'host'), # 连接名称,默认127.0.0.1
'user': db_config.get('dbMysql', 'user'), # 用户名
'passwd': db_config.get('dbMysql', 'password'), # 密码
'port': int(db_config.get('dbMysql', 'port')), # 端口,默认为3306
'db': db_config.get('dbMysql', 'db_name'), # 数据库名称
'charset': db_config.get('dbMysql', 'charset'), # 字符编码
}
pool = PooledDB(pymysql, 50, **mysql_conf)
print(pool)
# 连接池链接
conn = pool.connection()
# 根据SQL获取数据
def get_all_for_sql(sql):
logger.info('开始执行数据SQL')
logger.info(sql)
# 打开数据库连接
# 使用 cursor() 方法创建一个游标对象 cursor
cursor = conn.cursor()
# 使用 execute() 方法执行 SQL 查询
cursor.execute(sql)
# 使用 fetchall() 方法获取s所有数据.
data = cursor.fetchall()
conn.close()
logger.info('数据SQL执行完毕')
return list(data)
if __name__ == '__main__':
get_all_for_sql('select * from table')