本節將Mysql的存儲引擎,有三種:Myisam,InnoDB,Memory
Myisam:如果表對事物要求不高,同時以查詢和添加爲主,可以考慮使用
MyISAM存儲引擎。比如:發帖表,回覆表
InnoDB:對事物要求高,保存的數據都是重要數據,可以使用INNODB存
儲引擎。比如:訂單表,賬戶表
Memory:比如:數據變化頻繁,不需要入庫,同時頻繁的查詢和修改,
可以使用Memory存 儲引擎
注:如果數據庫的存儲引擎是Myisam,那麼一定要定時進行碎片整理
爲什麼要進行碎片整理?
建一張表test100
create table test111(id int, name varchar(50))engine=myisam;
批量添加數據
insert into test111 values(1, 'aaaa');
insert into test111 values(2, 'bbbb');
insert into test111 values(3, 'cccc');
//多進行幾次這條sql
insert into test111 select id,name from test111;
如果我們刪除id爲3的數據呢,會有什麼變化?
delete from test111 where id=3;
刷新後發現test111.MYD沒有變化,也就是說,刪除數據了,但是這個文件的內存大小沒有減少,如果數據量小還好說,可是如果是海量數據,一兩年以後就會變得很卡。
如何解決呢,這就需要碎片整理:optimize table 表名
optimize table test111;
再次刷新以後發現test111.MYD文件變小了。