diff --git a/install/install.php b/install/install.php index 99c60b83561ed5e9e20717d459d2f2f23e60c46c..2958a038ede8d0f1cab680c24c455c3afebee94a 100644 --- a/install/install.php +++ b/install/install.php @@ -224,7 +224,7 @@ if($install_mode == 'Standard') { if(strtolower($inst->simple_query('Create a new database? (We do not want to join a existing ISPConfig server setup)',array('y','n'),'y')) == 'y') { //* Create the mysql database $inst->configure_database(); - system('/etc/init.d/mysql restart'); + //system('/etc/init.d/mysql restart'); } //* Insert the Server record into the database diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php index 08a1b84d0854d76997f754c9d1f096183ed64069..7b38923be4a9255168c452dbf36d96a4b81c713e 100644 --- a/install/lib/installer_base.lib.php +++ b/install/lib/installer_base.lib.php @@ -157,17 +157,17 @@ class installer_base { $from_host = $conf['hostname']; } + // Delete ISPConfig user, in case that it exists + $this->db->query("DELETE FROM mysql.user WHERE User = '".$cf['ispconfig_user']."' AND Host = '".$from_host."';"); + $this->db->query("DELETE FROM mysql.db WHERE Db = '".$cf['database']."' AND Host = '".$from_host."';"); + $this->db->query('FLUSH PRIVILEGES;'); + //* Create the ISPConfig database user $query = 'GRANT SELECT, INSERT, UPDATE, DELETE ON '.$cf['database'].".* " ."TO '".$cf['ispconfig_user']."'@'".$from_host."' " ."IDENTIFIED BY '".$cf['ispconfig_password']."';"; if(!$this->db->query($query)) { - $tmp = $this->db->queryOneRecord("SELECT * from mysql.user WHERE User = '".$cf['ispconfig_user']."' AND Host = '$from_host'"); - if($tmp["User"] == $cf['ispconfig_user']) { - $this->db->query("UPDATE mysql.user SET `password` = PASSWORD('".$cf['ispconfig_password']."') WHERE User = '".$cf['ispconfig_user']."' AND Host = '$from_host'"); - } else { - $this->error('Unable to create database user: '.$cf['ispconfig_user']); - } + $this->error('Unable to create database user: '.$cf['ispconfig_user'].' Error: '.$this->db->errorMessage); } //* Reload database privelages diff --git a/install/uninstall.php b/install/uninstall.php index 5987845723f357b7a4d533bbb99de42ed1d896a8..0aa488ce9c7339f3a8541b42839d7b6bb9f3faab 100644 --- a/install/uninstall.php +++ b/install/uninstall.php @@ -33,7 +33,7 @@ require("/usr/local/ispconfig/server/lib/app.inc.php"); // Delete the ISPConfig database // $app->db->query("DROP DATABASE '".$conf["db_database"]."'"); -$app->db->query("DELETE FROM mysql.user WHERE User = 'ispconfig'"); +// $app->db->query("DELETE FROM mysql.user WHERE User = 'ispconfig'"); exec("/etc/init.d/mysql stop"); @@ -47,6 +47,8 @@ unlink("/etc/apache2/sites-available/ispconfig.vhost"); // Delete the ispconfig files exec('rm -rf /usr/local/ispconfig'); +echo "Please do not forget to delete the ispconfig user in the mysql.user table.\n\n"; + echo "Finished.\n"; ?> \ No newline at end of file