企業生產MySQL如何優化?

參考答案:
a:硬件的優化:

1、採用64位cpu,cpu至少4顆,L2緩存越大越好
2、內存要大,32-64G運行1-2個實例,96-128G運行3-4個實例
3、機械盤選用sas盤,轉速15000以上,用可能的話使用ssd
4、raid卡使用raid10
5、網卡多塊,千兆以上
6、數據庫不要使用虛擬化,slave硬件要好於master

b:操作系統優化

1、操作系統選擇x86_64位,儘量採用xfs文件系統
2、優化磁盤存儲參數
3、優化內核參數
4、優化網絡等

c:mysql構架優化

1、根據內存大小,配置服務器跑多實例
2、主從複製採用mixed模式,儘量不要跨機房同步,若要跨機房,儘量採用遠程寫,本地讀
3、定期檢查、修復主從複製的數據差異
4、業務拆分,搜索功能不使用MySQL數據庫執行;某些高併發,安全性一般的業務使用nosql,如:memcache、 redis等
5、數據庫前端加cache,如memcache,用於用戶登錄,商品查詢
6、動態數據靜態化,整個文件靜態化,頁面片段靜態化
7、數據庫集羣讀寫分離,一主多從,通過dbproxy進行集羣讀寫分離
8、單表超過800萬,拆庫拆表,如人工將(登錄、商品、訂單)拆表拆庫
9、選擇從庫備份,並且對數據庫進行分表分庫備份

d:MySQL數據庫層面優化

1、優化my.cnf參數
2、優化庫表設計,包括字符集、字符串長度、創建短索引、多用複合索引;
3、SQL語句優化,減少慢語句數量;

e:數據庫管理流程、制度優化

1、人的流程:開發—>核心運維/DBA
2、測試流程:內網 IDC測試線上執行
3、客戶端管理,PHPMYADMIN

f:MySQL數據庫安全優化

1、數據庫禁止設置外網
2、數據庫文件權限優化;
3、授權用戶權限限制,儘量專庫專用戶
4、限制開發對生產庫的操作權限
5、防止SQL語句注入

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章