我在我的PHP项目中使用Postgresql,它是用Codeigniter构建的,这个数据库的大小非常大我的项目中有多达500个表我已经使用了实用程序类进行备份但由于现在数据库的大小而失败了在谷歌搜索我发现了一个解决方案pg_dump,但无法找到适合我的问题的例子。这是我的代码,但它只生成一个空的sql文件。
$username = $this->db->username;
$password = $this->db->password;
$hostname = $this->db->hostname;
$dbname = $this->db->database;
$dataDir = DB_BACKUP;
$pgDumpDir = "/usr/bin/pg_dump";
$dated = date('d-m-Y');
$fileName = $dataDir . "backup_" . $dated . ".sql";
$command = $pgDumpDir;
$command .=" --username ".$username;
$command .= " ".$dbname." > ".$fileName;
echo "ok " . shell_exec($command);