Это отрывок из моего скрипта установки для новых серверов. Вы должны быть в состоянии скопировать его дословно, кроме пароля.
Вам нужно будет запустить это с помощью sudo, если вы еще не root.
#!/bin/bash
export DEBIAN_FRONTEND=noninteractive
apt-get -q -y install mysql-server
echo "Give mysql server time to start up before we try to set a password..."
sleep 5
mysql -uroot -e <<EOSQL "UPDATE mysql.user SET Password=PASSWORD('yourpasswordhere') WHERE User='root'; FLUSH PRIVILEGES;"
EOSQL
echo "Done setting mysql password."
В других ответах использовалась опция -y, которая заставляет apt-get всегда отвечать да на вопросы. -Q скрывает некоторые индикаторы прогресса, поэтому вы можете отправить результаты в журнал. Вы также можете использовать -qq, который автоматически дает вам -y. Это на странице man для apt-get.
<<EOSQL
- это синтаксис bash heredoc для удобства чтения.
Я получил наследственную часть этого решения от этого парня: http://padwasabimasala.posterous.com/non-interactive-scripted-mysql-install-on-ubu
При использовании heredoc следует помнить, что пробел перед тем, как закрывающая строка нарушает его. Так что не делайте отступ в этой строке. Вот страница о синтаксисе heredoc: http://tldp.org/LDP/abs/html/here-docs.html