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

MySQL與PHP的基礎與應用專題之索引

 更新時間:2022年02月22日 14:56:45   作者:我是小白呀  
MySQL是一個關系型數(shù)據(jù)庫管理系統(tǒng),由瑞典MySQL?AB?公司開發(fā),屬于?Oracle?旗下產(chǎn)品。MySQL?是最流行的關系型數(shù)據(jù)庫管理系統(tǒng)之一,本系列將帶你掌握php與mysql的基礎應用,本篇從索引開始

概述

從今天開始, 小白我將帶領大家一起來補充一下 數(shù)據(jù)庫的知識.

索引

索引 (Index) 是一種特殊的數(shù)據(jù)結(jié)構, 類似于圖書的目錄. 索引能夠極大的提升數(shù)據(jù)庫的查詢效率. 如果沒有索引, 在查詢數(shù)據(jù)時必須掃描表中的說有記錄才能找出符合條件的記錄, 這種全表掃描的查詢效率非常低.

索引的種類描述
普通索引最基本的索引, 沒有任何限制, 僅加速查詢
唯一索引索引列的值必須唯一, 但允許有空值
主鍵索引一種特殊的唯一索引, 不允許有空值
復合索引兩個或多個列上的索引被稱作符合索引
全文索引對文本內(nèi)容進行分詞索引

格式:

CREATE INDEX 索引名 ON 表名(列名)

查詢分析器 EXPLAIN

EXPLAIN 命令可以查看 SQL 語句的執(zhí)行計劃. 當 EXPLAIN 與 SQL 語句一起使用時, MySQL 將顯示來自優(yōu)化器的有關語句執(zhí)行計劃的信息. MySQL 解釋了它將如何處理語句, 包括有關如何連接表以及以何種順序連接表的信息.

查詢分析器的用途:

  • 分析出表的讀取順序
  • 數(shù)據(jù)讀取操作的操作類型
  • 哪些索引可以使用
  • 哪些索引被實際使用
  • 表之間的引用
  • 每張表有多少行被優(yōu)化器查詢

結(jié)果解析:

參數(shù)描述
id執(zhí)行 SELECT 或操作表的順序
select_type查詢的類型, 如 SIMPLE, PRIMARY, SUBQUERY, DERIVED, UNION 等
table當前行使用的表名
partitions匹配的分區(qū)
type連接類型
possibile_keys可能使用的索引
key實際使用的索引, NULL 表示未使用索引
key_len查詢中使用的索引長度
ref列與索引的比較
rows掃描的行數(shù)
filtered選取的行數(shù)占掃描的行數(shù)的百分比
extra其他信息

格式:

EXPLAIN SQL 語句

例子:

MySQL 日志

日志 (Log) 用于記錄數(shù)據(jù)庫的運行情況, 以及用戶對數(shù)據(jù)庫執(zhí)行的各類操作. 當數(shù)據(jù)庫發(fā)生故障時, 可以根據(jù)日志分析和解決問題, 從而對數(shù)據(jù)進行恢復.

日志描述
重做日志 (Redo Log)重做日志是一種物理格式的日志, 記錄的是物理數(shù)據(jù)頁面修改的信息
回滾日志 (Undo Log)回滾日志是一種邏輯格式的日志, 在執(zhí)行 Undo 的時候. 僅僅是將數(shù)據(jù)從邏輯上恢復至事務之前的狀態(tài)
二進制日志 (Bin Log)二進制日志是一種邏輯格式的日志, 以二進制文件的形式記錄了數(shù)據(jù)庫中的操作, 但不記錄查詢語句
錯誤日志 (Error Log)錯誤日志記錄著 Mysqld 啟動和停止, 以及服務器在運行過程中發(fā)生的錯誤的關信息
慢查詢?nèi)罩?(Slow Query Log)慢查詢?nèi)罩居涗泩?zhí)行時間過長和沒有使用索引的查詢語句
一般查詢?nèi)罩?(General Log)記錄了服務器收到的每一個查詢或是命令, 無論這些查詢是命令是否正確甚至是否包含語法錯誤
中繼日志 (Relay Log)中級日志類似二進制, 可用于復制架構中, 使從服務器和主服務器的數(shù)據(jù)保持一致

慢查詢?nèi)罩?/h2>

慢查詢?nèi)罩居糜谟涗?MySQL 數(shù)據(jù)庫中響應時間超過指定閾值的語句. 慢查詢?nèi)罩就ǔR脖环Q為慢體質(zhì), 因為慢查詢不僅僅針對 SELECT 語句, 像 INSERT, UPDATE, DELETE 等語句. 只要響應時間超過所設定閾值都會記錄在慢查詢?nèi)罩局?

