在oracle時(shí)代,我們只能通過(guò)一些文檔,或者做實(shí)驗(yàn)來(lái)驗(yàn)證oracle各數(shù)據(jù)庫(kù)功能的實(shí)現(xiàn),對(duì)很多技術(shù)細(xì)節(jié)總體來(lái)說(shuō)還是流于表面,不夠深入。一個(gè)月前,在公司組織成立了mysql源代碼研究小組,我們希望通過(guò)對(duì)mysql源代碼的研究,把數(shù)據(jù)庫(kù)的各功能與具體源程序?qū)崿F(xiàn)聯(lián)系起來(lái),以提高小組成員對(duì)數(shù)據(jù)庫(kù)的認(rèn)知水平。在這短短的一個(gè)多月的時(shí)間里,我們每周四晚上都進(jìn)行一次分享,探討,也有了許多的產(chǎn)出。我們也嘗試了一次修改mysql源程序,改變show processlist顯示功能(去掉大量的sleep線程,并增加匯總功能)。今天的每一小步,都在影響著我們的未來(lái),相信通過(guò)大家的不斷努力,我們還可以做得更多。在平時(shí)大家旺旺群的聊天中,大家問(wèn)到了一些問(wèn)題,也非常歡迎各位網(wǎng)友一起來(lái)探討,隨著我們學(xué)習(xí)的深入,這些問(wèn)題也會(huì)不斷增加。
[1]mysql可以支撐的最大連接數(shù)?是否可以到達(dá)1w?
[2]是否一個(gè)連接,就一定獨(dú)占MYSQL服務(wù)端一個(gè)線程?是否可以多個(gè)連接共享一個(gè)線程嗎?
[3]binlog是每個(gè)線程自己去寫的?還是有專門寫binlog的線程?
[4]MySQL創(chuàng)建連接的過(guò)程
[5]mysql的后臺(tái)線程有哪些?各線程的作用是什么?
[6]動(dòng)態(tài)為innodb添加數(shù)據(jù)文件,不用重啟(已修改代碼實(shí)現(xiàn))
[7]讓root帳號(hào)總能夠登陸,不再受max-connection的困擾
[8]innodb_flush_log_at_trx_commit,sync_binlog 兩個(gè)參數(shù)的設(shè)置問(wèn)題,性能與安全,兩者不可兼得
[9]innodb 利用fusion_io,or ssd作為flashcache,提高mysql性能(已修改代碼實(shí)現(xiàn))
[10]禁止新的connection,添加一個(gè)命令(已修改代碼實(shí)現(xiàn))
…
對(duì)源程序有興趣,大家來(lái)頂帖。