數據庫復制 - mysql 直接拷貝data 目錄下文件 進行數據庫遷移時遇到的一些問題??
問題描述
我目前有兩個數據庫:
mysql5.6.x
mysql5.7.x
現在要將mysql5.6.x 的所有數據 遷移到 mysql5.7.x 中,采取的是直接將 mysqldata 目錄下的相關文件夾(數據庫)拷貝到 mysql5.7.x 的data目錄下。
期間出現問題,通過百度知道: innodb 的表,直接復制文件是無法使用的,會提示 table doesn’t exists ,在復制的時候,應將data目錄下的 ibdata1 文件一并復制過去,并且刪除ib_logfile1 ib_logfile1 文件。
如果是導入到全新的數據庫中(mysql5.7.x 數據庫新創建,里面沒有任何已創建的數據庫),那肯定是完美的做法。
可若是,將被導入的數據庫中已經有創建的數據庫了該怎么辦??
若是將 mysql5.6.x 中的 ibdata1 文件 覆蓋 mysql5.7.x 中的 ibdata1 , 則從mysql5.6.x 遷移過來的數據庫全部有用 , 可 mysql5.7.x 中原先已創建的數據庫將全被報廢。
有沒有辦法實現: 通過直接拷貝文件的方式 遷移數據庫, 且不會出現 上述問題??
希望大神們都分享些: 數據庫遷移的方法
問題解答
回答1:可以使用navicat的數據傳輸,只傳輸你需要遷移的數據(表、視圖、函數等)。
回答2:xtrabackup
回答3:1、官方有升級手冊,你為什么要看百度……http://dev.mysql.com/doc/refm...
2、在目的機已有數據庫的情況下,你還要整個數據庫目錄都往上貼,什么想法。
通過直接拷貝文件的方式遷移數據庫,本身風險就非常大,你還要繼續給自己增加難度。
相關文章:
1. php laravel框架模型作用域2. java - 想在微信公眾號下自定義菜單內搭建一個論壇,用到什么技術?3. css - 關于input標簽disabled問題4. phpstudy v8 為什么網站刷新后會出現403錯誤?5. 微信$data =file_get_contents(’php://input’)取不到數據,抓包6. phpStudy2017輕巧版mysql無法啟動7. Java中的BufferedImage在Android之中如何對應?8. redis - 騰訊的QQ平臺如何維護龐大的在線用戶列表?9. Spring數據mongodb審核不起作用(Java配置)10. 怎么讓其他pc訪問本地的phpstudy編寫的網頁
