Mysql
將 MySQL 從 Windows 遷移到 Linux
我是 MySQL 新手。但是我對 Oracle 和 MSSQL 非常熟悉。這是我到目前為止所做的:
- 在 RHEL 7.2 上安裝 MySQL 5.7
- 創建了一個名為“mydb”的測試數據庫和一個名為“employee”的測試表。
- 這些文件的位置是 /usr/var/lib/mydb /usr/var/lib/mydb/employee.frm /usr/var/lib/mydb/employee.idb
- 能夠從客戶端機器連接到 MySQL 並且可以看到“mydb”。
所以我的伺服器和連接都很好。現在我想將一些 MySQL 5.0 數據庫從舊的 Windows 機器移動到這個新的 RHEL Linux 機器。
舊 MySQL 5.0 數據庫文件範例:
- region.myd region.myi region.frm
我對 MySQL 數據庫架構了解不多。我剛剛注意到 MySQL 5.0 有 .frm、.myd 和 myi 的副檔名,而 MySQL 5.7 有 .frm 和 .ibd
我的問題是:如何快速將這兩個“區域”文件遷移到我的新 RHEL 盒子,使它們符合 .frm 和 .ibd 文件格式?
謝謝
OK 振作起來。您可以通過複製和轉換來從 Windows 遷移表。
步驟 01
將這三 (3) 個文件複製到
/usr/var/lib/mydb
Linux 中的數據文件夾中你應該有
/usr/var/lib/mydb/region.frm
/usr/var/lib/mydb/region.myd
/usr/var/lib/mydb/region.myi
步驟 02
更改其中兩個文件的文件名副檔名
cd /usr/var/lib/mydb mv region.myd region.MYD mv region.myi region.MYI
Linux 中的 MyISAM 表需要
- 請參閱我的舊文章恢復備份表時出錯
- 查看我用來解決此問題的聊天會話
步驟 03
更改三個文件的所有者
cd /usr/var/lib/mydb chown mysql:mysql region.frm chown mysql:mysql region.MYD chown mysql:mysql region.MYI
步驟 04
將表轉換為 InnoDB
mysql> use mydb mysql> ALTER TABLE region ENGINE=InnoDB;
而已。
試一試 !!!
您正在從 5.0 遷移到 5.7,因此最安全的方法是使用 mysqldump 轉儲和恢復,您可以找到此連結有用http://mysqlserverteam.com/upgrading-directly-from-mysql-5-0-to-5- 7-with-mysqldump/