python 建立 Oracle连接池
时间: 2023-07-01 15:20:06 浏览: 179
可以使用 Python 的 cx_Oracle 模块来建立 Oracle 连接池。以下是一个简单的示例代码:
```python
import cx_Oracle
from cx_Oracle import pool
# 创建连接池
dsn_tns = cx_Oracle.makedsn('localhost', '1521', service_name='ORCLCDB')
pool = cx_Oracle.SessionPool(user='hr', password='password', dsn=dsn_tns, min=2, max=5, increment=1)
# 从连接池中获取连接
connection = pool.acquire()
# 使用连接进行数据库操作
cursor = connection.cursor()
cursor.execute("SELECT * FROM employees")
rows = cursor.fetchall()
# 释放连接
pool.release(connection)
```
在上面的代码中,我们首先使用 `cx_Oracle.makedsn` 函数创建了一个 Oracle 数据库的 DSN(Data Source Name),然后使用 `cx_Oracle.SessionPool` 类创建了一个连接池,其中 `min` 参数指定了连接池中最少要保持的连接数,`max` 参数指定了连接池中最多可以有多少个连接,`increment` 参数指定了连接池中每次增加的连接数。
然后我们使用 `pool.acquire()` 方法从连接池中获取一个连接,使用完毕后再使用 `pool.release()` 方法释放连接。在实际应用中,我们可以将连接池封装成一个单例或者工厂类,方便在多个模块中共享数据库连接。
阅读全文