Skip to content

Commit c8d077e

Browse files
committed
Fixed: FS#2344 - Add table permissions in multiserver systems for new backup table
1 parent 6ed0989 commit c8d077e

File tree

2 files changed

+27
-7
lines changed

2 files changed

+27
-7
lines changed

install/lib/installer_base.lib.php

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -478,6 +478,14 @@ public function grant_master_database_rights($verbose = false) {
478478
if(!$this->dbmaster->query($query)) {
479479
$this->warning('Unable to set rights of user in master database: '.$value['db']."\n Query: ".$query."\n Error: ".$this->dbmaster->errorMessage);
480480
}
481+
482+
$query = "GRANT SELECT, INSERT, DELETE ON ".$value['db'].".`web_backup` TO '".$value['user']."'@'".$host."' ";
483+
if ($verbose){
484+
echo $query ."\n";
485+
}
486+
if(!$this->dbmaster->query($query)) {
487+
$this->warning('Unable to set rights of user in master database: '.$value['db']."\n Query: ".$query."\n Error: ".$this->dbmaster->errorMessage);
488+
}
481489

482490
}
483491

server/cron_daily.php

Lines changed: 19 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -629,9 +629,12 @@ function setConfigVar( $filename, $varName, $varValue ) {
629629
chmod($web_backup_dir.'/'.$web_backup_file, 0750);
630630

631631
//* Insert web backup record in database
632-
$insert_data = "(server_id,parent_domain_id,backup_type,backup_mode,tstamp,filename) VALUES (".$conf['server_id'].",".$web_id.",'web','".$backup_mode."',".time().",'".$app->db->quote($web_backup_file)."')";
633-
$app->dbmaster->datalogInsert('web_backup', $insert_data, 'backup_id');
634-
632+
//$insert_data = "(server_id,parent_domain_id,backup_type,backup_mode,tstamp,filename) VALUES (".$conf['server_id'].",".$web_id.",'web','".$backup_mode."',".time().",'".$app->db->quote($web_backup_file)."')";
633+
//$app->dbmaster->datalogInsert('web_backup', $insert_data, 'backup_id');
634+
$sql = "INSERT INTO web_backup (server_id,parent_domain_id,backup_type,backup_mode,tstamp,filename) VALUES (".$conf['server_id'].",".$web_id.",'web','".$backup_mode."',".time().",'".$app->db->quote($web_backup_file)."')";
635+
$app->db->query($sql);
636+
$app->dbmaster->query($sql);
637+
635638
//* Remove old backups
636639
$backup_copies = intval($rec['backup_copies']);
637640

@@ -651,7 +654,10 @@ function setConfigVar( $filename, $varName, $varValue ) {
651654
unlink($web_backup_dir.'/'.$files[$n]);
652655
$sql = "SELECT backup_id FROM web_backup WHERE server_id = ".$conf['server_id']." AND parent_domain_id = $web_id AND filename = '".$app->db->quote($files[$n])."'";
653656
$tmp = $app->dbmaster->queryOneRecord($sql);
654-
$app->dbmaster->datalogDelete('web_backup', 'backup_id', $tmp['backup_id']);
657+
//$app->dbmaster->datalogDelete('web_backup', 'backup_id', $tmp['backup_id']);
658+
$sql = "DELETE FROM web_backup WHERE backup_id = ".intval($tmp['backup_id']);
659+
$app->db->query($sql);
660+
$app->dbmaster->query($sql);
655661
}
656662
}
657663

@@ -715,8 +721,11 @@ function setConfigVar( $filename, $varName, $varValue ) {
715721
chgrp($db_backup_dir.'/'.$db_backup_file.'.gz', filegroup($db_backup_dir));
716722

717723
//* Insert web backup record in database
718-
$insert_data = "(server_id,parent_domain_id,backup_type,backup_mode,tstamp,filename) VALUES (".$conf['server_id'].",$web_id,'mysql','sqlgz',".time().",'".$app->db->quote($db_backup_file).".gz')";
719-
$app->dbmaster->datalogInsert('web_backup', $insert_data, 'backup_id');
724+
//$insert_data = "(server_id,parent_domain_id,backup_type,backup_mode,tstamp,filename) VALUES (".$conf['server_id'].",$web_id,'mysql','sqlgz',".time().",'".$app->db->quote($db_backup_file).".gz')";
725+
//$app->dbmaster->datalogInsert('web_backup', $insert_data, 'backup_id');
726+
$sql = "INSERT INTO web_backup (server_id,parent_domain_id,backup_type,backup_mode,tstamp,filename) VALUES (".$conf['server_id'].",$web_id,'mysql','sqlgz',".time().",'".$app->db->quote($db_backup_file).".gz')";
727+
$app->db->query($sql);
728+
$app->dbmaster->query($sql);
720729

721730
//* Remove the uncompressed file
722731
unlink($db_backup_dir.'/'.$db_backup_file);
@@ -740,7 +749,10 @@ function setConfigVar( $filename, $varName, $varValue ) {
740749
unlink($db_backup_dir.'/'.$files[$n]);
741750
$sql = "SELECT backup_id FROM web_backup WHERE server_id = ".$conf['server_id']." AND parent_domain_id = $web_id AND filename = '".$app->db->quote($files[$n])."'";
742751
$tmp = $app->dbmaster->queryOneRecord($sql);
743-
$app->dbmaster->datalogDelete('web_backup', 'backup_id', $tmp['backup_id']);
752+
//$app->dbmaster->datalogDelete('web_backup', 'backup_id', $tmp['backup_id']);
753+
$sql = "DELETE FROM web_backup WHERE backup_id = ".intval($tmp['backup_id']);
754+
$app->db->query($sql);
755+
$app->dbmaster->query($sql);
744756
}
745757
}
746758

0 commit comments

Comments
 (0)