最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL 大數(shù)據(jù)量快速插入方法和語句優(yōu)化分享

 更新時(shí)間:2012年04月14日 02:32:42   作者:  
對于事務(wù)表,應(yīng)使用BEGIN和COMMIT代替LOCK TABLES來加快插入
鎖定也將降低多連接測試的整體時(shí)間,盡管因?yàn)樗鼈兊群蜴i定最大等待時(shí)間將上升。例如:

復(fù)制代碼 代碼如下:

Connection 1 does 1000 inserts
Connections 2, 3, and 4 do 1 insert
Connection 5 does 1000 inserts


  如果不使用鎖定,2、3和4將在1和5前完成。如果使用鎖定,2、3和4將可能不在1或5前完成,但是整體時(shí)間應(yīng)該快大約40%。

  INSERT、UPDATE和DELETE操作在MySQL中是很快的,通過為在一行中多于大約5次連續(xù)不斷地插入或更新的操作加鎖,可以獲得更好的整體性能。如果在一行中進(jìn)行多次插入,可以執(zhí)行LOCK TABLES,隨后立即執(zhí)行UNLOCK TABLES(大約每1000行)以允許其它的線程訪問表。這也會(huì)獲得好的性能。

  INSERT裝載數(shù)據(jù)比LOAD DATA INFILE要慢得多,即使是使用上述的策略。

  為了對LOAD DATA INFILE和INSERT在MyISAM表得到更快的速度,通過增加key_buffer_size系統(tǒng)變量來擴(kuò)大 鍵高速緩沖區(qū)。

  INSERT語法

復(fù)制代碼 代碼如下:

INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE]
[INTO] tbl_name [(col_name,...)]
VALUES ({expr | DEFAULT},...),(...),...
[ ON DUPLICATE KEY UPDATE col_name=expr, ... ]


  或:

復(fù)制代碼 代碼如下:


INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE]
[INTO] tbl_name
SET col_name={expr | DEFAULT}, ...
[ ON DUPLICATE KEY UPDATE col_name=expr, ... ]


  或:

復(fù)制代碼 代碼如下:

 
INSERT [LOW_PRIORITY | HIGH_PRIORITY] [IGNORE]
[INTO] tbl_name [(col_name,...)]
SELECT ...
[ ON DUPLICATE KEY UPDATE col_name=expr, ... ]


  一、DELAYED 的使用

  使用延遲插入操作DELAYED調(diào)節(jié)符應(yīng)用于INSERT和REPLACE語句。當(dāng)DELAYED插入操作到達(dá)的時(shí)候,服務(wù)器把數(shù)據(jù)行放入一個(gè)隊(duì)列中,并立即給客戶端返回一個(gè)狀態(tài)信息,這樣客戶端就可以在數(shù)據(jù)表被真正地插入記錄之前繼續(xù)進(jìn)行操作了。如果讀取者從該數(shù)據(jù)表中讀取數(shù)據(jù),隊(duì)列中的數(shù)據(jù)就會(huì)被保持著,直到?jīng)]有讀取者為止。

  接著服務(wù)器開始插入延遲數(shù)據(jù)行(delayed-row)隊(duì)列中的數(shù)據(jù)行。在插入操作的同時(shí),服務(wù)器還要檢查是否有新的讀取請求到達(dá)和等待。如果有,延遲數(shù)據(jù)行隊(duì)列就被掛起,允許讀取者繼續(xù)操作。當(dāng)沒有讀取者的時(shí)候,服務(wù)器再次開始插入延遲的數(shù)據(jù)行。這個(gè)過程一直進(jìn)行,直到隊(duì)列空了為止。

  幾點(diǎn)要注意事項(xiàng):

  INSERT DELAYED應(yīng)該僅用于指定值清單的INSERT語句。服務(wù)器忽略用于INSERT DELAYED...SELECT語句的DELAYED。服務(wù)器忽略用于INSERT DELAYED...ON DUPLICATE UPDATE語句的DELAYED。

  因?yàn)樵谛斜徊迦肭?,語句立刻返回,所以您不能使用LAST_INSERT_ID()來獲取AUTO_INCREMENT值。AUTO_INCREMENT值可能由語句生成。

  對于SELECT語句,DELAYED行不可見,直到這些行確實(shí)被插入了為止。

  DELAYED在從屬復(fù)制服務(wù)器中被忽略了,因?yàn)镈ELAYED不會(huì)在從屬服務(wù)器中產(chǎn)生與主服務(wù)器不一樣的數(shù)據(jù)。注意,目前在隊(duì)列中的各行只保存在存儲器中,直到它們被插入到表中為止。這意味著,如果您強(qiáng)行中止了mysqld(例如,使用kill -9)或者如果mysqld意外停止,則所有沒有被寫入磁盤的行都會(huì)丟失。

