解析MYD、MYI、FRM檔案的方法
P粉604848588
P粉604848588 2023-08-25 16:14:30
0
1
483

我在這個論壇和其他地方讀了幾篇帖子,但仍然無法讀取一些包含我想要導入到SQL Server的資料的MYD/MYI/FRM檔案。

  • 我停止了客戶端位置的MySQL服務,並複製了所有檔案(與我們在SQL Server上的操作方式相同)。
  • 我在我的Windows 10 PC上安裝了最新的MySQL ODBC連接器、MySQL引擎和MySQL Workbench。引擎正在運行,ODBC連接器已配置了使用者名稱和密碼。使用Workbench,我成功登入了。
  • 我建立了一個名為MyTest的資料庫,它建立了一個C:\ProgramData\MySQL\MySQL Server 8.0\Data\mytest資料夾。
  • 我停止了MySQL服務,並將MyData.MYD、MyData.MYI和MyData.FRM複製到mytest資料夾中。
  • 我重新啟動了MySQL服務。

但是,如果我在Workbench或使用MySQL 8.0命令列客戶端執行"Select * from mytest.MyData"查詢,它會一直提示表mytest.MyData不存在。現在,我讀到可能適合運行CHOWN命令,但我不知道在Windows系統中語法是否會有所不同,以及這個命令是否可以直接從命令提示字元執行。

任何幫助將不勝感激。謝謝!

P粉604848588
P粉604848588

全部回覆 (1)
P粉015402013

舊版的MySQL允許您在MyISAM表中這樣操作,但是MySQL 8.0引入了一個全新的「資料字典」實現,它是一個在內部維護的元資料庫,並且對InnoDB比MyISAM有偏好。因此,我相信隨意移動文件的方式不再像以前那樣有效。要將表從一個實例移動到另一個實例,您應該正確地執行匯出和匯入步驟。

對於InnoDB,您可以使用可傳輸表空間。至少這樣您不必執行完整的資料匯入,但是需要比僅僅複製檔案多幾個步驟。

P.S.:我多年來一直沒有使用MyISAM。我更喜歡我的資料庫支援ACID屬性,而MyISAM不支援任何ACID屬性。

    最新下載
    更多>
    網站特效
    網站源碼
    網站素材
    前端模板
    關於我們 免責聲明 Sitemap
    PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!