【问题标题】:Faster way to import thousands of records from a single txt file into database MySQL?将数千条记录从单个 txt 文件导入数据库 MySQL 的更快方法?
【发布时间】:2011-04-01 03:52:49
【问题描述】:

我有 50 个 txt 文件,每个文件大约有 8 列和 80,000 条记录。我在 Matlab 中编写了一个脚本,它一个一个地读取所有文件,然后使用每个文件的单个 INSERT 语句将其放入 MySQL。但是这样做会花费大量时间(即使是单个文件!)。我也尝试过使用 PHPmyAdmin,它说文件太大而无法上传(大约 8 MB)。因此,请提出一种解决方法,以及通常导入大型 txt 文件的理想方法是什么。另外导入 1 个这样的文件通常需要多长时间?

【问题讨论】:

    标签: mysql database import phpmyadmin


    【解决方案1】:

    您所需要的都在本手册中:http://dev.mysql.com/doc/refman/5.0/en/insert-speed.html

    【讨论】:

      【解决方案2】:

      【讨论】:

      • 是的,加载数据似乎工作得很快。想知道为什么单次插入多条记录需要这么多时间!
      【解决方案3】:

      试试mysqlimport

      myisam 的表类型也将导入更快,这取决于您是否需要事务支持 (innodb)。

      【讨论】:

      • 在插入之前启动事务并且 InnoDB 赶上 MyISAM(不要忘记在之后提交;))
      【解决方案4】:

      使用多重插入。它并不昂贵,因为您仍然只连接到 mysql 一次。然后,您可以使用循环来更新您的值(-> 您的 sql)并执行(我认为它是 mathlab 的“获取”)查询。

      (例如参见http://spx.arizona.edu/Projects/Database/Accessing%20mySQL%20through%20Matlab.pdf

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-11-27
        • 2012-11-22
        • 1970-01-01
        • 1970-01-01
        • 2013-08-05
        • 2022-07-25
        • 1970-01-01
        相关资源
        最近更新 更多