Mysql索引操作

1、索引語法

2、慢查詢日志

慢查詢日志記錄了所有執行時間超過指定參數( long_query_time ,單位:秒,默認 10 秒)的所有
SQL 語句的日志。
MySQL 的慢查詢日志默認沒有開啟,我們可以查看一下系統變量 slow_query_log

開啟慢查詢日志,需要在 MySQL 的配置文件( /etc/my.cnf )中配置如下信息:
檢查慢查詢日志 :
最終我們發現,在慢查詢日志中,只會記錄執行時間超多我們預設時間( 2s )的 SQL ,執行較快的 SQL是不會記錄的。

3、profile 和explain

profile 能夠在做SQL 優化時幫助我們了解時間都耗費到哪里去了
通過 have_profiling參數,能夠看到當前 MySQL 是否支持 profile 操作:
1、SELECT @@have_profiling ;?
2、SET profiling = 1;? 開啟 profiling
3、執行sql語句
4、
EXPLAIN 或者 DESC 命令獲取 MySQL 如何執行 SELECT 語句的信息,包括在 SELECT 語句執行
過程中表如何連接和連接的順序。

4、索引設計原則

1). 針對于數據量較大,且查詢比較頻繁的表建立索引。
2). 針對于常作為查詢條件( where )、排序( order by )、分組( group by )操作的字段建立索
引。
3). 盡量選擇區分度高的列作為索引,盡量建立唯一索引,區分度越高,使用索引的效率越高。
4). 如果是字符串類型的字段,字段的長度較長,可以針對于字段的特點,建立前綴索引。
5). 盡量使用聯合索引,減少單列索引,查詢時,聯合索引很多時候可以覆蓋索引,節省存儲空間,避免回表,提高查詢效率。
6). 要控制索引的數量,索引并不是多多益善,索引越多,維護索引結構的代價也就越大,會影響增刪改的效率。
7). 如果索引列不能存儲 NULL 值,請在創建表時使用 NOT NULL 約束它。當優化器知道每列是否包含 NULL 值時,它可以更好地確定哪個索引最有效地用于查詢。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/696826.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/696826.shtml
英文地址,請注明出處:http://en.pswp.cn/news/696826.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

MySQL數據庫備份與還原批處理腳本

數據庫備份文件,例如保存為:dump_msyql.bat REM 數據庫備份 echo offREM 激活延遲環境變量擴展,防止變量賦值丟失 setlocal enabledelayedexpansionREM 獲取當天時間 set today%date:~8,2%REM 大前天,當天-3天,小于10…

包裝類日期日歷類

一(Date類): 在JDK的java.util包中,提供了Date類用于表示日期和時間,精確到毫秒。隨著JDK版本的不斷升級和發展,Date類中的大部分構造方法和普通方法都已經不推薦使用。在JDK8中,Date類只有2個構造方法可以使用&#x…

【LeetCode】升級打怪之路 Day 02:有序數組平方 滑動窗口法

今日題目: 977. 有序數組的平方 | LeetCode209. 長度最小的子數組 | LeetCode76. 最小覆蓋子串 | LeetCode59. 螺旋矩陣 II | LeetCode 目錄 今日總結Problem 1:有序數組平方 ???Problem 2:滑動窗口法 【必會】LeetCode 209. 長度最小的子…

怎樣提取WPS文檔的目錄?

怎樣提取WPS文檔的目錄(智能識別目錄)? 1. 將你的WPS文檔打開,菜單:文件:輸出為PDF,另存為(.pdf) 2. PyPDF2 從PDF文件中提取目錄 運行 python pdf_read_dir.py 你的PDF文件 或者 java : pd…

【2024軟件測試面試必會技能】Appium自動化(5):元素定位工具

常用元素定位工具使用 uiautomatorviewer定位工具: 元素定位主要用來獲取元素信息,獲取元素信息后才能用appium提供的相關API去識別和操作元素。 谷歌在AndroidSDK中,提供了元素定位工具uiautomatorviewer,該工具可在android-s…

系統學習Python——裝飾器:類裝飾器-[跟蹤對象接口:基礎知識]

分類目錄:《系統學習Python》總目錄 文章《系統學習Python——裝飾器:類裝飾器-[單例類:基礎知識]》的單例示例闡明了如何使用類裝飾器來管理一個類的所有實例。類裝飾器的另一個常用場景是為每個生成的實例擴展接口。類裝飾器基本上可以在實…

三opencv源碼解壓及環境變量配置

1.雙擊opencv-3.4.6-vc14-vc15.exe 2.選擇解壓的路徑,點擊【extract】 3.設計環境變量

從零學習Linux操作系統第二十七部分 shell腳本中的變量

