關系型數據庫在互聯網項目中應用極為廣泛,今天小編就和大家分享幾個數據庫優化的幾種方案:
建立索引
數據庫優化第一步就是建立合理的索引,這也是最初級的優化,也是DBA常用的優化方案!MySql索引類型有:普通索引,主鍵索引,唯一索引,組合索引!
優化SQL語句
從業務角度,優化SQL語句;這里給大家分享一個例子,查詢三個小時內,未處理的訂單;使用一條SQL語句的效率要遠遠低于使用18條SQL語句,每條SQL語句搜取10分鐘;


優化表結構
能用小字段類型,就盡量用小字段類型;如能用short,就不要用int;能用數字類型,就不要用字符串類型,舉個例子,一般的訂單號都是數字,很少有字母的。
拆分表
表的拆分一般分為橫向拆分和縱向拆分,橫向拆分不改變表結構,重復多建立幾張表。這種優化方式類似于上文提到的SQL語句優化的例子;另一種是縱向拆分,兩個表通過字段相關聯。


分庫
分庫是數據庫優化的一種較高級手段,實際上是橫向分表的衍生;一般需要有中間件或者客戶端做一些工作實現,這里給大家推薦兩個分庫的代碼:一個是mycat,基于阿里coba開源的數據庫中間件,很容易實現分庫分表、主從切換功能。另一個當當網開源的一個庫 sharding-jdbc


版權聲明:本文內容由互聯網用戶自發貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如發現本站有涉嫌抄襲侵權/違法違規的內容, 請發送郵件至 舉報,一經查實,本站將立刻刪除。
發表評論
請登錄后評論...
登錄后才能評論