數(shù)據(jù)庫復(fù)制 - mysql 直接拷貝data 目錄下文件 進(jìn)行數(shù)據(jù)庫遷移時遇到的一些問題??
問題描述
我目前有兩個數(shù)據(jù)庫:
mysql5.6.x
mysql5.7.x
現(xiàn)在要將mysql5.6.x 的所有數(shù)據(jù) 遷移到 mysql5.7.x 中,采取的是直接將 mysqldata 目錄下的相關(guān)文件夾(數(shù)據(jù)庫)拷貝到 mysql5.7.x 的data目錄下。
期間出現(xiàn)問題,通過百度知道: innodb 的表,直接復(fù)制文件是無法使用的,會提示 table doesn’t exists ,在復(fù)制的時候,應(yīng)將data目錄下的 ibdata1 文件一并復(fù)制過去,并且刪除ib_logfile1 ib_logfile1 文件。
如果是導(dǎo)入到全新的數(shù)據(jù)庫中(mysql5.7.x 數(shù)據(jù)庫新創(chuàng)建,里面沒有任何已創(chuàng)建的數(shù)據(jù)庫),那肯定是完美的做法。
可若是,將被導(dǎo)入的數(shù)據(jù)庫中已經(jīng)有創(chuàng)建的數(shù)據(jù)庫了該怎么辦??
若是將 mysql5.6.x 中的 ibdata1 文件 覆蓋 mysql5.7.x 中的 ibdata1 , 則從mysql5.6.x 遷移過來的數(shù)據(jù)庫全部有用 , 可 mysql5.7.x 中原先已創(chuàng)建的數(shù)據(jù)庫將全被報廢。
有沒有辦法實現(xiàn): 通過直接拷貝文件的方式 遷移數(shù)據(jù)庫, 且不會出現(xiàn) 上述問題??
希望大神們都分享些: 數(shù)據(jù)庫遷移的方法
問題解答
回答1:可以使用navicat的數(shù)據(jù)傳輸,只傳輸你需要遷移的數(shù)據(jù)(表、視圖、函數(shù)等)。
回答2:xtrabackup
回答3:1、官方有升級手冊,你為什么要看百度……h(huán)ttp://dev.mysql.com/doc/refm...
2、在目的機(jī)已有數(shù)據(jù)庫的情況下,你還要整個數(shù)據(jù)庫目錄都往上貼,什么想法。
通過直接拷貝文件的方式遷移數(shù)據(jù)庫,本身風(fēng)險就非常大,你還要繼續(xù)給自己增加難度。
相關(guān)文章:
1. node.js - mongodb查找子對象的名稱為某個值的對象的方法2. docker 17.03 怎么配置 registry mirror ?3. docker 下面創(chuàng)建的IMAGE 他們的 ID 一樣?這個是怎么回事????4. 前端 - @media query 使用出現(xiàn)的問題?5. html5 - datatables 加載不出來數(shù)據(jù)。6. 運(yùn)行python程序時出現(xiàn)“應(yīng)用程序發(fā)生異常”的內(nèi)存錯誤?7. 測試自動化html元素選擇器元素ID或DataAttribute [關(guān)閉]8. javascript - QQ第三方登錄的問題9. 利用IPMI遠(yuǎn)程安裝centos報錯!10. spring-mvc - spring-session-redis HttpSessionListener失效

網(wǎng)公網(wǎng)安備