與其他的大型數據庫例如 Oracle、DB2、SQL Server等相比,MySQL 自有它的不足之處,但是這絲毫也沒有減少它受歡迎的程度。對于一般的個人使用者和中小型企業來說,MySQL提供的功能已經綽綽有余,而且由于 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語句注入
總結
本文關于企業生產MySQL優化介紹的先關內容就到這里,希望對大家有所幫助。感興趣的朋友可以參閱:Oracle分頁查詢性能優化代碼詳解、ORACLE SQL語句優化技術要點解析、C/C++ 編譯器優化介紹等內容,有什么問題可以隨時留言,小編會及時回復大家的。
您可能感興趣的文章:- 簡單談談MySQL優化利器-慢查詢
- MySQL優化表時提示 Table is already up to date的解決方法
- MySQL數據庫21條最佳性能優化經驗