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)
- 如果我尝试回显变量 MYSQL_ROOT_PASSWORD,我会得到密码 rootpass。 ✅
- 如果我尝试使用 MYSQL_PASSWORD 非 root 密码进行同样的操作,通过更改 jsonpath,我可以找到密码 motdepasse。 ✅
我运行一个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
我正在尝试连接到我用 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)
- 如果我尝试回显变量 MYSQL_ROOT_PASSWORD,我会得到密码 rootpass。 ✅
- 如果我尝试使用 MYSQL_PASSWORD 非 root 密码进行同样的操作,通过更改 jsonpath,我可以找到密码 motdepasse。 ✅
我运行一个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