webpack4.0各個(gè)擊破(3)—— Assets篇
662
2025-03-31
存儲(chǔ)引擎
MySQL可以將數(shù)據(jù)以不同的技術(shù)存儲(chǔ)在文件(內(nèi)存)中,這種技術(shù)就稱(chēng)為存儲(chǔ)引擎
每一種存儲(chǔ)引擎使用不同的存儲(chǔ)機(jī)制,索引技巧,鎖定水平,最終提供廣泛且不同的功能
MySQL支持的存儲(chǔ)引擎
MyISAM、InnoDB、Memory、CSV、Archive
并發(fā)控制
當(dāng)多個(gè)連接對(duì)記錄進(jìn)行修改時(shí)保證數(shù)據(jù)的一致性和完整性。系統(tǒng)使用鎖系統(tǒng)來(lái)解決這個(gè)并發(fā)控制,這種鎖分為:
鎖
共享鎖(讀鎖):在同一時(shí)間內(nèi),多個(gè)用戶(hù)可以讀取同一個(gè)資源,讀取過(guò)程中數(shù)據(jù)不會(huì)發(fā)生任何變化。
排他鎖(寫(xiě)鎖):在任何時(shí)候只能有一個(gè)用戶(hù)寫(xiě)入資源,當(dāng)進(jìn)行寫(xiě)鎖時(shí)會(huì)阻塞其他的讀鎖或者寫(xiě)鎖操作。
鎖的力度(鎖的顆粒:鎖定時(shí)的單位):
表鎖,是一種開(kāi)銷(xiāo)最小的鎖策略。得到數(shù)據(jù)表的寫(xiě)鎖(禁止其他用戶(hù)進(jìn)行讀寫(xiě),只能有一個(gè)鎖)
行鎖,是一種開(kāi)銷(xiāo)最大的鎖策略。并行性最大(有多少條記錄,就有可能對(duì)每條記錄都進(jìn)行鎖)
表鎖的開(kāi)銷(xiāo)最小,因?yàn)槭褂面i的個(gè)數(shù)最小,行鎖的開(kāi)銷(xiāo)最大,因?yàn)榭赡苁褂面i的個(gè)數(shù)比較多
事務(wù)
事務(wù)的特 性
原子性(Atomicity)
一致性(Consistency)
隔離性(Isolation)
持久性(Durability)
外鍵
保證數(shù)據(jù)一致性的策略
索引
是對(duì)數(shù)據(jù)表中一列或多列的值進(jìn)行排序的一種結(jié)構(gòu)
修改存儲(chǔ)引擎的方法
(1)通過(guò)修改MySQL配置文件實(shí)現(xiàn)
default-storage-engine=INNODB
(2)通過(guò)創(chuàng)建數(shù)據(jù)表命令實(shí)現(xiàn)
CREATE TABLE table_name(
...
...
)
ENGINE = engine;
(3)通過(guò)修改數(shù)據(jù)表命令實(shí)現(xiàn)
ALTER TABLE table_name ENGINE [=] engine_name;
MyISAM:存儲(chǔ)限制可達(dá)256TB,支持索引,表級(jí)鎖定,數(shù)據(jù)壓縮
InnoDB:存儲(chǔ)限制為64TB,支持事務(wù)和索引,鎖顆粒為行鎖
MySQL 開(kāi)發(fā)者
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶(hù)投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶(hù)投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。