gpt4 book ai didi

mysql - 无法部署 MySQL pod。 --initialize 指定但数据目录中有文件

转载 作者:行者123 更新时间:2023-11-29 07:23:31 25 4
gpt4 key购买 nike

我正在尝试使用 Kubernetes 在 Digital Ocean 上设置 MySQL pod。

我一直收到这个错误:

Initializing database
2019-03-05T14:32:58.707421Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2019-03-05T14:32:58.708753Z 0 [ERROR] --initialize specified but the data directory has files in it. Aborting.
2019-03-05T14:32:58.711746Z 0 [ERROR] Aborting

我的 yaml 有很多东西,但对这部分配置感兴趣的行如下。

# ------------------- Persistent Volume Claim ------------------- #

kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: test-mysql-volume-claim
...
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 2Gi
storageClassName: do-block-storage

---

# ------------------- Deployment ------------------- #

kind: Deployment
apiVersion: apps/v1 # for versions before 1.9.0 use apps/v1beta2
...
spec:
...
spec:
containers:
- image: mysql:5.7
...
volumeMounts:
- name: test-mysql-volume
mountPath: "/var/lib/mysql"
volumes:
- name: test-mysql-volume
persistentVolumeClaim:
claimName: test-mysql-volume-claim

---

如果我在部署配置中注释掉 PVC 和与 PVC 相关的行,一切正常。

另外,如果我改变

mountPath: "/var/lib/mysql"

mountPath: "/data"

它有效。但我显然需要 /var/lib/mysql...

它也发生在全新的集群上。

有什么想法吗?

最佳答案

我在 Kubernetes 和 MySQL 5.7 上也有这个问题。

添加来自 yosifki 的建议根据我容器的定义,一切正常。

A new ext4 disk partition is not usually empty;there is a lost+found directory, which mysql is known to choke on. Youcould try adding --ignore-db-dir=lost+found to the CMD to know forsure (from mysql docs)

这是我的工作 YAML 定义的摘录:

name: mysql-master
image: mysql:5.7
args:
- "--ignore-db-dir=lost+found"

关于mysql - 无法部署 MySQL pod。 --initialize 指定但数据目录中有文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55005539/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com