參數(shù)描述
slow_query_log是否開啟慢查詢?nèi)罩? 1 表示開啟, 0 表示關閉
slow_query_log_file慢查詢?nèi)罩敬鎯β窂? 可選
long_query_time閾值, 當 SQL 語句的響應時間超過閾值就會被記錄到日志中
log_queries_ not_using_indexes未使用索引的查詢也被記錄到慢查詢中, 可選
log_output日志存儲方式, 默認為 FILE
log_output=‘FILE’ 表示將日志存入文件
log_output=‘TBALE’ 表示將日志存入數(shù)據(jù)庫
log_output=‘FILE, TABLE’ 表示同時將日志存入文件和數(shù)據(jù)庫

開啟慢查詢:

set slow_query_log='ON';
set long_query_time=1;

到此這篇關于MySQL與PHP的基礎與應用專題之索引的文章就介紹到這了,更多相關MySQL 索引內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • MySQL安裝與創(chuàng)建用戶操作(新手入門指南)

    MySQL安裝與創(chuàng)建用戶操作(新手入門指南)

    這篇文章主要為大家介紹了MySQL安裝與創(chuàng)建用戶的使用講解是非常適合小白新手的入門學習,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-05-05
  • 用于App服務端的MySQL連接池(支持高并發(fā))

    用于App服務端的MySQL連接池(支持高并發(fā))

    這篇文章主要介紹了用于App服務端的MySQL連接池,并支持高并發(fā),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2015-12-12
  • MySQL數(shù)據(jù)庫優(yōu)化詳解

    MySQL數(shù)據(jù)庫優(yōu)化詳解

    這篇文章主要介紹了MySQL數(shù)據(jù)庫優(yōu)化的方方面面,各種小技巧,需要的朋友可以參考下
    2014-08-08
  • Window 下安裝Mysql5.7.17 及設置編碼為utf8的方法

    Window 下安裝Mysql5.7.17 及設置編碼為utf8的方法

    這篇文章主要介紹了Window 下安裝Mysql5.7.17 及設置編碼為utf8的方法,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2017-03-03
  • MySQL子查詢的幾種常見形式介紹

    MySQL子查詢的幾種常見形式介紹

    mysql從4.1版開始支持子查詢功能,在此版本前,可以用join寫連表查詢來進行替代,但不推薦這么寫,相當?shù)穆闊?/div> 2014-04-04
  • windows下重啟mysql的方法

    windows下重啟mysql的方法

    這篇文章主要介紹了windows下重啟mysql的方法,需要的朋友可以參考下
    2014-12-12
  • MySQL中的HBase、ES的特點和區(qū)別解析

    MySQL中的HBase、ES的特點和區(qū)別解析

    本文介紹了MySQL、HBase和ElasticSearch的特點和區(qū)別,MySQL是一個關系型數(shù)據(jù)庫,支持事務和SQL,而HBase和ElasticSearch是NoSQL數(shù)據(jù)庫,HBase基于HDFS,支持大規(guī)模數(shù)據(jù)的讀寫,而ElasticSearch是一個分布式的全文搜索引擎,感興趣的朋友跟隨小編一起看看吧
    2025-01-01
  • Docker搭建MySQL并掛載數(shù)據(jù)的全過程

    Docker搭建MySQL并掛載數(shù)據(jù)的全過程

    環(huán)境搭建費時費力,但要必不可少,這篇文章主要給大家介紹了關于Docker搭建MySQL并掛載數(shù)據(jù)的相關資料,文中通過圖文以及實例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2022-01-01
  • win11系統(tǒng)下mysql8.4更改數(shù)據(jù)目錄問題解決

    win11系統(tǒng)下mysql8.4更改數(shù)據(jù)目錄問題解決

    更改數(shù)據(jù)庫目錄是指修改MySQL數(shù)據(jù)庫的存儲路徑,本文主要介紹了win11系統(tǒng)下mysql8.4更改數(shù)據(jù)目錄問題解決,具有一定的參考價值,感興趣的可以了解一下
    2024-07-07
  • 解決MySQL啟動常見錯誤:ERROR 2002(HY000) Can‘t connect to local MySQL server through socket‘tmp問題

    解決MySQL啟動常見錯誤:ERROR 2002(HY000) Can‘t connect

    這篇文章主要介紹了解決MySQL啟動常見錯誤:ERROR 2002(HY000) Can‘t connect to local MySQL server through socket‘tmp問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2025-04-04

最新評論

乌海市| 巴青县| 黄山市| 巨鹿县| 崇阳县| 东莞市| 读书| 平陆县| 庆元县| 仙游县| 望奎县| 霍州市| 吉林市| 安泽县| 乌鲁木齐县| 嘉禾县| 哈密市| 桦川县| 屏南县| 凤山市| 东丽区| 丰镇市| 寻乌县| 集贤县| 上饶市| 淮南市| 元阳县| 台山市| 大荔县| 长海县| 互助| 靖西县| 桐庐县| 镇赉县| 财经| 武夷山市| 青海省| 阿合奇县| 重庆市| 遵义县| 永康市|