Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用MySQL/PHP导入大量数据_Php_Mysql - Fatal编程技术网

使用MySQL/PHP导入大量数据

使用MySQL/PHP导入大量数据,php,mysql,Php,Mysql,我们创建了一个导入脚本,将大约120GB的数据导入MySQL数据库。数据保存在几百个目录中(所有目录都是独立的数据库)。每个目录包含具有表结构和表数据的文件 问题是,;它在我的本地机器上使用实际数据的子集,但在服务器上运行导入时(需要几天)。并不是所有的表都被创建(甚至是在本地测试的表)。奇怪的是,当脚本在服务器上运行时,在创建表时没有显示任何错误 以下是脚本的工作原理: 查找表示数据库的所有目录 创建所有数据库 通过表的每个数据库循环:创建表、填充表 添加了gist上的代码:添加更多日志记录以

我们创建了一个导入脚本,将大约120GB的数据导入MySQL数据库。数据保存在几百个目录中(所有目录都是独立的数据库)。每个目录包含具有表结构和表数据的文件

问题是,;它在我的本地机器上使用实际数据的子集,但在服务器上运行导入时(需要几天)。并不是所有的表都被创建(甚至是在本地测试的表)。奇怪的是,当脚本在服务器上运行时,在创建表时没有显示任何错误

以下是脚本的工作原理:

  • 查找表示数据库的所有目录
  • 创建所有数据库
  • 通过表的每个数据库循环:创建表、填充表

  • 添加了gist上的代码:

    添加更多日志记录以查看成功的步骤,因为您可能在内存使用或执行时间方面有问题

    为什么不从给定的CVS文件创建sql文件,然后在bash中进行正常导入呢


    mysql-u root-ppassword db_somethingAuch,问题出在代码中。令人惊讶的愚蠢错误


    在所有文件的子集上测试代码时,所有表信息和表内容(如果可用)。当无法创建表计数时,函数将输入一条日志语句,然后返回。在实际数据上,这是一个错误,因为存在没有数据和结构的文件,所以在创建了一些表之后,创建某个数据库的表出错了,并返回了一个结果,因此没有创建其他表

    几乎没有足够的信息供任何人帮助您。但是我建议你使用一种更合适的语言将如此大量的数据导入MySQL。可能是你的一些设置,其余的很难理解,没有任何代码。我同意Martin的观点,PHP不是这里使用的正确语言。尝试编译而不是解释的东西。你需要什么信息。我不知道在哪里寻找问题,所以给我指出一个方向,我就会得到信息。其次,我对所选的语言无能为力。@mihaiorga脚本在执行时间(好的,很多重置)和内存管理方面做得非常好。在gist上添加了代码。stackoverflow格式化程序无法处理它。