我知道我做錯了沒有包括正確的,完整的文件路徑信息,但經過幾小時的tweeking我仍然得到一個sh: 2012-06-08-01-25.sql.gz: Permission denied mysqldump: Got errno 32 on write
錯誤。這裏是我的腳本:Cron作業完整路徑:仍然破損管道錯誤
$dbhost = "DATABASE HOST";
$dbuser = "DATABSE USER";
$dbpass = 'PASSWORD';
$dbname = "DATABASE NAME";
$backupfile = '/home/12345/data/backup/'.date("Y-m-dTH:i") . '.sql.gz';
system("mysqldump -h $dbhost -u $dbuser --password='$dbpass' $dbname | gzip > $backupfile");
$backupfile = $backupfile;
# To S3
require('/home/12345/data/backup/S3.php');
if (!defined('awsAccessKey')) define('awsAccessKey', 'ACCESS KEY');
if (!defined('awsSecretKey')) define('awsSecretKey', 'SECRET KEY');
$s3 = new S3(awsAccessKey, awsSecretKey);
if (!$s3->putObjectFile($backupfile, "BUCKET", 'db-backup/'.$backupfile, S3::ACL_PRIVATE)) {
die("104");
}
system("rm $backupfile");
該腳本荏苒使用gzip和mysqldump的我的數據庫,然後上傳這個ZIP到一個安全,加密的文件夾上的S3桶。
這將是'chown'而不是'chmod'。 –
根據您的舒適程度和操作系統的知識,任何一種都可以工作,但大多數人會認爲chown更安全。 –
他們做了兩件不同的事情,有必要使用它們中的每一個來實現其適當的功能。沒有重疊。我建議你閱讀他們的「人」頁面。 –