要成功复制AWS Lambda到PostgreSQL,但未复制数据,以下是一个可能的解决方法,包括代码示例:
import psycopg2
def lambda_handler(event, context):
conn = psycopg2.connect(
host='your_host',
port='your_port',
database='your_database',
user='your_username',
password='your_password'
)
cursor = conn.cursor()
# 在这里添加复制数据的代码
conn.commit()
cursor.close()
conn.close()
INSERT
语句从源表复制数据到目标表。# 示例:从源表复制数据到目标表
def lambda_handler(event, context):
# 省略连接到数据库的代码
cursor.execute("INSERT INTO target_table SELECT * FROM source_table")
# 省略提交事务、关闭游标和关闭数据库连接的代码
请确保在代码中使用正确的源表和目标表名称,并根据您的需求进行更改。
确保您的AWS Lambda函数具有足够的权限来执行数据库复制操作。在AWS Lambda的执行角色中,为其分配适当的IAM角色,该角色具有执行对PostgreSQL数据库的读写权限。
确保在AWS Lambda配置中正确设置了触发器。例如,您可以使用云Watch定时触发器,以根据您的需求定期调用Lambda函数。
通过遵循上述步骤,您应该能够成功复制AWS Lambda到PostgreSQL,并复制数据。请注意,这只是一个示例解决方案,您可能需要根据您的具体需求进行适当的更改。