diff --git a/lib/Froxlor/Database/DbManager.php b/lib/Froxlor/Database/DbManager.php index eeb1e443..4d56906c 100644 --- a/lib/Froxlor/Database/DbManager.php +++ b/lib/Froxlor/Database/DbManager.php @@ -110,7 +110,7 @@ class DbManager $users = $dbm->getManager()->getAllSqlUsers(false); foreach ($databases[$dbserver['dbserver']] as $username) { - if (isset($users[$username]) && is_array($users[$username]) && isset($users[$username]['hosts']) && is_array($users[$username]['hosts'])) { + if (isset($users[$username]['hosts']) && is_array($users[$username]['hosts'])) { $password = [ 'password' => $users[$username]['password'], diff --git a/lib/Froxlor/Database/Manager/DbManagerMySQL.php b/lib/Froxlor/Database/Manager/DbManagerMySQL.php index 77e59495..a73a1be4 100644 --- a/lib/Froxlor/Database/Manager/DbManagerMySQL.php +++ b/lib/Froxlor/Database/Manager/DbManagerMySQL.php @@ -82,7 +82,8 @@ class DbManagerMySQL */ public function grantPrivilegesTo(string $username, $password, string $access_host = null, bool $p_encrypted = false, bool $update = false, bool $grant_access_prefix = false) { - $pwd_plugin = 'mysql_native_password'; + // this is required for mysql8 + $pwd_plugin = 'caching_sha2_password'; if (is_array($password) && count($password) == 2) { $pwd_plugin = $password['plugin']; $password = $password['password']; @@ -278,7 +279,7 @@ class DbManagerMySQL if (!isset($allsqlusers[$row['User']]) || !is_array($allsqlusers[$row['User']])) { $allsqlusers[$row['User']] = [ 'password' => $row['Password'] ?? $row['authentication_string'], - 'plugin' => $row['plugin'] ?? 'mysql_native_password', + 'plugin' => $row['plugin'] ?? 'caching_sha2_password', 'hosts' => [] ]; }