1. 程式人生 > >老男孩教育每日一題-第88天-企業生產MySQL如何優化?

老男孩教育每日一題-第88天-企業生產MySQL如何優化?

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語句註入

備註

今天是每日一題陪伴大家的第88天期待你的進步

對於題目和答案的任何疑問,請在博客評論區留言
往期題目索引

http://lidao.blog.51cto.com/3388056/1914205

本文出自 “李導的博客” 博客,請務必保留此出處http://lidao.blog.51cto.com/3388056/1945391

老男孩教育每日一題-第88天-企業生產MySQL如何優化?