python - 如何从 AWS-Aurora postgresql 读取数据作为 python pandas DataFrame 并将其写入 Oracle 表?
问题描述
我需要读取 AWS-Aurora 表并将内容写入 Oracle 表。我的代码是-
import pandas as pd
import psycopg2
from sqlalchemy import types, create_engine
import cx_Oracle
import sys
**# Connect to Aurora**
host = sys.argv[1]
username = sys.argv[2]
password = sys.argv[3]
database = sys.argv[4]
db_conn = psycopg2.connect(host=host, database=database, user=username, password=password)
sql = "SELECT * FROM Table_Name;"
data_df = pd.io.sql.read_sql(sql, db_conn)
print(data_df.head(2))
db_conn.close()
# Connect to Oracle and write data_df dataframe
dsn = cx_Oracle.makedsn('10.z.y.xx', '1521', service_name='abcd')
u_name = sys.argv[5]
pwd = sys.argv[6]
conn = cx_Oracle.connect(user=u_name, password=pwd, dsn=dsn)
ora_engine = create_engine(f'oracle+cx_oracle://{u_name}:{pwd}@{dsn}', echo=True)
ora_engine.connect()
data_df.to_sql(name='oracle_table_name', con=conn)
conn.close()
连接到 Aurora 工作正常,但我无法在 Oracle 中创建引擎并编写数据帧!
解决方案
代码是正确的,由于配置了大量数据和低 RAM,它失败了。
谢谢。
推荐阅读
- javascript - 如何通过调用不同的id函数来使用多个模型框?
- react-native - 我该如何解决这个问题
- amazon-web-services - 将 zip 文件上传到 lambda 函数时出错
- vue.js - Accordion 有一个默认的活动面板,但它不会打开
- php - FFMpeg 无法生成缩略图,但它将 mp4 转换为 mp3
- exact-online - ExactOnline - 错误 403:禁止 - 分区被阻止
- sql - 根据字段总和显示数据的比例
- faust - 使用 faust 流式访问 rpc 回复中的 kafka 标头
- php - 在文件中搜索多个字符串并输出数据
- python - 如何将“2019-11-30T07:00:00+09:00”日期转换为整数?