I deployed wordpress and mysql,everything works fine I just want to know how can I access my mysql from command line
My services
wordpress LoadBalancer 10.102.29.45 <pending> 80:31262/TCP 39m
wordpress-mysql ClusterIP None <none> 3306/TCP 42m
Describe pod
kubectl describe pod wordpress-mysql-5fc97c66f7-jx42l
Name: wordpress-mysql-5fc97c66f7-jx42l
Namespace: default
Priority: 0
PriorityClassName: <none>
Node: minikube/10.0.2.15
Start Time: Mon, 11 Mar 2019 08:49:19 +0100
Labels: app=wordpress
pod-template-hash=5fc97c66f7
tier=mysql
Annotations: <none>
Status: Running
IP: 172.17.0.15
Controlled By: ReplicaSet/wordpress-mysql-5fc97c66f7
Containers:
mysql:
Container ID: docker://dcfe9037ab14c3615aec4000f89f28992c52c40a03581215d921564e5b3bec58
Image: mysql:5.6
Image ID: docker-pullable://mysql@sha256:36cad5daaae69fbcc15dd33b9f25f35c41bbe7e06cb7df5e14d8b966fb26c1b4
Port: 3306/TCP
Host Port: 0/TCP
State: Running
Started: Mon, 11 Mar 2019 08:50:33 +0100
Ready: True
Is there any analogy to docker? How to query mysql?
If I try with exec
kubectl exec -it wordpress-mysql-5fc97c66f7-jx42l -- /bin/bash
root@wordpress-mysql-5fc97c66f7-jx42l:/# mysql
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
To fix the issue, you have to set up a password for your MySQL user.
According to the official documentation, you need to create a Secret object containing your password:
kubectl create secret generic mysql-pass --from-literal=password=YOUR_PASSWORD
And update your deployment spec with the following part:
env:
- name: MYSQL_ROOT_PASSWORD
valueFrom:
secretKeyRef:
name: mysql-pass
key: password