相關(guān)文章

  • mysql免安裝制作使用說明

    mysql免安裝制作使用說明

    mysql免安裝版本的制作方法,需要的朋友可以參考下。
    2010-08-08
  • MySQL磁盤碎片整理實(shí)例演示

    MySQL磁盤碎片整理實(shí)例演示

    這篇文章主要給大家介紹了關(guān)于MySQL磁盤碎片整理的相關(guān)資料,為什么數(shù)據(jù)庫會(huì)產(chǎn)生碎片,以及如何清理磁盤碎片,還有一些清理磁盤碎片的注意事項(xiàng),需要的朋友可以參考下
    2022-04-04
  • mysql如何導(dǎo)出服務(wù)器內(nèi)所有的數(shù)據(jù)庫

    mysql如何導(dǎo)出服務(wù)器內(nèi)所有的數(shù)據(jù)庫

    這篇文章主要介紹了mysql如何導(dǎo)出服務(wù)器內(nèi)所有的數(shù)據(jù)庫問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • MySQL中如何添加新字段

    MySQL中如何添加新字段

    這篇文章主要介紹了MySQL中如何添加新字段方式,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-04-04
  • MySQL對中文進(jìn)行排序詳解及實(shí)例

    MySQL對中文進(jìn)行排序詳解及實(shí)例

    這篇文章主要介紹了MySQL對中文進(jìn)行排序詳解及實(shí)例的相關(guān)資料,需要的朋友可以參考下
    2017-05-05
  • MySQL錯(cuò)誤代碼2058和2059的解決辦法

    MySQL錯(cuò)誤代碼2058和2059的解決辦法

    這篇文章主要介紹了MySQL錯(cuò)誤代碼2058和2059的解決辦法,2058和2059的錯(cuò)誤碼核心都是你用的客戶端工具和mysql版本的密碼插件不匹配,下面就來介紹一下解決方法,感興趣的可以了解一下
    2025-03-03
  • mysql數(shù)據(jù)庫中查詢json的技巧大全

    mysql數(shù)據(jù)庫中查詢json的技巧大全

    這篇文章主要介紹了MySQL中JSON數(shù)據(jù)類型的各種函數(shù),包括JSON_EXTRACT、JSON_UNQUOTE、JSON_SEARCH、JSON_SET、JSON_CONTAINS、JSON_REMOVE和JSON_REPLACE等,涵蓋了JSON數(shù)據(jù)的提取、更新、刪除和查詢等功能,需要的朋友可以參考下
    2025-02-02
  • MySQL常見的底層優(yōu)化操作教程及相關(guān)建議

    MySQL常見的底層優(yōu)化操作教程及相關(guān)建議

    這篇文章主要介紹了MySQL常見的底層優(yōu)化操作教程及相關(guān)建議,包括對運(yùn)行操作系統(tǒng)的硬件方面及存儲引擎參數(shù)的調(diào)整等零碎方面的小整理,需要的朋友可以參考下
    2015-12-12
  • Linux下mysql異地自動(dòng)備份的方法

    Linux下mysql異地自動(dòng)備份的方法

    這篇文章主要介紹了Linux下mysql異地自動(dòng)備份的方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-06-06
  • MySQL基礎(chǔ)教程第一篇 mysql5.7.18安裝和連接教程

    MySQL基礎(chǔ)教程第一篇 mysql5.7.18安裝和連接教程

    這篇文章主要為大家詳細(xì)介紹了MySQL基礎(chǔ)教程第一篇,mysql5.7.18安裝和連接教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-05-05

最新評論

吉木乃县| 贞丰县| 交口县| 黄大仙区| 赤水市| 仪征市| 东丽区| 菏泽市| 昆明市| 凌海市| 苏州市| 沙坪坝区| 土默特右旗| 九江县| 县级市| 彝良县| 台湾省| 揭阳市| 北海市| 沐川县| 郓城县| 汽车| 崇文区| 彭阳县| 隆德县| 瑞金市| 华安县| 晋江市| 泾阳县| 新田县| 景德镇市| 东海县| 突泉县| 灵石县| 丁青县| 双峰县| 琼中| 福贡县| 乌恰县| 来宾市| 广昌县|