为了账号安全,请及时绑定邮箱和手机立即绑定

来自 PHP 的 Mysqldump 大表

来自 PHP 的 Mysqldump 大表

PHP
回首忆惘然 2021-10-15 15:18:58
(以防万一这是一个 XY 问题):我需要导出一个非常大的表(85M 行),我没有 SSH 访问权限。而且 PhpMyAdmin 和 SQLYog(远程连接)都不能正常工作(它们只导出我表的 3%,并且没有错误地完成导出,不知道为什么)。所以我想从 PHP 执行 mysqldump,问题是我不确定这是否也会杀死 PHP,因为我看到的代码正在等待 mysqldump 完成。我的代码将是(未测试):ini_set('memory_limit', '-1');set_time_limit(0);ini_set('display_errors', 1);ini_set('display_startup_errors', 1);error_reporting(E_ALL);$dbhost = 'localhost';$dbuser = 'user';$dbpass = 'pass';$dbname = 'dbname';$tableName = 'mytable';$dumpFile = __DIR__."mydump.sql";$command = "mysqldump -h$dbhost -u$dbuser -p$dbpass $dbname $tableName | gzip> $dumpFile";但是我不确定使用“exec”、“shell_exec”或“system”是否更好,或者如果我需要等待输出然后发送文件下载,或者我可以执行命令,完成PHP 脚本,然后在 1 小时左右后返回并通过 FTP 下载文件?(我也担心文件大小,我想大概是 5 或 7GB)。最好创建 85 个 csv 文件,每个文件有 100 万行?做这个的最好方式是什么?
查看完整描述

2 回答

  • 2 回答
  • 0 关注
  • 141 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信