一、什么是變量 變量的定義 定義本身 變量就是內存一片區域的地址 變量存在的意義 命令無法操作一直變化的目標 用一串固定的字符來表示不固定的目標可以解決此問題 二、變量的類型及命名規范 環境級別 export A1 在環境關閉后變量失效 退出后 關閉 用戶級別&#xff…

《初階數據結構》尾聲

目錄 前言: 《快速排序(非遞歸)》: 《歸并排序》: 《歸并排序(非遞歸)》: 《計數排序》: 對于快速排序的優化: 分析: 總結: 前言&#xff1a…

新疆營盤古城及古墓群安防艙體實施方案

3 總體布局 3.1設計原則 3.1.1執行有效的國家標準、國家軍用標準和行業標準; 3.1.2滿足指標要求; 3.1.3采用通用化、模塊化設計,提高設備可維修性; 3.1.4采用人機工程學知識進行設計,充分考慮安全性。 3.2 總體…

Double-DQN算法

Double-DQN算法的原理簡介、與DQN對比等。 參考深度Q網絡進階技巧 1. 原理簡介 在DQN算法中,雖然有target_net和eval_net,但還是容易出現Q值高估的情況,原因在于訓練時用通過target_net選取最優動作 a ? argmax ? a Q ( s t 1 , a ; w…

51單片機學習(3)-----獨立按鍵控制LED的亮滅狀態

前言:感謝您的關注哦,我會持續更新編程相關知識,愿您在這里有所收獲。如果有任何問題,歡迎溝通交流!期待與您在學習編程的道路上共同進步了。 目錄 一. 器件介紹及實驗原理 1.獨立按鍵 (1)獨…

react 實現路由攔截

簡單介紹下項目背景,我這里做了一個demo,前端使用mock數據,然后實現簡單的路由攔截,校驗session是否包含用戶作為已登錄的依據,react-router-dom是v6。不像vue可以設置登錄攔截beforeenter,react需要我們自…

外包干了3個月,技術退步明顯

先說一下自己的情況,本科生,19年通過校招進入廣州某軟件公司,干了接近4年的功能測試,今年年初,感覺自己不能夠在這樣下去了,長時間呆在一個舒適的環境會讓一個人墮落!而我已經在一個企業干了四年的功能測試…

Linux之用戶和用戶組的深入了解

目錄 一、簡介 1.1、用戶: 1.2、用戶組 1.3、UID和GID 1.3、用戶賬戶分類 查看用戶類別 超級用戶root(0) 程序用戶(1~499) 普通用戶(500~65535) 二、用戶 2.1、添加新的用戶賬號:useradd 2.2、刪除賬號:userdel 有-r與沒有-r區別…

OSDI 2023: Hyrax Fail-in-Place Server Operation in Cloud Platforms

我們使用以下6個分類標準對本文的研究選題進行分析: 1. 硬件故障類型 DRAM: 此類別涉及研究如何處理內存相關的錯誤。這包括單比特錯誤,使用傳統 ECC 進行校正,以及需要冗余、修復技術或隔離故障內存區域的更廣泛的故障。磁盤: 此處研究將解決存儲故障,尤其是 SSD 中的故障…

運維07:堡壘機

什么是跳板機 跳板機就是一臺服務器而已,運維人員在使用管理服務器的時候,必須先連接上跳板機,然后才能去操控內網中的服務器,才能登錄到目標設備上進行維護和操作 開發小張 ---> 登錄跳板機 ---> 再登錄開發服務器 測試…

貸齊樂系統最新版SQL注入(無需登錄繞過WAF可union select跨表查詢)

一、環境 已上傳資源(daiqile) 二、代碼解釋 1.1Request 不管get請求還是post請求都可以接收到 1.2過濾的還挺多 1.3第二個WAF把數據分為兩個了一個Key一個value,全是explode的功勞 1.4submit是if進入的前提 很明顯走進來了 1.5那我們在這…

學習JAVA的第三天(基礎)

目錄 流程控制語句 順序結構 分支結構 循環結構 分類: 練習 跳轉控制語句 練習 數組 數組介紹 數組的定義和靜態初始化 數組定義 數組的靜態初始化 數組元素訪問 數組遍歷 數組動態初始化 JAVA內存分配 流程控制語句 順序結構 是Java程序默認的執行流程…

UIKit 在 UICollectionView 中拖放交換 Cell 視圖的極簡實現

概覽 UIKit 中的 UICollectionView 視圖是我們顯示多列集合數據的不二選擇,而豐富多彩的交互操作更是我們選擇 UICollectionView 視圖的另一個重要原因。 如上圖所示:我們實現了在 UICollectionView 中拖放交換任意兩個 Cell 子視圖的功能,這…