【问题标题】:Unattended MySQL Install on AWS Ubuntu 14.04AWS Ubuntu 14.04 上的无人值守 MySQL 安装
【发布时间】:2015-09-17 14:29:04
【问题描述】:

我正在尝试执行以下脚本以无人值守方式安装 MySQL。

“export DEBIAN_FRONTEND=noninteractive”不起作用 - 我仍然需要按几次 Enter 才能通过提示。

AWS 映像:Ubuntu Server 14.04 LTS (PV),SSD 卷类型 - ami-d85e75b0

有什么建议吗?

#!/bin/sh

sudo apt-get install libaio1

export DEBIAN_FRONTEND=noninteractive

# Install script for mysql database

sudo groupadd mysql
sudo useradd -r -g mysql mysql
sudo tar xvf mysql-server_5.6.21-1ubuntu12.04_amd64.deb-bundle.tar
if [ $? != 0 ];then echo "Unable to extract tar file."; exit 100; fi

sudo dpkg -i mysql-common_5.6.21-1ubuntu12.04_amd64.deb
if [ $? != 0 ];then echo "Unable to install package mysql-common."; exit 100; fi

sudo dpkg -i mysql-community-server_5.6.21-1ubuntu12.04_amd64.deb
if [ $? != 0 ];then echo "Unable to install package mysql-community-server."; exit 100; fi

sudo dpkg -i mysql-community-client_5.6.21-1ubuntu12.04_amd64.deb
if [ $? != 0 ];then echo "Unable to install package mysql-community-client."; exit 100; fi

sudo mv /etc/mysql/my.cnf my.cnf.in
if [ $? != 0 ];then echo "Unable to move /etc/mysql/my.cnf."; exit 100; fi

sudo sed -e s/127.0.0.1/0.0.0.0/g my.cnf.in | sudo tee /etc/mysql/my.cnf
if [ $? != 0 ];then echo "Unable to configure my.cnf."; exit 100; fi

#sudo rm -f my.cnf.in

sudo /etc/init.d/mysql restart
if [ $? != 0 ];then echo "Unable to restart mysql server."; exit 100; fi

exit 0

# Leave the last line empty, otherwise it can cause problems running the script

【问题讨论】:

    标签: mysql bash ubuntu amazon-web-services


    【解决方案1】:

    看,在手册man dpkg 中,您可以找到一组选项--force-confdef(强制保留默认选项而不提示)和--force-confold(强制保留旧的conf 文件)

    因此,最终命令将如下所示(取决于您需要什么):
    sudo dpkg -i --force-confdef mysql-common_5.6.21-1ubuntu12.04_amd64.deb

    sudo dpkg -i --force-confold mysql-common_5.6.21-1ubuntu12.04_amd64.deb

    试试这个方法,它在issue here 中帮助了我。 顺便问一下,dpkg 在问你什么?

    【讨论】:

      【解决方案2】:

      问候我还没有尝试过,但几周前我看到了这个 tut:

      https://serversforhackers.com/video/installing-mysql-with-debconf

      【讨论】:

      • 这可能是我自己的无知,但是 export DEBIAN_FRONTEND=noninteractive 对我不起作用,可能是因为我使用的是 dpkg 而不是 apt-get?当我尝试 mysql-server-5.6 的 apt-get 路由时,我遇到了一系列与此处的原始问题无关的其他问题。此外,“sudo debconf-get-selections | grep mysql-server”不会为我返回任何内容,因此我无法确定应该设置哪些选项。
      • 也许你需要 sudo DEBIAN_FRONTEND : sudo DEBIAN_FRONTEND=noninteractive link
      • 因为它与我的脚本有关,我会做“sudo debian_frontend=noninteractive dpkg -i mysql-common_5.6.21-1ubuntu12.04_amd64.deb”等吗?
      猜你喜欢
      • 2012-04-02
      • 1970-01-01
      • 2019-11-17
      • 2015-09-23
      • 2017-12-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-12
      相关资源
      最近更新 更多