亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

解決docker重啟redis,mysql數據丟失的問題

瀏覽:2日期:2023-10-08 16:35:39

官方文檔:

解決docker重啟redis,mysql數據丟失的問題

所以 mysql應如下啟動:

docker run -p 3306:3306 -d -e MYSQL_ROOT_PASSWORD=密碼 -v /windows盤符/指定的文件夾路徑:/var/lib/mysql mysql:5.7

redis:

docker run -p 6379:6379 -d -v /windows盤符/指定的文件夾路徑:/data redis:5.0 redis-server --appendonly yes

多看官方文檔,里面有詳細的說明

補充知識:docker 掛載進容器的文件修改后沒有改變需要重啟

今天發現一個很奇怪的現象,就是我在宿主機上的文件掛載進docker后,主機上刪除了文件,并且重新上傳重命名為相同名字的文件,容器中的沒有同步.

先來說下Linux,Linux存儲是分為iNode和block的,iNode存儲的是文件的屬行信息,例如大小,在磁盤的什么位置,block是4k大小的一個塊,存儲的是文件的實際信息,不足4k大小的文件也會占用掉4k的空間.

了解了上面,再來說docker,掛載進docker的文件,實際上是docker記住了一個iNode,他可以通過這個iNode找到block,也就是實際的文件信息.如果是用 > 追加重定向寫入文件,是可以同步到docker的,但是如果是rm 重命名的,文件的iNode就改變了,但是docker中的iNode還是指向了之前的磁盤位置,所以文件沒有改變.

rm 原理:rm只是刪除了iNode,沒有了iNode通過正常方式,找不到磁盤上的block,看起來就是刪除了,但是文件信息還在,文件信息會在下次寫入到這里的時候覆蓋掉,所以數據被刪除還有恢復的方法,但是,如果刪除的時候文件是打開的,文件也不會被刪除

同樣的還有vim ,vim 文件的時候,是基于現有的文件copy了一份,同級目錄下會有一個 .開頭swp結尾的文件,當你保存退出的時候,vim 會刪掉源文件,將這個文件重命名為源文件的名字,iNode自然也就改變了.

以上這篇解決docker重啟redis,mysql數據丟失的問題就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: MySQL 數據庫
主站蜘蛛池模板: 成年男女免费大片在线观看 | 视频一区二区三区在线 | 精品一区二区91 | 国产精品大全国产精品 | 成人黄色在线免费观看 | 在线观看一区二区三区四区 | 亚洲国产精品久久久久秋霞小 | 成人精品mv视频在线观看 | 亚洲一区二区三区夜色 | 欧美精品在线视频观看 | 国产在线一区二区视频 | 色资源在线 | 国产91网站在线观看 | 成人免费视频国产 | 国产精品99| 欧美日韩性 | 麻豆传媒免费视频 | 日韩一区二区三区免费视频 | 在线人成精品免费视频 | 中国一级一级全黄 | 日本高清视频网址 | a一级特黄日本大片 s色 | 欧美区一区二 | 综合 欧美 国产 视频二区 | 亚欧成人中文字幕一区 | 亚洲欧美久久精品 | 国产一久久香蕉国产线看观看 | 黄色免费在线观看 | a级国产片免费观看 | 91精品国产欧美一区二区 | 成人精品一级毛片 | 日批国产| 啪视频在线 | 国产精品视频人人做人人爱 | 国产女人一区二区 | 国产乱人免费视频 | 亚洲 欧美 国产 制服 动漫 | 成人做爰又黄又爽免费视频 | 国产精品视频一区日韩丝袜 | 五月综合激情久久婷婷 | 成年黄网站免费大全毛片 |