Install MySQL on Ubuntu without a password prompt

后端 未结 4 1443
死守一世寂寞
死守一世寂寞 2020-11-27 09:04

How do I write a script to install MySQL server on Ubuntu?

sudo apt-get install mysql will install, but it will also ask for a password to be entered in

相关标签:
4条回答
  • 2020-11-27 09:21

    Another way to make it work:

    echo "mysql-server-5.5 mysql-server/root_password password root" | debconf-set-selections
    echo "mysql-server-5.5 mysql-server/root_password_again password root" | debconf-set-selections
    apt-get -y install mysql-server-5.5
    

    Note that this simply sets the password to "root". I could not get it to set a blank password using simple quotes '', but this solution was sufficient for me.

    Based on a solution here.

    0 讨论(0)
  • 2020-11-27 09:21

    Use:

    sudo DEBIAN_FRONTEND=noninteractive apt-get install -y mysql-server
    
    sudo mysql -h127.0.0.1 -P3306 -uroot -e"UPDATE mysql.user SET password = PASSWORD('yourpassword') WHERE user = 'root'"
    
    0 讨论(0)
  • 2020-11-27 09:29
    sudo debconf-set-selections <<< 'mysql-server mysql-server/root_password password your_password'
    sudo debconf-set-selections <<< 'mysql-server mysql-server/root_password_again password your_password'
    sudo apt-get -y install mysql-server
    

    For specific versions, such as mysql-server-5.6, you'll need to specify the version in like this:

    sudo debconf-set-selections <<< 'mysql-server-5.6 mysql-server/root_password password your_password'
    sudo debconf-set-selections <<< 'mysql-server-5.6 mysql-server/root_password_again password your_password'
    sudo apt-get -y install mysql-server-5.6
    

    For mysql-community-server, the keys are slightly different:

    sudo debconf-set-selections <<< 'mysql-community-server mysql-community-server/root-pass password your_password'
    sudo debconf-set-selections <<< 'mysql-community-server mysql-community-server/re-root-pass password your_password'
    sudo apt-get -y install mysql-community-server
    

    Replace your_password with the desired root password. (it seems your_password can also be left blank for a blank root password.)

    If your shell doesn't support here-strings (zsh, ksh93 and bash support them), use:

    echo ... | sudo debconf-set-selections 
    
    0 讨论(0)
  • 2020-11-27 09:31

    This should do the trick

    export DEBIAN_FRONTEND=noninteractive
    sudo -E apt-get -q -y install mysql-server
    

    Of course, it leaves you with a blank root password - so you'll want to run something like

    mysqladmin -u root password mysecretpasswordgoeshere
    

    Afterwards to add a password to the account.

    0 讨论(0)
提交回复
热议问题