Archive for the Category: MySQL

如何改善MySQL數據裝載操作效率的方法

多時候關心的是優化SELECT查詢,因為它們是最常用的查詢,而且確定怎樣優化它們並不總是直截了當。相對來說,將數據裝入數據庫是直截了當的。然而,也存在可用來改善數據裝載操作效率的策略,其基本原理如下:

成批裝載較單行裝載更快,因為在裝載每個記錄後,不需要刷新索引高速緩存;可在成批記錄裝入後才刷新。

在表無索引時裝載比索引後裝載更快。如果有索引,不僅必須增加記錄到數據文件,而且還要修改每個索引以反映增加了的新記錄。

較短的SQL語句比較長的SQL語句要快,因為它們涉及服務器方的分析較少,而且還因為將它們通過網絡從客戶機發送到服務器更快。這些因素中有一些似乎微不足道(特別是最後一個因素),但如果要裝載大量的數據,即使是很小的因素也會產生很大的不同結果。我們可以利用上述的一般原理推導出幾個關於如何最快地裝載數據的實際結論:

LOAD DATA(包括其所有形式)比INSERT效率高,因為其成批裝載行。索引刷新較少,並且服務器只需分析和解釋一條語句而不是幾條語句。

LOAD DATA比LOAD DATA LOCAL效率更高。利用LOAD DATA,文件必須定位在服務器上,而且必須具有FILE權限,但服務器可從磁盤直接讀取文件。利用LOAD DATA LOCAL,客戶機讀取文件並將其通過網絡發送給服務器,這樣做很慢。

Tagged Leave a comment

MySQL備份、恢復數據庫命令

一直都用phpMyAdmin對MySQL進行管理,簡單方便,近期遇到個奇怪問題: 兩台服務器數據移植,分別是M […]

Tagged Leave a comment
在线客服系统