99久久国产露脸精品麻豆,欧美日韩精品小说,亚洲免费在线美女视频,国产三级中文字幕,91极品国产情侣高潮对白,国产亚洲一区二区三区不卡片,欧美jizz精品欧美性,久久国产精品久久国产片

MySQL里面這五個非常非常有用的東西你知道嗎?

web情報站 3431次瀏覽

摘要:MySQL是非常流行的關系型數據庫,雖然擁有的SQL語法大部分是符合ANSI SQL標準的,但是它自身還是攜帶了很多優秀的、私有的語句和指示...

mysql優化



MySQL是非常流行的關系型數據庫,雖然擁有的SQL語法大部分是符合ANSI SQL標準的,但是它自身還是攜帶了很多優秀的、私有的語句和指示符,今天我們就來分析一下。


EXPLAIN

當我們網站或者接口訪問頻率越來越大,這時如果我們的相關SQL語句執行時間很長的話,就很容易造成網站或者接口響應慢的情況,那么使用explain語句,我們能夠清楚的知道MySQL是怎么執行我們的SQL語句的,執行某個查詢語句總共查詢了多少條記錄,使用了什么表以及多表的鏈接順序是怎么樣的,該查詢使用了哪些索引等等信息,有了這些信息,我們能夠根據多次執行和分析優化我們的數據庫,該建立索引的建索引,該刪除的索引就刪除掉。


FOR UPDATE

有時我們有這樣的一種情況,就是需要將某個SELECT語句查詢的行進行鎖定,防止其他客戶端修改,那么這個時候,我們可以使用這個指示符來完成。


DELAYED

有時發現我們的產品的某個插入、更新操作不需要立即生效,也就是一些對讀要求高、寫要求不太高的應用,可以使用這個指示符,就是將這個插入或者修改后的數據不是立即寫入到磁盤文件中去,而是等到MySQL數據庫非常空閑的時候再進行寫入的操作,從這里來看,這個指示符也算是一個小的優化性指示符。


SQL_CACHE

有時我們的產品讀操作非常多,修改頻率比較低,那么這個時候我們能夠在執行select查詢的時候指定sql_cache這個指示符,這樣該查詢語句和相應的查詢結果將被緩存起來,那么下次執行同樣的查詢語句時,如果數據沒有發生改變,那么將直接返回這個緩存的結果給客戶端,從這里來看,這個查詢語句指示符主要用于一些特性應用場景的優化操作。


ON DUPLICATE KEY UPDATE

我們知道,在MySQL中有一個特殊的語句就是Replace語句,就是當插入的時候,我們發現某個條件(這里需要注意的是,這里指的是唯一索引或主鍵)的數據已經存在了,那么這個時候就先刪除這條數據,然后再插入新的數據,也就是先刪除再插入,但是有時候我們僅僅需要的是,如果存在了僅僅修改某個字段的值,而不是刪除再插入,那么這個時候可以使用ON DUPLICATE KEY UPDATE來完成。


合理用好上面介紹的知識,一定能夠解決MySQL中的大部分問題,包括部分性能的分析和優化。


隨機內容

表情

共1條評論
  • 網友評論:

    薩頂頂

    2017-05-06 10:19:56 回復

    點擊加載