Skip to content

Instantly share code, notes, and snippets.

@rbarros
Forked from enoch85/mysql_secure.sh
Created June 1, 2016 13:49
Show Gist options
  • Save rbarros/c47b9eda3b0f5289b6574f7443f51d7c to your computer and use it in GitHub Desktop.
Save rbarros/c47b9eda3b0f5289b6574f7443f51d7c to your computer and use it in GitHub Desktop.
Automating mysql_secure_installation for MySQL 5.7
#!/bin/bash
aptitude -y install expect
// Not required in actual script
MYSQL_ROOT_PASSWORD=abcd1234
SECURE_MYSQL=$(expect -c "
set timeout 10
spawn mysql_secure_installation
expect \"Enter current password for root:\"
send \"$MYSQL\r\"
expect \"Would you like to setup VALIDATE PASSWORD plugin?\"
send \"n\r\"
expect \"Change the password for root ?\"
send \"n\r\"
expect \"Remove anonymous users?\"
send \"y\r\"
expect \"Disallow root login remotely?\"
send \"y\r\"
expect \"Remove test database and access to it?\"
send \"y\r\"
expect \"Reload privilege tables now?\"
send \"y\r\"
expect eof
")
echo "$SECURE_MYSQL"
aptitude -y purge expect
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment