我想将数据库从本地上传到AWS等云服务。 我已经从本地数据库成功创建了数据库以及云数据库中的表和列,但是无法传输数据。
我尝试使用python使用outfile和infile命令,但出现错误
mycursor3.execute("SELECT * FROM %s INTO OUTFILE '/var/lib/mysql-files/test.csv' "% (tb[0]))
sqlformula="LOAD DATA LOCAL INFILE 'test.csv' INTO TABLE %s "% (tb[0])
mycursor1.execute(sqlformula)
mydb1.commit()
文件已成功导出,但无法导入云中。 收到错误消息:mysql.connector.errors.InterfaceError:无法读取文件“ test.csv”
答案 0 :(得分:0)
假设您有自己的问题的csv文件,则可以执行以下操作:
将文件上传到配置了AWS CLI且可以访问数据库的EC2实例中。
根据AWS文档,您可以将平面文件分为以下
split -C 1024m -d test.csv test.part_
在类似Unix的系统(包括Linux)上,这会将文件分成小于1 GB的多个部分。
对于Linux:
mysqlimport --local \
--compress \
--user=username \
--password \
--host=hostname \
--fields-terminated-by=',' Acme test.part_*
这是实际的文档: [https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/MySQL.Procedural.Importing.AnySource.html][1]