企業生產MySQL如何優化?

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

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

b:操做系統優化

一、操做系統選擇x86_64位,儘可能採用xfs文件系統
二、優化磁盤存儲參數
三、優化內核參數
四、優化網絡等

c:mysql構架優化

一、根據內存大小,配置服務器跑多實例
二、主從複製採用mixed模式,儘可能不要跨機房同步,若要跨機房,儘可能採用遠程寫,本地讀
三、按期檢查、修復主從複製的數據差別
四、業務拆分,搜索功能不使用MySQL數據庫執行;某些高併發,安全性通常的業務使用nosql,如:memcache、 redis等
五、數據庫前端加cache,如memcache,用於用戶登陸,商品查詢
六、動態數據靜態化,整個文件靜態化,頁面片斷靜態化
七、數據庫集羣讀寫分離,一主多從,經過dbproxy進行集羣讀寫分離
八、單表超過800萬,拆庫拆表,如人工將(登陸、商品、訂單)拆表拆庫
九、選擇從庫備份,而且對數據庫進行分表分庫備份

d:MySQL數據庫層面優化

一、優化my.cnf參數
二、優化庫表設計,包括字符集、字符串長度、建立短索引、多用複合索引;
三、SQL語句優化,減小慢語句數量;

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

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

f:MySQL數據庫安全優化

一、數據庫禁止設置外網
二、數據庫文件權限優化;
三、受權用戶權限限制,儘可能專庫專用戶
四、限制開發對生產庫的操做權限
五、防止SQL語句注入
前端

相關文章
相關標籤/搜索