首页 > 解决方案 > 如何加快从数据库中保存文件

问题描述

我有一个mysql数据库。这是一个非常庞大的数据库。当我选择具有 1M 记录的数据时,我应该在磁盘上制作 csv 文件。我制作 PHP 脚本。但是它被Linux杀死了。如何快速制作 PHP 脚本?

        $batches = $itemcount / 50000; 
        for ($i = 0; $i <= $batches; $i++) {

            $offset = $i * 50000;
            $sql = $sql_org . " LIMIT  $offset, 50000 ";

        $stmt = $db->prepare($sql);


            if($stmt) {
                if($stmt->execute()) {
                     $stmt->bind_result($FIRSTNAME, $LASTNAME, $PHONE....

标签: phpmysqllinux

解决方案


安装 mysql 客户端并输出输出

shell_exec('mysql -u username -p "password" --database=dbname --host=AWShostname --port=AWSport --batch 
  -e "select * from `table`" 
  | sed #s/\t/","/g;s/^/"/;s/$/"/;s/\n//g# > /path/to/yourlocalfilename.csv')

注意:从 AWS 导出大量数据非常昂贵。


推荐阅读