---
title: 初始化数据库
description: "以K8s部署MySQL Pod中部署的三个MySQL为例，该例中3个MySQL第一次启动时会自动初始化，可跳过以下初始化相关操作。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengdbs/ecosystemEnable/MySQL/kunpengmysqlmgr_03_0025.html
sourcePath: /source/zh/kunpengdbs/ecosystemEnable/MySQL/kunpengmysqlmgr_03_0025.html
indexId: 1e2399f2be0f09aef8171ed132c5bfb576d948751b17369744bb511dd59510a372
---
# 初始化数据库

以K8s部署MySQL Pod中部署的三个MySQL为例，该例中3个MySQL第一次启动时会自动初始化，可跳过以下初始化相关操作。

若用户使用了其他非自动初始化的MySQL镜像或自己环境中安装的MySQL数据库还未初始化，可参考执行以下操作。

逐一初始化三个示例数据库：

1. 数据库在Pod中，需先使用如下格式命令进入Pod系统中。
  1 kubectl exec -it <pod_name> -n <spaces_name> -- /bin/bash

  例如：

  1 2 3 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

2. 进入Pod中后，执行初始化。
  1 mysqld --defaults-file=/etc/my.cnf --initialize

3. 查看初始化后MySQL root的密码。
  1 cat /data/mysql/log/mysql.log

4. 使用找到的密码登录MySQL。
  1 mysql -uroot -p

5. 使用如下语句初始化root用户。
  1 2 3 4 alter user 'root'@'localhost' identified by "test123"; create user 'root'@'%' identified by 'test123'; grant all privileges on *.* to 'root'@'%'; flush privileges;
