(以防萬一這是一個 XY 問題):我需要導(dǎo)出一個非常大的表(85M 行),我沒有 SSH 訪問權(quán)限。而且 PhpMyAdmin 和 SQLYog(遠程連接)都不能正常工作(它們只導(dǎo)出我表的 3%,并且沒有錯誤地完成導(dǎo)出,不知道為什么)。所以我想從 PHP 執(zhí)行 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”是否更好,或者如果我需要等待輸出然后發(fā)送文件下載,或者我可以執(zhí)行命令,完成PHP 腳本,然后在 1 小時左右后返回并通過 FTP 下載文件?(我也擔心文件大小,我想大概是 5 或 7GB)。最好創(chuàng)建 85 個 csv 文件,每個文件有 100 萬行?做這個的最好方式是什么?
- 2 回答
- 0 關(guān)注
- 163 瀏覽
添加回答
舉報
0/150
提交
取消