以K8s部署MySQL Pod中部署的三个MySQL为例,该例中3个MySQL第一次启动时会自动初始化,可跳过以下初始化相关操作。
若用户使用了其他非自动初始化的MySQL镜像或自己环境中安装的MySQL数据库还未初始化,可参考执行以下操作。
逐一初始化三个示例数据库:
- 数据库在Pod中,需先使用如下格式命令进入Pod系统中。
| kubectl exec -it <pod_name> -n <spaces_name> -- /bin/bash
|
例如:
| kubectl exec -it mysql-1 -n ns-mysql-test -- /bin/bash
kubectl exec -it mysql-2 -n ns-mysql-test -- /bin/bash
kubectl exec -it mysql-3 -n ns-mysql-test -- /bin/bash
|
- 进入Pod中后,执行初始化。
| mysqld --defaults-file=/etc/my.cnf --initialize
|
- 查看初始化后MySQL root的密码。
| cat /data/mysql/log/mysql.log
|
- 使用找到的密码登录MySQL。
- 使用如下语句初始化root用户。
| alter user 'root'@'localhost' identified by "test123";
create user 'root'@'%' identified by 'test123';
grant all privileges on *.* to 'root'@'%';
flush privileges;
|