我正在使用一个大型数据库(一些表500000000+行)。每天使用LOAD DATA INFILE替换3-1000万行,每次导入大约100万行(因此使用CRON一天3-10次)。问题是,在进行如此大的文件导入时,MySQL消耗了80%的CPU,所有来自网站的常见查询都变得非常慢或网站性能下降。该网站运行在亚马逊的EC2 Windows2008服务器上。有谁知道如何在一个EC2实例中解决这个问题(不拆分数据库),谢谢。
我目前正在使用MySQL工作台通过导入一个大的CSV文件来创建表。CSV文件大约有500万条记录和100列。 但是,导入过程非常慢(该过程已经运行了两个小时)。哪个更有可能进一步减少导入时间:将记录数量减半,还是将列数量减半?(与使用in this link中描述的图形用户界面相比,有没有一种更快的导入方法?)
对于第一个GBs,导入速度相当快,有些MB/s,但是在一些GB数据之后,速度下降到50 MB/s到200 MB/s之间。导入是由pv /file.sql | mysql -u USER DB完成的
我还运行mysqltuner并改进了其中的一些设置。我想知道:这么大的一个mysqldump在一段时间后速度慢是很常见的吗?还是有什么可以进一步改进的?
我正在向Heroku托管的专用PostgreSQL实例移植MySQL数据库。我知道如何将初始数据传递给Heroku。但是,每天都有来自外部公司的数据“馈送”,需要每天导入。通常,我可以/将其scp到Postgres机器上,然后让一个cron作业执行"COPY tablename FROM path/ to /file.csv“来导入数据。注意:我已经看过并回顾了关于导入数据的heroku dev