I'm trying to install MySQL on Ubuntu Natty from a shell script. However, I keep running into one major issue: when I try to define the password outside of the shell script.
Below is the code to my shell script (which I have saved in /etc/init.d/install_mysql:
export DEBIAN_FRONTEND=noninteractive echo mysql-server-5.1 mysql-server/root_password password $dbpass | debconf-set-selections echo mysql-server-5.1 mysql-server/root_password_again password $dbpass | debconf-set-selections apt-get -y install mysql-server
So what I enter in the terminal is:
dbpass="mysqlpass" chmod +x /etc/init.d/install_mysql /etc/init.d/install_mysql
MySQL installs, but it installs without a password, so I can just do something like
mysql -uroot to access mysql (which I don't want).
The funny thing is if I put the password in the shell script as regular text, it works ok. So if I my install script is as follows, everything works (i.e. I must specify a password to access mysql):
export DEBIAN_FRONTEND=noninteractive echo mysql-server-5.1 mysql-server/root_password password mysqlpass | debconf-set-selections echo mysql-server-5.1 mysql-server/root_password_again password mysqlpass | debconf-set-selections apt-get -y install mysql-server
Is there a way I can use a shell script variable to define my password in the shell script, instead of entering the password literally?!
Thanks in advance.
I've found the answer to this.
The following is what I should have entered in the terminal:
dbpass="mysqlpass" export dbpass chmod +x /etc/init.d/install_mysql /etc/init.d/install_mysql
It works like a charm now.