mysql是一個關(guān)系型數(shù)據(jù)庫管理系統(tǒng),由瑞典MySQL AB 公司開發(fā),目前屬于?oracle?旗下產(chǎn)品。MySQL 是最流行的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)之一,在 WEB 應(yīng)用方面,MySQL是最好的?RDBMS?(Relational database Management System,關(guān)系數(shù)據(jù)庫管理系統(tǒng)) 應(yīng)用軟件。(相關(guān)推薦:《mysql教程》)
MySQL是一種關(guān)系數(shù)據(jù)庫管理系統(tǒng),關(guān)系數(shù)據(jù)庫將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個大倉庫內(nèi),這樣就增加了速度并提高了靈活性。
其實(shí)在web開發(fā)程序上,mysql仍然有非常多能夠優(yōu)化的地方。
下面給大家介紹mysql性能優(yōu)化的方法。
一:選擇合適的存儲引擎: InnoDB
二:保證從內(nèi)存中讀取數(shù)據(jù)。講數(shù)據(jù)保存在內(nèi)存中
推薦將數(shù)據(jù)全然保存在 innodb_buffer_pool_size ,即按存儲量規(guī)劃 innodb_buffer_pool_size 的容量。這樣你能夠全然從內(nèi)存中讀取數(shù)據(jù)。最大限度降低磁盤操作。
三:定期優(yōu)化重建數(shù)據(jù)庫
mysqlcheck -o –all-databases 會讓 ibdata1 不斷增大。真正的優(yōu)化僅僅有重建數(shù)據(jù)表結(jié)構(gòu)。
四:降低磁盤寫入操作
五: 提高磁盤讀寫速度
六: 充分使用索引
七:分析查詢?nèi)罩竞吐樵內(nèi)罩?/strong>
八:激進(jìn)的方法。使用內(nèi)存磁盤
九:用 nosql 的方式使用 MYSQL
十:其他
a.單條查詢最后添加 LIMIT 1,停止全表掃描。
b.將非”索引”數(shù)據(jù)分離,比方將大篇文章分離存儲,不影響其它自己主動查詢。
c.不用 MYSQL 內(nèi)置的函數(shù)。由于內(nèi)置函數(shù)不會建立查詢緩存。
d.php 的建立連接速度很快,全部能夠不用連接池。否則可能會造成超過連接數(shù)。當(dāng)然不用連接池 PHP 程序也可能將
e.連接數(shù)占滿比方用了 @ignore_user_abort(TRUE);
f.使用 IP 而不是域名做數(shù)據(jù)庫路徑。避免 DNS 解析問題
本篇文章就是關(guān)于mysql性能優(yōu)化方法總結(jié),希望對需要的朋友有所幫助!