在bash脚本中自动安装mysql服务器后,无法连接到mysql

在bash脚本中自动安装mysql服务器后,无法连接到mysql,mysql,linux,bash,unix,Mysql,Linux,Bash,Unix,生成一个随机字符串: passdb=“$”(

生成一个随机字符串:

passdb=“$”(

向debconf馈送passdb,即为mysql用户设置随机密码:


debconf set selections我认为阿尔瓦罗关于引号的说法是正确的,试试下面的方法

debconf-set-selections <<< "mysql-server mysql-server/root_password password $passdb"
debconf-set-selections <<< "mysql-server mysql-server/root_password_again password $passdb"

debconf set selections我认为阿尔瓦罗关于引号的说法是正确的,试试下面的方法

debconf-set-selections <<< "mysql-server mysql-server/root_password password $passdb"
debconf-set-selections <<< "mysql-server mysql-server/root_password_again password $passdb"


debconf set selections如果我没记错的话,单引号不会在bash中展开变量。当你
echo
it时它是什么样子的?echo给了我一个像og7ipchwould这样的随机字符串出于好奇。。。您可以使用literal
$passdb
作为密码登录吗?像
--password=\$passdb
debconf-get-selections
显示什么?(它在debconf-utils包中)我只是通过它运行了一下,它没有。我怀疑
debconf
是否接受了变量?如果我没有记错,单引号不会在bash中展开变量。当你
echo
it时它是什么样子的?echo给了我一个像og7ipchwould这样的随机字符串出于好奇。。。您可以使用literal
$passdb
作为密码登录吗?像
--password=\$passdb
debconf-get-selections
显示什么?(它在debconf-utils包中)我只是通过它运行了一下,它没有。我怀疑
debconf
是否接受了变量?如果我没有记错,单引号不会在bash中展开变量。当你
echo
it时它是什么样子的?echo给了我一个像og7ipchwould这样的随机字符串出于好奇。。。您可以使用literal
$passdb
作为密码登录吗?像
--password=\$passdb
debconf-get-selections
显示什么?(它在debconf-utils包中)我只是通过它运行了一下,它没有。如果
debconf
接受一个变量,我会怀疑吗?我在上面的更改中得到了一个错误:
无法打开h8:在/usr/bin/debconf set selections第114行没有这样的文件或目录。
我将答案更改为使用双引号,另外,您的pass generate函数只使用了pass的2个字符。请尝试将-2更改为更好的值,如-10。我在上面的更改中遇到一个错误:
无法打开h8:No-this文件或目录,位于/usr/bin/debconf set selections行114。
我更改了答案,使用了双引号,另外,您的pass generate函数只使用了pass的2个字符。请尝试将-2更改为更好的值,如-10。我在上面的更改中遇到一个错误:
无法打开h8:No-this文件或目录,位于/usr/bin/debconf set selections行114。
我更改了答案,使用了双引号,另外,您的pass generate函数只使用了pass的2个字符,请尝试将-2更改为更好的值,如-10