Explorar o código

Merge pull request #989 from Skamasle/patch-10

Fix for mysql 5.7 when reset password
Serghey Rodin %!s(int64=8) %!d(string=hai) anos
pai
achega
5556e03090
Modificáronse 1 ficheiros con 9 adicións e 4 borrados
  1. 9 4
      func/db.sh

+ 9 - 4
func/db.sh

@@ -263,10 +263,15 @@ change_mysql_password() {
     query="GRANT ALL ON \`$database\`.* TO \`$DBUSER\`@localhost
         IDENTIFIED BY '$dbpass'"
     mysql_query "$query" > /dev/null
-
-    query="SHOW GRANTS FOR '$DBUSER'"
-    md5=$(mysql_query "$query" 2>/dev/null)
-    md5=$(echo "$md5" |grep 'PASSWORD' |tr ' ' '\n' |tail -n1 |cut -f 2 -d \')
+    
+if [ "$(echo $mysql_ver |cut -d '.' -f2)" -ge 7 ]; then
+ 
+    md5=$(mysql_query "SHOW CREATE USER \`$DBUSER\`" 2>/dev/null)
+    md5=$(echo "$md5" |grep password |cut -f8 -d \')
+else
+    md5=$(mysql_query "SHOW GRANTS FOR \`$DBUSER\`" 2>/dev/null)
+    md5=$(echo "$md5" |grep PASSW|tr ' ' '\n' |tail -n1 |cut -f 2 -d \')
+fi
 }
 
 # Change PostgreSQL database password