mysql - 在 bash 脚本中自动安装 mysql-server 后无法连接到 mysql

标签 mysql linux bash unix

生成一个随机字符串:

passdb="$(< /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c${1:-2};)"

passdb 提供给 debconf 即为 mysql 用户设置随 secret 码:

debconf-set-selections <<< 'mysql-server mysql-server/root_password password $passdb' debconf-set-selections <<< 'mysql-server mysql-server/root_password_again password $passdb' apt-get -y install mysql-server

它已成功安装,但从我的 bash 脚本触发此查询后出现错误::

查询:

mysql --user=root --password=$passdb --execute="CREATE DATABASE IF NOT EXISTS \`$DOMAIN_NM$CONCAT\`; grant all on \`$DOMAIN_NM$CONCAT\`.* to 'wordpressuser'@'localhost' identified by '$OUTPUT1'; FLUSH PRIVILEGES;" 

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

最佳答案

我认为 Álvaro 对引号的看法是正确的,试试类似的东西

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

关于mysql - 在 bash 脚本中自动安装 mysql-server 后无法连接到 mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30914890/

相关文章:

mysql - 使用 SQL 对多个变体行进行价格搜索

python - 我可以使用带有字符串连接的 Django F() 对象吗?

linux - 在特定时间运行命令

regex - grep 模式从文件中排除负数

php - 为什么我在使用 PHP 执行 SQL 查询时收到超时错误?

mysql - 返回由sql语句动态查询的列名,以获取特定记录满足特定条件的列值

Linux Centos Web 服务器软链接(soft link)(符号链接(symbolic link))问题

linux - 我如何过滤从 whois 获得的结果?

c - Win32 API 中 Posix popen() 的等价物是什么?

Linux - 仅翻转最后一行,使用 awk