程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> MySQL手冊版本 5.0.20-MySQL優化(四) (1)(5)

MySQL手冊版本 5.0.20-MySQL優化(四) (1)(5)

編輯:關於PHP編程


通常地,應該保存所有的冗余數據(在數據庫原理中叫做"第三范式")。然而,為了能取得更高的效率復制一些信息或者創建摘要表也是劃算的。


存儲過程或者 UDFs(用戶定義函數) 的方式在執行一些任務時可能性能更高。盡管如此,當數據庫不支持這些特性時,還是有其他的替代方法可以達到目的,即使它們有點慢。


可以從查詢緩存或應答中取得結果,然後將很多次的插入及更新操作放在一起做。如果數據庫支持表鎖(如MySQL和ORACLE),那麼這就可以確保索引緩存在所有的更新操作之後只需要刷新一次。


當不需要直到數據什麼時候寫入表中時,可以用 INSERT DELAYED。這就會提高速度,因為多條記錄同時在一起做一次磁盤寫入操作。


當想讓 SELECT 語句的優先級比插入操作還高時,用 INSERT LOW_PRIORITY。


用 SELECT HIGH_PRIORITY 來使檢索記錄跳過隊列,也就是說即使有其他客戶端正要寫入數據,也會先讓 SELECT 執行完。


在一條 INSERT 語句中采用多重記錄插入格式(很多數據庫都支持)。


用 LOAD DATA INFILE 來導入大量數據,這比 INSERT 快。


用 AUTO_INCREMENT 字段來生成唯一值。


定期執行 OPTIMIZE TABLE 防止使用動態記錄格式的 MyISAM 表產生碎片。詳情請看"15.1.3 MyISAM Table Storage Formats"。


采用 HEAP 表,它可能會提高速度。詳情請看"15.1.3 MyISAM Table Storage Formats"。


正常的WEB服務器配置中,圖片文件最好以文件方式存儲,只在數據庫中保存文件的索引信息。這麼做的原因是,通常情況下WEB服務器對於文件的緩存總是做的比數據庫來得好,因此使用文件存儲會讓系統更容易變得更快。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved