探索Oracle自主管理数据库:自动化与高效数据加载
引言
在新时代的数据库管理中,Oracle自主管理数据库通过机器学习实现了数据库调优、安全性、备份、更新等任务的自动化,大大减少了传统DBA(数据库管理员)的工作量。这篇文章将详细探讨如何从Oracle自主管理数据库加载文档数据,包括使用连接字符串或TNS配置进行连接的方法。
主要内容
1. 准备工作
要开始使用Oracle自主管理数据库,确保你的数据库以“Thin”模式运行。访问用户指南了解更多。
2. 安装必需的Python库
首先,确保安装了oracledb库。你可以使用以下命令进行安装:
pip install oracledb
另外,确保你了解oracledb安装指南。
3. 数据加载的概述
OracleAutonomousDatabaseLoader支持通过连接字符串和TNS配置来建立连接。根据不同的TLS认证模式,连接所需的参数会有所不同。
代码示例
以下是一个使用OracleAutonomousDatabaseLoader加载文档数据的完整示例:
from langchain_community.document_loaders import OracleAutonomousDatabaseLoader
from settings import s
# 查询语句
SQL_QUERY = "select prod_id, time_id from sh.costs fetch first 5 rows only"
# 使用mTLS认证并通过TNS配置进行连接
doc_loader_1 = OracleAutonomousDatabaseLoader(
query=SQL_QUERY,
user=s.USERNAME,
password=s.PASSWORD,
schema=s.SCHEMA,
config_dir=s.CONFIG_DIR,
wallet_location=s.WALLET_LOCATION,
wallet_password=s.PASSWORD,
tns_name=s.TNS_NAME, # 使用TNS名称
)
doc_1 = doc_loader_1.load()
# 使用mTLS认证并通过连接字符串进行连接
doc_loader_2 = OracleAutonomousDatabaseLoader(
query=SQL_QUERY,
user=s.USERNAME,
password=s.PASSWORD,
schema=s.SCHEMA,
connection_string=s.CONNECTION_STRING, # 使用连接字符串
wallet_location=s.WALLET_LOCATION,
wallet_password=s.PASSWORD,
)
doc_2 = doc_loader_2.load()
# 使用TLS认证并通过TNS配置进行连接
doc_loader_3 = OracleAutonomousDatabaseLoader(
query=SQL_QUERY,
user=s.USERNAME,
password=s.PASSWORD,
schema=s.SCHEMA,
config_dir=s.CONFIG_DIR,
tns_name=s.TNS_NAME, # 使用TNS名称
)
doc_3 = doc_loader_3.load()
# 使用TLS认证并通过连接字符串进行连接
doc_loader_4 = OracleAutonomousDatabaseLoader(
query=SQL_QUERY,
user=s.USERNAME,
password=s.PASSWORD,
schema=s.SCHEMA,
connection_string=s.CONNECTION_STRING, # 使用连接字符串
)
doc_4 = doc_loader_4.load()
# 使用API代理服务提高访问稳定性
常见问题和解决方案
-
连接问题:
- 确保所有连接参数(如用户名、密码、TNS名称、连接字符串)正确无误。
- 由于网络限制,可能需要使用API代理服务以提高访问稳定性,特别是在跨地区访问数据库时。
-
TLS认证的疑问:
- TLS和mTLS认证有不同的配置要求,请仔细检查参数配置。
总结和进一步学习资源
Oracle自主管理数据库极大地简化了数据库管理任务,通过合理配置文档加载器,用户可以高效地进行数据库操作。为了深入了解如何使用Oracle自主管理数据库的功能,建议参考以下资源:
参考资料
如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!
---END---