From f1b9899062306c1cf0ba3e7781393b305862feb1 Mon Sep 17 00:00:00 2001 From: tbrehm <t.brehm@ispconfig.org> Date: Mon, 18 Aug 2008 19:01:08 +0000 Subject: [PATCH] FS#149 - error in expert installation --- install/install.php | 2 +- install/lib/installer_base.lib.php | 12 ++++++------ install/uninstall.php | 4 +++- 3 files changed, 10 insertions(+), 8 deletions(-) diff --git a/install/install.php b/install/install.php index 99c60b8356..2958a038ed 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 08a1b84d08..7b38923be4 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 5987845723..0aa488ce9c 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 -- GitLab