Skip to content
Snippets Groups Projects
Commit 41dd8eb9 authored by Marius Burkard's avatar Marius Burkard
Browse files

- backported mysql password change fix from master

parent c03f4d6e
No related branches found
No related tags found
No related merge requests found
...@@ -686,8 +686,26 @@ class mysql_clientdb_plugin { ...@@ -686,8 +686,26 @@ class mysql_clientdb_plugin {
} }
if($data['new']['database_password'] != $data['old']['database_password'] && $data['new']['database_password'] != '') { if($data['new']['database_password'] != $data['old']['database_password'] && $data['new']['database_password'] != '') {
$link->query("SET PASSWORD FOR '".$link->escape_string($data['new']['database_user'])."'@'$db_host' = '".$link->escape_string($data['new']['database_password'])."';"); $result = $app->db->queryOneRecord("SELECT VERSION() as version");
$app->log('Changing MySQL user password for: '.$data['new']['database_user'].'@'.$db_host, LOGLEVEL_DEBUG); $dbversion = $result['version'];
// mariadb or mysql < 5.7
if(stripos($dbversion, 'mariadb') !== false || version_compare($dbversion, '5.7', '<')) {
$query = sprintf("SET PASSWORD FOR '%s'@'%s' = '%s'",
$link->escape_string($data['new']['database_user']),
$db_host,
$link->escape_string($data['new']['database_password']));
$link->query($query);
}
// mysql >= 5.7
else {
$query = sprintf("ALTER USER IF EXISTS '%s'@'%s' IDENTIFIED WITH mysql_native_password AS '%s'",
$link->escape_string($data['new']['database_user']),
$db_host,
$link->escape_string($data['new']['database_password']));
$link->query($query);
}
$app->log('Changing MySQL user password for: ' . $data['new']['database_user'] . '@' . $db_host, LOGLEVEL_DEBUG);
} }
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment