国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

MySQL修改默認存儲引擎的實現方法

2024-07-24 13:12:44
字體:
來源:轉載
供稿:網友

mysql存儲引擎:

MySQL服務器采用了模塊化風格,各部分之間保持相對獨立,尤其體現在存儲架構上。存儲引擎負責管理數據存儲,以及MySQL的索引管理。通過定義的API,MySQL服務器能夠與存儲引擎進行通信。目前使用最多的是MyISAM和InnoDB。InnoDB被Oracle收購后,MySQL自行開發的新存儲引擎Falcon將在MySQL6.0版本引進。

MyISAM引擎是一種非事務性的引擎,提供高速存儲和檢索,以及全文搜索能力,適合數據倉庫等查詢頻繁的應用。MyISAM中,一個table實際保存為三個文件,.frm存儲表定義,.MYD存儲數據,.MYI存儲索引。

InnoDB則是一種支持事務的引擎。所以的數據存儲在一個或者多個數據文件中,支持類似于Oracle的鎖機制。一般在OLTP應用中使用較廣泛。如果沒有指定InnoDB配置選項,MySQL將在MySQL數據目錄下創建一個名為ibdata1的自動擴展數據文件,以及兩個名為ib_logfile0和ib_logfile1的日志文件。

創建table時可以通過engine關鍵字指定使用的存儲引擎,如果省略則使用系統默認的存儲引擎:CREATE TABLE t (i INT) ENGINE = MYISAM;

查看系統中支持的存儲引擎類型:

mysql> show engines;| Engine | Support | Comment || MyISAM | YES | Default engine as of MySQL 3.23 with greatperformance |  | MEMORY | YES | Hash based, stored in memory, useful for temporarytables |  | InnoDB | DEFAULT | Supports transactions, row-level locking, andforeign keys |  | BerkeleyDB | NO | Supports transactions and page-level locking|  | BLACKHOLE | NO | /dev/null storage engine (anything you write toit disappears) |  | EXAMPLE | NO | Example storage engine |  | ARCHIVE | YES | Archive storage engine |  | CSV | NO | CSV storage engine |  | ndbcluster | NO | Clustered, fault-tolerant, memory-based tables|  | FEDERATED | NO | Federated MySQL storage engine |  | MRG_MYISAM | YES | Collection of identical MyISAM tables |  | ISAM | NO | Obsolete storage engine |12 rows in set (0.00 sec) 

標準安裝程序中只提供部分引擎的支持,如果需要使用其他的存儲引擎,需要使用源代碼加不同的參數重新編譯。其中DEFAULT表明系統的默認存儲引擎,可以通過修改配置參數來變更:

default-storage-engine=MyISAM

查看某個存儲引擎的具體信息

mysql> show engine InnoDB status/G;

一般安裝系統默認是INNODB

default-storage-engine=INNODB

1.可以在啟動數據庫服務器時在命令行后面加上–default-storage-engine或–default-table-type選項。

2.更靈活的方式是在隨MySQL服務器發布同時提供的MySQL客戶端時指定使用的存儲引擎。最直接的方式是在創建表時指定存儲引擎的類型,向下面這樣:

CREATE TABLE mytable (id int, titlechar(20)) ENGINE = INNODB

修改表的存儲引擎:

ALTER TABLE engineTest ENGINE = INNODB;

修改默認存儲引擎:

在mysql配置文件(linux下為/etc/my.cnf),在mysqld后面增加default-storage-engine=INNODB即可。

但是如果表建立的時候是MyISAM,要更改整個數據庫表的存儲引擎,一般要一個表一個表的修改,比較繁瑣,可以采用先把數據庫導出,得到SQL,把MyISAM修改成INNODB,再導入的方式。

以上這篇MySQL修改默認存儲引擎的實現方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持VeVb武林網。


注:相關教程知識閱讀請移步到MYSQL教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 锡林浩特市| 铁岭县| 沽源县| 临泽县| 九寨沟县| 濉溪县| 泽普县| 肥西县| 徐水县| 新竹市| 镇赉县| 建宁县| 专栏| 江华| 遵义县| 瓮安县| 荔波县| 藁城市| 卢氏县| 淳化县| 正镶白旗| 临西县| 泗水县| 广灵县| 准格尔旗| 辉南县| 东方市| 博白县| 积石山| 沈丘县| 玛纳斯县| 屏山县| 鄂托克前旗| 孙吴县| 区。| 肇东市| 西城区| 杂多县| 水富县| 东宁县| 滦平县|