Python 将表从一个数据库复制到另一个数据库
我试图使用python将一个表从S3服务器复制到Redhat服务器上,但它不起作用。有什么想法吗 作为一个初始限制,我不能在源服务器中创建临时表,我只能复制到我的计算机上并从那里上传 首先,我尝试用pandas创建一个空数据帧,添加块以避免类似的内存问题,但我得到了一些错误,包括(OperationalError:('08S01','08S01]通信链路故障(14)(SQLFetch)'):Python 将表从一个数据库复制到另一个数据库,python,sql,pandas,amazon-s3,redhat,Python,Sql,Pandas,Amazon S3,Redhat,我试图使用python将一个表从S3服务器复制到Redhat服务器上,但它不起作用。有什么想法吗 作为一个初始限制,我不能在源服务器中创建临时表,我只能复制到我的计算机上并从那里上传 首先,我尝试用pandas创建一个空数据帧,添加块以避免类似的内存问题,但我得到了一些错误,包括(OperationalError:('08S01','08S01]通信链路故障(14)(SQLFetch)'): 我不确定这是否是最好的方法,因此我非常愿意接受建议。我制作了一个包含许多表的Oracle迁移数据库,但丢
我不确定这是否是最好的方法,因此我非常愿意接受建议。我制作了一个包含许多表的Oracle迁移数据库,但丢失了以下代码:-( 我基本上创建了以下步骤:
- 连接源数据库
- 创建要迁移的所有表的列表
- 对于哪个表,您需要读取一个tab\u column\u名称来提取一个列名序列表
- 把日期存到字典里
- 连接目标数据库(创建表)并输入与提取相同的字符串
- 我建议您首先从所有表中提取脚本并在目标中创建
- 要在提取前进行验证,请保存行计数表以在插入后进行匹配(在目标位置进行行计数)
我希望这有帮助看起来您无法连接到SQL server。您通常会使用数据库的备份和还原实用程序,而不是从每个表中进行选择。不确定您的连接问题,但如果您担心内存问题,我不认为将所有数据附加到数据帧列表会有所帮助。您可以尝试在for循环中wirte to_sql并附加到Redhat表
connection1 = pyodbc.connect(XXXX)
query1 = 'SELECT * FROM table'
dfl = []
for i in pd.read_sql(query1, con=connection1 ,chunksize=1000):
dfl.append(chunk)
downloaded_data = pd.concat(dfl, ignore_index=True)