Improve the fixing of mariadb authentication

This commit is contained in:
Bob Mottram 2017-06-25 13:51:51 +01:00
parent f04afc2a39
commit 92b9828bf6
1 changed files with 12 additions and 7 deletions

View File

@ -156,13 +156,22 @@ function get_mariadb_password {
function mariadb_fix_authentication { function mariadb_fix_authentication {
# See http://www.pontikis.net/blog/debian-9-stretch-rc3-web-server-setup-php7-mariadb # See http://www.pontikis.net/blog/debian-9-stretch-rc3-web-server-setup-php7-mariadb
# https://mariadb.com/kb/en/mariadb/unix_socket-authentication-plugin # https://mariadb.com/kb/en/mariadb/unix_socket-authentication-plugin
function_check run_query remove_watchdog_daemon mariadb
run_query_root mysql "update mysql.user set plugin = '' where User='root'; flush privileges;" systemctl stop mariadb
run_query_root mysql "UPDATE user SET Password=PASSWORD('$MARIADB_PASSWORD') where USER='root'; flush privileges;" mysqld_safe --skip-grant-tables &
output=$(mysql -u root << EOF
use mysql;
update mysql.user set plugin = '' where User='root'; flush privileges;
UPDATE user SET Password=PASSWORD('$MARIADB_PASSWORD') where USER='root'; flush privileges;
EOF
)
kill_pid=$(ps aux | grep mysql | awk -F ' ' '{print $2}' | head -n 1)
kill -9 $kill_pid
sed -i 's| --skip-grant-tables||g' /lib/systemd/system/mariadb.service sed -i 's| --skip-grant-tables||g' /lib/systemd/system/mariadb.service
systemctl daemon-reload systemctl daemon-reload
systemctl restart mariadb systemctl restart mariadb
add_watchdog_daemon mariadb
} }
function mariadb_create_root_user { function mariadb_create_root_user {
@ -216,10 +225,6 @@ function install_mariadb {
mariadb_fix_authentication mariadb_fix_authentication
# mariadb daemon seems to occasionally crash
# This is a crude attempt to keep it running
add_watchdog_daemon mariadb
mariadb_create_root_user mariadb_create_root_user
mark_completed $FUNCNAME mark_completed $FUNCNAME