温馨提示×

怎么使用python多线程连接数据库

小亿
161
2024-02-19 17:49:39
栏目: 编程语言
亿速云云数据库,读写分离,安全稳定,弹性扩容,低至0.3元/天!! 点击查看>>

在Python中使用多线程连接数据库可以通过使用threading模块创建多个线程。下面是一个简单的示例代码,演示如何在多线程中连接数据库:

import threading
import pymysql

def connect_database():
    # 连接数据库
    conn = pymysql.connect(host='localhost', user='root', password='password', database='test')
    cursor = conn.cursor()
    
    # 执行SQL查询
    cursor.execute('SELECT * FROM users')
    rows = cursor.fetchall()
    
    # 打印查询结果
    for row in rows:
        print(row)
    
    # 关闭数据库连接
    cursor.close()
    conn.close()

# 创建多个线程
threads = []
for i in range(5):
    thread = threading.Thread(target=connect_database)
    threads.append(thread)

# 启动所有线程
for thread in threads:
    thread.start()

# 等待所有线程结束
for thread in threads:
    thread.join()

在上面的代码中,我们使用了threading.Thread类创建了5个线程,每个线程都会连接数据库并执行一次查询操作。然后使用start()方法启动所有线程,并通过join()方法等待所有线程结束。

需要注意的是,多线程连接数据库时要确保对数据库连接和查询操作的线程安全性进行处理,避免出现数据竞争和异常情况。可以考虑使用线程锁或连接池等方式确保线程安全。

亿速云「云数据库 MySQL」免部署即开即用,比自行安装部署数据库高出1倍以上的性能,双节点冗余防止单节点故障,数据自动定期备份随时恢复。点击查看>>

推荐阅读:怎么用python连接数据库

0