一、mysql-devel具體是做什么的
帶devel后綴的包
帶devel后綴的包也稱(chēng)開(kāi)發(fā)包,指的是對(duì)應(yīng)軟件包的開(kāi)發(fā)包,包含了使用這個(gè)包開(kāi)發(fā)程序所有必需的文件,至少包括以下兩種類(lèi)型的文件:
1. 頭文件
2. 鏈接庫(kù)
有的開(kāi)發(fā)包還會(huì)包含開(kāi)發(fā)文檔或示例代碼,功能上與普通包相同,但體積更大。
不帶devel后綴的包
不帶devel后綴的包只包含了能讓程序運(yùn)行的動(dòng)態(tài)庫(kù)和配置文件。
舉個(gè)例子
以glibc和glibc-devel包為例,如果只是需要使用glibc提供的基本功能,只需要安裝glibc包就行了。如果需要開(kāi)發(fā)或編譯使用glibc的程序,則需要同時(shí)安裝glibc和glibc-devel包。
延伸閱讀:
二、并發(fā)鎖
在一定條件下,MyISAM也支持查詢和操作的并發(fā)進(jìn)行。
MyISAM存儲(chǔ)引擎有一個(gè)系統(tǒng)變量concurrent_insert,專(zhuān)門(mén)用以控制其并發(fā)插入的行為,其值分別可以為0、1或2。
當(dāng)concurrent_insert設(shè)置為0時(shí),不允許并發(fā)插入。
當(dāng)concurrent_insert設(shè)置為1時(shí),如果MyISAM允許在一個(gè)讀表的同時(shí),另一個(gè)進(jìn)程從表尾插入記錄。這也是MySQL的默認(rèn)設(shè)置。
當(dāng)concurrent_insert設(shè)置為2時(shí),無(wú)論MyISAM表中有沒(méi)有空洞,都允許在表尾插入記錄,都允許在表尾并發(fā)插入記錄。
可以利用MyISAM存儲(chǔ)引擎的并發(fā)插入特性,來(lái)解決應(yīng)用中對(duì)同一表查詢和插入鎖爭(zhēng)用。例如,將concurrent_insert系統(tǒng)變量為2,總是允許并發(fā)插入;同時(shí),通過(guò)定期在系統(tǒng)空閑時(shí)段執(zhí)行OPTIONMIZE TABLE語(yǔ)句來(lái)整理空間碎片,收到因刪除記錄而產(chǎn)生的中間空洞。