中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Docker容器中Mysql數據的導入/導出詳解

發布時間:2020-10-02 07:29:06 來源:腳本之家 閱讀:395 作者:劉美勝奇 欄目:服務器

前言

Mysql數據的導入導出我們都知道一個mysqldump命令就能夠解決,但如果是運行在docker環境下的mysql呢?

解決辦法其實還是用mysqldump命令,但是我們需要進入docker的mysql容器內去執行它,并且通過配置volumes讓導出的數據文件可以拷貝到宿主機的磁盤上

所以操作步驟就可以分為:

  • 配置docker的volumes
  • 進入docker的mysql容器,導出數據文件

至于數據導入,太過簡單,就不說了

先來看看mysqldump命令常見選項:

  • --all-databases, -A: 備份所有數據庫
  • --databases, -B: 用于備份多個數據庫,如果沒有該選項,mysqldump把第一個名字參數作為數據庫名,后面的作為表名。使用該選項,mysqldum把每個名字都當作為數據庫名。
  • --force, -f:即使發現sql錯誤,仍然繼續備份
  • --host=host_name, -h host_name:備份主機名,默認為localhost
  • --no-data, -d:只導出表結構
  • --password[=password], -p[password]:密碼
  • --port=port_num, -P port_num:制定TCP/IP連接時的端口號
  • --quick, -q:快速導出
  • --tables:覆蓋 --databases or -B選項,后面所跟參數被視作表名
  • --user=user_name, -u user_name:用戶名
  • --xml, -X:導出為xml文件

配置volumes

首先我是利用docker-compose進行docker容器的編排,完整的配置代碼請看這個項目: liumapp/rabbitmq-mysql-redis-in-docker

請注意這個項目的docker-compose.yml配置文件中,有以下幾行:

 mysql:
 container_name: mysql
 image: mysql:5.5.60
 restart: always
 volumes:
  - ./mysql/data:/var/lib/mysql
  - ./mysql/conf/mysqld.conf:/etc/mysql/mysql.conf.d/mysqld.cnf

我對mysql容器配置的volumes,是把項目的mysql/data目錄和docker容器內的/var/lib/mysql建立映射關系

所以下面我進入docker的mysql容器內執行導出命令的時候,只需要把數據導出在/var/lib/mysql/目錄下,就可以在宿主機的./mysql/data/目錄下找到對應的數據文件

進入容器導出數據

首先執行

docker ps

找到mysql容器的name

然后執行

docker exec -it mysql /bin/bash

進入容器

執行命令

whereis mysql

找到mysql的運行路徑,我這里是:/usr/local/mysql/bin,用cd進入

cd /usr/local/mysql/bin

請注意,這里的路徑是指docker容器內的路徑,跟您的宿主機路徑沒有關系

執行導出命令

mysqldump -u 用戶名 -p 數據庫名 > 保存文件.sql

輸入密碼后基本導出成功,請注意,保存文件的路徑要設置在volumes下面,即/var/lib/mysql/下

隨后輸入

exit

退出容器內部,回到宿主機上,我們就能夠找到導出的數據文件了

如果您要導出csv格式的話,將mysqldump的那句命令改為:

mysql -u 用戶名 --password=密碼 --database=數據庫名 --execute='SELECT `FIELD`, `FIELD` FROM `TABLE` LIMIT 0, 10000 ' -X > 保存文件.sql

即可

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

瑞金市| 囊谦县| 泾川县| 闻喜县| 将乐县| 昌图县| 江口县| 宜阳县| 岐山县| 中方县| 云林县| 灌云县| 台江县| 吐鲁番市| 明光市| 玛纳斯县| 望江县| 余姚市| 惠东县| 山阳县| 镇沅| 屯门区| 灵丘县| 额敏县| 五原县| 扎赉特旗| 阿克苏市| 布尔津县| 南部县| 商丘市| 海阳市| 柏乡县| 伊吾县| 威信县| 响水县| 晴隆县| 双辽市| 炎陵县| 柞水县| 疏勒县| 高碑店市|