時勢造英雄、僅此懷念偉大人(第十四周)

一、 導入hellodb.sql生成數據庫
1、打開數據庫,然後使用mysql uroot -predhat打開數據庫;
2、導入數據內容;rz導入hellodb_innodb數據庫;
時勢造英雄、僅此懷念偉大人(第十四周)
3、導入數據內容,數據庫出現hellodb數據庫;
時勢造英雄、僅此懷念偉大人(第十四周)
時勢造英雄、僅此懷念偉大人(第十四周)
(1) 在students表中,查詢年齡大於25歲,且爲男性的同學的名字和年齡;
時勢造英雄、僅此懷念偉大人(第十四周)
(2) 以ClassID爲分組依據,顯示每組的平均年齡;
時勢造英雄、僅此懷念偉大人(第十四周)
(3) 顯示第2題中平均年齡大於30的分組及平均年齡;
時勢造英雄、僅此懷念偉大人(第十四周)
(4) 顯示以L開頭的名字的同學的信息;
時勢造英雄、僅此懷念偉大人(第十四周)
二、數據庫授權magedu用戶,允許192.168.1.0/24網段可以連接mysql
時勢造英雄、僅此懷念偉大人(第十四周)
測試
時勢造英雄、僅此懷念偉大人(第十四周)
三、總結mysql常見的存儲引擎以及特點。
MyISAM
①不支持事務
②表級鎖定
③讀寫相互阻塞,寫入不能讀,讀時不能寫
④只緩存索引
⑤不支持外鍵約束
⑥不支持聚簇索引
⑦讀取數據較快,佔用資源較少 ,不支持MVCC(多版本併發控制機制)高併發
⑧崩潰恢復性較差
⑨MySQL5.5.5前默認的數據庫引擎 ,查詢速度快、存儲空間小,原因是在磁盤上分成三個文件存儲:.frm(存儲表定義),.MYD(MYData,存儲數據),.MYI(MYIndex,存儲索引),SELECT COUNT() FROM TABLE時,避免了全表掃描。
1、MyISAM存儲引擎適用場景
只讀(或者寫較少)、表較小(可以接受長時間進行修復操作),適合查詢多、寫入少的業務場景
2、MyISAM引擎文件
tbl_name.frm 表格式定義
tbl_name.MYD 數據文件
tbl_name.MYI 索引文件

InnoDB
①InnoDB,最大的特點就是支持事務和行鎖,是現在Mysql的默認存儲引擎。
②對事務和寫併發的支持使InnDB成爲互聯網公司最常使用的存儲引擎。
InnoDB引擎特點
①行級鎖 ,支持行級鎖及外鍵約束,所以在可以支持寫併發。
②支持事務,適合處理大量短期事務 ,支持ACID的事務,支持事務的四種隔離級別。
③讀寫阻塞與事務隔離級別相關
④可緩存數據和索引
⑤支持聚簇索引
⑥崩潰恢復性更好
⑦支持MVCC高併發
⑧從MySQL5.5後支持全文索引 ,SELECT COUNT(*) FROM TABLE時會進行全表掃描,效率低於MyISAM。
⑨從MySQL5.5.5開始爲默認的數據庫引擎

MEMORY
①MEMORY是一種特殊的存儲引擎,特點是使用存儲在內存中的內容來創建表,並且數據全部放在內存中。
②每個基於MEMORY存儲引擎的表實際對應一個磁盤文件。
③該文件的文件名與表名相同,類型爲frm類型。
④該文件中只存儲表的結構,而其數據文件,都是存儲在內存中,這樣有利於數據的快速處理,提高整個表的效率。
⑤需要注意的是,服務器需要有足夠的內存來維持MEMORY存儲引擎的表的使用。
⑥如果不需要了,可以釋放內存,甚至刪除不需要的表。
⑦將所有數據存儲在RAM中,以便在需要快速查找參考和其他類似 數據的環境中進行快速訪問。適用存放臨時數據。
⑧引擎以前被稱爲HEAP引擎
⑨MEMORY默認使用哈希索引,速度比使用B樹索引快。當然如果你想用B型樹索引,可以在創建索引時指定。
注意,MEMORY用到的很少,因爲它是把數據存到內存中,如果內存出現異常就會影響數據。
⑩如果重啓或者關機,所有數據都會消失。
因此,基於MEMORY的表的生命週期很短,一般是一次性的。
所有的數據都在內存中,處理速度快,但是安全性不高。對錶的大小有要求,依賴內存,不能建立太大的表。
Archive
爲存儲和檢索大量很少參考的存檔或安全審覈信息,只支持 SELECT和INSERT操作;支持行級鎖和專用緩存區

NDB
①基於集羣的引擎-數據被自動切分並複製到數個機器上(數據節點), 適合於那些需要極高查詢性能和高可用性的應用,
②NDB提供了高達99.999%的可靠性,在讀操作多的應用中表現優異。
③對於有很多併發寫操作的應用, 還是推薦用InnoDB.
④如果你網站併發高,數據量不會大到需要去集羣管理 ,還是推薦用innodb.
⑤如果只是小應用 沒什麼數據請求量 MyISAM的讀取速度更快些

Federated存儲引擎
Federated存儲引擎不存放數據,它至少指向一臺遠程MySQL數據庫服務器上的表,非常類似於Oracle的透明網關。

Maria存儲引擎
Maria存儲引擎是新開發的引擎,其設計目標是用來取代原有的MyISAM存儲引擎,從而成爲MySQL默認的存儲引擎。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章