1:從SQL以及索引方向(最基本的的)
成都創(chuàng)新互聯(lián)公司成都網(wǎng)站建設(shè)按需定制網(wǎng)站,是成都網(wǎng)站營(yíng)銷公司,為成都玻璃鋼雕塑提供網(wǎng)站建設(shè)服務(wù),有成熟的網(wǎng)站定制合作流程,提供網(wǎng)站定制設(shè)計(jì)服務(wù):原型圖制作、網(wǎng)站創(chuàng)意設(shè)計(jì)、前端HTML5制作、后臺(tái)程序開發(fā)等。成都網(wǎng)站設(shè)計(jì)熱線:18982081108具體操作,可以借助mysql自帶的的工具mysqldumpslow,也可以借助第三方工具pt-query-digest這個(gè)更仔細(xì)些
第二:從表結(jié)構(gòu)方向
具體操作:a是表字段的選取(能存在內(nèi)容的時(shí)候盡量選取小的字段,占更小的空間) ,a是否遵循第三范式,b是垂直方向切分(大字段不合理,放到一個(gè)表里面),水平方向切分(數(shù)據(jù)量比較大),問(wèn)題就是在統(tǒng)計(jì)的時(shí)候聯(lián)合查詢問(wèn)題,根據(jù)具體的業(yè)務(wù),分前臺(tái)和后臺(tái)的,前天查詢的時(shí)候提高速度,查詢切分表里面的數(shù)據(jù),后來(lái)統(tǒng)計(jì)報(bào)表的時(shí)候查詢沒(méi)有切分的表數(shù)據(jù)
第三:從操作系統(tǒng)防線
例如32位操作系統(tǒng),64位操作系統(tǒng),對(duì)每個(gè)文件大限制不一樣,32位操作系統(tǒng)好像是大2G,而64位無(wú)限制,還有如防火墻等等
第四:對(duì)mysql數(shù)據(jù)庫(kù)參數(shù)的的配置,例如對(duì)緩沖池大小的設(shè)置,以及緩沖池多久刷新到磁盤配置,等等
以上就是從mysql性能優(yōu)化入手方式,個(gè)人理解
第五:擴(kuò)展硬件,擴(kuò)展cup,內(nèi)存,簡(jiǎn)單粗暴的做法,但是就是成本高,效果不是最明顯的方式
mysqldumpslow用具用法
1:
慢查詢?nèi)罩?,顧名思義就是記錄執(zhí)行比較慢查詢的日志。
查看是否開啟慢查詢?nèi)罩荆?/p>
show variables like '%slow%';
打開慢查詢?nèi)罩?。修改MySQL的配置文件my.cn一般是在/etc目錄下面,加上下面三行配置后重啟MySQL。
slow_query_log = ON
slow_launch_time = 2
slow_query_log_file = /usr/local/mysql/data/slow_query.log
tail -f localhost-slow.log
利用mysql自帶的工具:mysqldumpslow -t 3 /var/lib/mysql/localhost-slow.log | more #前三條