最近幾天看了有關SQL優化的知識,當我們SQL語句在數據庫中做查詢操作的時候,隨著數據表中的數據量越來越大,查詢起來耗費的時間也越來越長,這個時候就需要我們對數據庫來做一些優化,以便數據庫能快速的執行出結果。涉及的概念大致有:索引、分區、執行計劃、SQL語句的編寫規則、數據庫本身的優化等等。
在大多數情況下,緩慢的延遲是由查詢或鎖引起的。通過監控查詢和鎖,您可以深入和隔離SQL語句和鎖,這將耗費大量時間。也可使用云吶數據庫監控和數據庫查詢監控自定義查詢。
盲注就是在sql注入過程中,sql語句執行的選擇后,選擇的數據不能回顯到前端頁面。此時,我們需要利用一些方法進行判斷或者嘗試,這個過程稱之為盲注。
我們通過一套白名單機制來實現兼容性目標。使用白名單機制是基于如下幾點考量。第一點考慮到系統可用資源(主要是內存)的限制,一般不會在所有的表的所有上都創建列索引,當一個查詢語句需要使用到列不在列存中存在時,其不能在列存上執行。第二點,基于性能的的考量,我們完全重寫了一套面向列存的SQL執行引擎,包括其中所有的物理執行算子和表達式計算,其所覆蓋的場景相對MySQL原生行存能夠支持的范圍有欠缺。當下發的SQL中包含一些IMCI執行引擎不能支持的算子片段或者列類型時,需要能能夠識別攔截并切換回行存執行。