簡體   English   中英

MySQL Docker容器-無法導入文件

[英]MySQL Docker container - unable to import file

我有一個運行MariaDB的Docker容器,並且在鏡像的Dockerfile中,我已經將一個SQL文件復制到了容器中的某個位置:

FROM mariadb

RUN mkdir /adhoc_scripts
COPY bootup.sql /adhoc_scripts

一旦容器旋轉起來,我就可以在容器內輸入一個shell並確認sql文件確實存在於指定位置:

$ docker exec -it my_mariadb_container bash
root@6e3f4b9abe17:/# ls -lt /adhoc_scripts/
total 4
-rw-r--r-- 1 root root 1839 Apr 10 18:35 bootup.sql

但是,當我退出容器並嘗試調用以下命令時:

docker exec -it my_mariadb_container bash \
        mysql mydb -u root -prootpass \
        < /adhoc_scripts/bootup.sql

我收到此錯誤:

-bash: /adhoc_scripts/bootup.sql: No such file or directory

我究竟做錯了什么?

EDIT1:我也嘗試將/adhoc-scripts的權限也更改為777,但這沒有幫助。

這是因為<運算符對整個docker exec ...命令而不是bash mysql ...部分進行操作。

錯誤消息很明顯:您的bash(容器外部)正在嘗試解釋/adhoc_scripts/bootup.sql文件。

要解決它,請嘗試以下操作:

docker exec -it my_mariadb_container bash -c "mysql mydb -u root -prootpass < /adhoc_scripts/bootup.sql"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM