MySQL 使用 Helm 创建的无法与非 root 用户连接

MySQL created with Helm can't connect with non root user

我正在尝试连接到我用 Helm 部署的数据库。 我有一个 mysql.yaml 文件:

auth:
  database: db_host
  username: hamuto
  password: motdepasse
  rootPassword: rootpass
image:
  debug: true

我使用以下命令安装 MySQL 数据库:✅

helm install mysql bitnami/mysql -f mysql.yaml -f mysql-pv.yaml -f mysql-pvc.yaml

部署 MySQL 时会发生什么:

这将输出一些连接到数据库的命令:

echo Username: root
MYSQL_ROOT_PASSWORD=$(kubectl get secret --namespace default mysql -o jsonpath="{.data.mysql-root-password}" | base64 --decode)

我运行一个pod作为客户端使用命令:✅

kubectl run mysql-client --rm --tty -i --restart='Never' --image docker.io/bitnami/mysql:8.0.29-debian-10-r15 --namespace default --env MYSQL_ROOT_PASSWORD=$MYSQL_ROOT_PASSWORD --command -- bash

在 pod 中,我 运行 以下命令以 root 身份连接到数据库:✅

mysql -h mysql.default.svc.cluster.local -uroot -p"$MYSQL_ROOT_PASSWORD"

问题:

尝试与非 root 用户连接无效。 ❌

mysql -h mysql.default.svc.cluster.local -u hamuto -pmotdepasse

无效。 ❌

我已经使用以下命令检查了 helm 文件模板:

helm template mysql .

没有显示任何异常。

当我用 :

删除 mysql 时,我有一个持久卷

helm delete mysql

PV 和 PVC 保留,导致无法创建新用户。 我只是不得不删除它,所以我做了:

kubectl delete pvc --all