无法通过 kubectl 导入 MySql 转储

Can't import MySql dump via kubectl

我正在努力通过 kubectl 导入转储到 Kubernetes 中的 MySql 数据库 运行。没有错误输出,也没有导入数据。

这是存在这样的 pod 的证据,还将文件转储到磁盘根目录上,名为 /database.sql 和命令。

root@node-1:~# kubectl get pods -n esopa-test | grep mariadb
esopa-test-mariadb-0                    1/1     Running     0          14d
root@node-1:~# ll /database.sql 
-rw-r--r-- 1 root root 4418347 Oct 14 08:50 /database.sql
root@node-1:~# kubectl exec esopa-test-mariadb-0 -n esopa-test -- mysql -u root -proot database < /database.sql 
root@node-1:~# 

感谢您的任何建议

您可以使用 kubectl cp 命令将文件从 pod 复制到节点。

将文件从 pod 复制到 node 语法非常简单:

kubectl cp <some-namespace>/<some-pod>:<directory-inside-pod> <directory_on_your_node>

所以在您的用例中,您可以使用以下命令:

kubectl cp esopa-test/esopa-test-mariadb-0:/database.sql <directory_on_your_node>

要将文件从节点复制到 Pod,您可以使用:

kubectl cp <directory_on_your_node> esopa-test/esopa-test-mariadb-0:/database.sql