一级女人毛片人一女人-一级女性大黄生活片免费-一级女性全黄久久生活片-一级女性全黄生活片免费-国产美女在线一区二区三区-国产美女在线观看

始創于2000年 股票代碼:831685
咨詢熱線:0371-60135900 注冊有禮 登錄
  • 掛牌上市企業
  • 60秒人工響應
  • 99.99%連通率
  • 7*24h人工
  • 故障100倍補償
您的位置: 網站首頁 > 幫助中心>文章內容

轉換MyISAM表到InnoDB

發布時間:  2012/8/26 16:00:36

要點:你不應該在mysql數據庫(比如,user或者host)里把MySQL系統表轉換為InnoDB類型。系統表總是MyISAM型。

如果你想要所有(非系統)表都被創建成InnoDB表,你可以簡單地把default-table-type=innodb行添加到my.cnf或my.ini文件的[mysqld]節里。 電腦入門www.boydavid.com

InnoDB對MyISAM存儲引擎采用的單獨索引創建方法沒有做專門的優化。因此,它不值得導出或導入表以及隨后創建索引。改變一個表為InnoDB型最快的辦法就是直接插入進一個InnoDB表。即,使用ALTER TABLE ... ENGINE=INNODB,或用相同的定義創建一個空InnoDB表,并且用INSERT INTO ... SELECT * FROM ...插入行。 電腦常識www.boydavid.com

如果你對第二個鍵有UNIQUE約束,你可以在導入階段設置:SET UNIQUE_CHECKS=0,以臨時關掉唯一性檢查好加速表的導入。對于大表,這節省了大量的磁盤I/O,因為InnoDB隨后可以使用它的插入緩沖區來第二個索引記錄作為一批來寫入。 電腦硬件www.boydavid.com

為獲得對插入進程的更好控制,分段插入大表可能比較好:

INSERT INTO newtable SELECT * FROM oldtable  
   WHERE yourkey > something AND yourkey <= somethingelse; 電腦硬件www.boydavid.com 

所有記錄已經本插入之后,你可以重命名表。

 

在大表的轉換中,你應該增加InnoDB緩沖池的大小來減少磁盤I/O。盡管如此,不要使用超過80%的內部內存。你也可以增加InnoDB日志文件和日志文件的大小。 電腦維護www.boydavid.com

確信你沒有填滿表空間:InnoDB表比MyISAM表需要大得多的磁盤空間。如果一個ALTER TABLE耗盡了空間,它就開始一個回滾,并且如果它是磁盤綁定的,回滾可能要幾個小時。對于插入,InnoDB使用插入緩沖區來以成批地合并第二個索引記錄到索引中。那樣節省了大量磁盤I/O。在回滾中,沒有使用這樣的機制,而回滾要花比插入長30倍的時間來完成。

在失控的回滾情況下,如果你在數據庫中沒有有價值的數據,比較明智的是殺掉數據庫進程而不是等幾百萬個磁盤I/O被完成。 完整的過程,請參閱15.2.8.1節,“強制恢復”。


本文出自:億恩科技【www.laynepeng.cn】

服務器租用/服務器托管中國五強!虛擬主機域名注冊頂級提供商!15年品質保障!--億恩科技[ENKJ.COM]

  • 您可能在找
  • 億恩北京公司:
  • 經營性ICP/ISP證:京B2-20150015
  • 億恩鄭州公司:
  • 經營性ICP/ISP/IDC證:豫B1.B2-20060070
  • 億恩南昌公司:
  • 經營性ICP/ISP證:贛B2-20080012
  • 服務器/云主機 24小時售后服務電話:0371-60135900
  • 虛擬主機/智能建站 24小時售后服務電話:0371-60135900
  • 專注服務器托管17年
    掃掃關注-微信公眾號
    0371-60135900
    Copyright© 1999-2019 ENKJ All Rights Reserved 億恩科技 版權所有  地址:鄭州市高新區翠竹街1號總部企業基地億恩大廈  法律顧問:河南亞太人律師事務所郝建鋒、杜慧月律師   京公網安備41019702002023號
      0
     
     
     
     

    0371-60135900
    7*24小時客服服務熱線