programing

암호 프롬프트 없이 Ubuntu에 MySQL 설치

itsource 2022. 10. 5. 23:38
반응형

암호 프롬프트 없이 Ubuntu에 MySQL 설치

Ubuntu에 MySQL 서버를 설치하는 스크립트를 작성하려면 어떻게 해야 합니까?

sudo apt-get install mysql는 설치되지만 콘솔에 비밀번호를 입력하도록 요구됩니다.

이걸 어떻게 대화식으로 하지?즉, 패스워드를 제공할 수 있는 스크립트를 작성합니다.

#!/bin/bash
sudo apt-get install mysql  # To install MySQL server

# How to write script for assigning password to MySQL root user
# End
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

다음과 같은 특정 버전의 경우mysql-server-5.6의 버전을 다음과 같이 지정해야 합니다.

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

mysql-community-server의 경우 키는 약간 다릅니다.

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

your_password를 원하는 루트 비밀번호로 바꿉니다.(루트 패스워드를 공백으로 둘 수도 있습니다).

사용 중인 셸이 여기서 스트링을 지원하지 않는 경우(zsh, ksh93 bash 지원):

echo ... | sudo debconf-set-selections 

이거면 충분할 거야

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

물론 루트 패스워드는 공백이 됩니다.따라서 다음과 같은 것을 실행할 수 있습니다.

mysqladmin -u root password mysecretpasswordgoeshere

나중에 계정에 암호를 추가합니다.

또 다른 방법은 다음과 같습니다.

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

이렇게 하면 암호가 "root"로 설정됩니다.간단한 따옴표를 사용하여 빈 암호를 설정할 수 없습니다.''하지만 이 솔루션은 저에게 충분했습니다.

여기의 솔루션에 근거하고 있습니다.

용도:

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'"

언급URL : https://stackoverflow.com/questions/7739645/install-mysql-on-ubuntu-without-a-password-prompt

반응형