关于mydumper的.metadata文件丢失
生活随笔
收集整理的這篇文章主要介紹了
关于mydumper的.metadata文件丢失
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
今天要進(jìn)行MySQL的數(shù)據(jù)遷移,所以把數(shù)據(jù)庫(kù)通過(guò)mydumper工具備份的文件解壓后。通過(guò)myloader進(jìn)行導(dǎo)入
可是導(dǎo)入的時(shí)間出現(xiàn)這個(gè)報(bào)錯(cuò):
** (myloader:766): CRITICAL **: the specified directory is not a mydumper backup
很奇怪,明明以往導(dǎo)數(shù)據(jù)都是通過(guò)myloader命令能夠?qū)氤晒Φ?#xff0c;如今居然是報(bào)錯(cuò)說(shuō)這個(gè)文件夾不是mydumper的備份文件 查看myloader的源碼。例如以下 char *p= g_strdup_printf("%s/metadata", directory);if (!g_file_test(p, G_FILE_TEST_EXISTS)) {g_critical("the specified directory is not a mydumper backup\n");exit(EXIT_FAILURE);}
推斷文件夾下假設(shè) metadata 文件不存在。則異常退出,而我發(fā)現(xiàn)備份文件夾下卻有一個(gè) .metedata 文件,注意是有.前綴的。在linux系統(tǒng)下表示是隱藏文件
于是對(duì)照了一下mydumper的版本號(hào): myloader -V myloader 0.6.2, built against MySQL 5.5.21
而原備份文件的機(jī)器是 myloader 0.2.3,表示兩個(gè)版本號(hào)不同樣, 所以我第一反應(yīng)是把舊機(jī)器的 /usr/local/bin/文件夾下的 mydumper\myloader 文件直接cp到新機(jī)器
再用myloader的話(huà),能夠?qū)氤晒Α?wèn)題解決。
后面想了一下。再查看舊版本號(hào)的 myloader 源代碼,發(fā)現(xiàn)推斷文件是否存在是 .metadata ,即舊版本號(hào)導(dǎo)出的隱藏文件。在新版本號(hào)中已經(jīng)不須要隱藏的。 可能是作者認(rèn)為不是必需隱藏該文件,并且隱藏文件會(huì)有一個(gè)隱患是easy cp 不完整。cp默認(rèn)不拷貝隱藏文件,必須通過(guò) cp -a 才干完整拷貝。
所以。假設(shè)用myloader新版程序?qū)肱f版本號(hào)的備份,能夠把備份文件夾下的 .metadata文件改名為?metadata。也能夠?qū)氤晒?mv .metadata metadata
總結(jié)
以上是生活随笔為你收集整理的关于mydumper的.metadata文件丢失的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 【Unity】7.6 自定义输入
- 下一篇: [Bootstrap]全局样式(四)