我正在關注Kubernetes的
但是當我嘗試按照教程建議連接服務器時:
kubectl run -it --rm --image=mysql:8 --restart=Never mysql-client -- mysql -h mysql -ppassword
我收到以下錯誤:
錯誤 1045 (28000):用戶 'root'@'10.1.0.99' 的訪問被拒絕(使用密碼:YES)洗掉 pod“mysql-client”
我已經看過這些問題:
- kubernetes部署后無法訪問mysql root或user
- 在 MySQL Workbench 中訪問 MySQL Kubernetes 部署
但改變mountPath或port沒有奏效。
uj5u.com熱心網友回復:
root帳戶的默認行為只能從容器內部連接。這是示例的更新版本,允許您從遠程連接:
apiVersion: apps/v1
kind: Deployment
metadata:
name: mysql
spec:
selector:
matchLabels:
app: mysql
strategy:
type: Recreate
template:
metadata:
labels:
app: mysql
spec:
containers:
- image: mysql:8.0.26
name: mysql
env:
# Use secret in real usage
- name: MYSQL_ROOT_PASSWORD
value: password
- name: MYSQL_ROOT_HOST
value: "%"
ports:
- containerPort: 3306
name: mysql
volumeMounts:
- name: mysql-persistent-storage
mountPath: /var/lib/mysql
volumes:
- name: mysql-persistent-storage
emptyDir: {}
# Following the original example, comment the emptyDir and uncomment the following if you have StorageClass installed.
# persistentVolumeClaim:
# claimName: mysql-pv-claim
除了影像標簽外,客戶端連接沒有變化:
kubectl run -it --rm --image=mysql:8.0.26 --restart=Never mysql-client -- mysql -h mysql -ppassword
測驗show databases;:
mysql> show databases;
--------------------
| Database |
--------------------
| information_schema |
| mysql |
| performance_schema |
| sys |
--------------------
4 rows in set (0.00 sec)
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/323707.html
標籤:mysql 码头工人 Kubernetes
