中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

杭州的網(wǎng)站建設(shè)靜態(tài)網(wǎng)站開(kāi)發(fā)

杭州的網(wǎng)站建設(shè),靜態(tài)網(wǎng)站開(kāi)發(fā),機(jī)械加工網(wǎng)免費(fèi)鋪貨,有沒(méi)有公司做農(nóng)副產(chǎn)品網(wǎng)站的MySQL數(shù)據(jù)庫(kù)---筆記5 一、鎖1.1、介紹1.2、全局鎖1.2.1、全局鎖介紹1.2.2、一致性數(shù)據(jù)備份 1.3、表級(jí)鎖1.3.1、表鎖1.3.2、元數(shù)據(jù)鎖(meta data lock , MDL)1.3.3、意向鎖 1.4、行級(jí)鎖1.4.1、介紹1.4.2、行鎖1.4.3、間隙鎖/臨建鎖 二、InnoDB引擎2.1、邏輯…

MySQL數(shù)據(jù)庫(kù)---筆記5

  • 一、鎖
    • 1.1、介紹
    • 1.2、全局鎖
      • 1.2.1、全局鎖介紹
      • 1.2.2、一致性數(shù)據(jù)備份
    • 1.3、表級(jí)鎖
      • 1.3.1、表鎖
      • 1.3.2、元數(shù)據(jù)鎖(meta data lock , MDL)
      • 1.3.3、意向鎖
    • 1.4、行級(jí)鎖
      • 1.4.1、介紹
      • 1.4.2、行鎖
      • 1.4.3、間隙鎖/臨建鎖
  • 二、InnoDB引擎
    • 2.1、邏輯存儲(chǔ)結(jié)構(gòu)
    • 2.2、架構(gòu)
      • 2.2.1、內(nèi)存架構(gòu)
      • 2.2.2、磁盤(pán)結(jié)構(gòu)
      • 2.2.3、后臺(tái)線(xiàn)程
    • 2.3、事務(wù)原理
      • 2.3.1、概述
      • 2.3.2、redo log
      • 2.3.3、undo log
    • 2.4、MVCC
      • 2.4.1、基本概念
      • 2.4.2、隱式字段
      • 2.4.3、undo log日志
      • 2.4.4、readView
      • 2.4.5、原理分析(RC級(jí)別)
      • 2.4.6、原理分析(RR級(jí)別)
  • 三、MySQL管理
    • 3.1、系統(tǒng)數(shù)據(jù)庫(kù)介紹
    • 3.2、常用工具
      • 3.2.1、mysql
      • 3.2.2、mysqladmin
      • 3.2.3、mysqlbinlog
      • 3.2.4、mysqlshow
      • 3.2.5、mysqldump
      • 3.2.6、mysqlimport/source

一、鎖

1.1、介紹

  • 概述

鎖是計(jì)算機(jī)協(xié)調(diào)多個(gè)進(jìn)程或線(xiàn)程并發(fā)訪(fǎng)問(wèn)某一資源的機(jī)制。在數(shù)據(jù)庫(kù)中,除傳統(tǒng)的計(jì)算資源(CPU、RAM、I/O)的爭(zhēng)用以外,數(shù)據(jù)也是一種供許多用戶(hù)共享的資源。如何保證數(shù)據(jù)并發(fā)訪(fǎng)問(wèn)的一致性、有效性是所有數(shù)據(jù)庫(kù)必須解決的一個(gè)問(wèn)題,鎖沖突也是影響數(shù)據(jù)庫(kù)并發(fā)訪(fǎng)問(wèn)性能的一個(gè)重要因素。從這個(gè)角度來(lái)說(shuō),鎖對(duì)數(shù)據(jù)庫(kù)而言顯得尤其重要,也更加復(fù)雜。

  • 分類(lèi)
    MySQL中的鎖,按照鎖的粒度分,分為以下三類(lèi):
    1. 全局鎖: 鎖定數(shù)據(jù)庫(kù)中的所有表。
    2. 表級(jí)鎖: 每次操作鎖住整張表。
    3. 行級(jí)鎖: 每次操作鎖住對(duì)應(yīng)的行數(shù)據(jù)。

1.2、全局鎖

1.2.1、全局鎖介紹

  • 介紹

全局鎖就是對(duì)整個(gè)數(shù)據(jù)庫(kù)實(shí)例加鎖,加鎖后整個(gè)實(shí)例就處于只讀狀態(tài),后續(xù)的DML的寫(xiě)語(yǔ)句,DDL語(yǔ)句,已經(jīng)更新操作的事務(wù)提交語(yǔ)句都將被阻塞。

其典型的使用場(chǎng)景是做全庫(kù)的邏輯備份,對(duì)所有的表進(jìn)行鎖定,從而獲取一致性視圖,保證數(shù)據(jù)的完整性。

在這里插入圖片描述
在這里插入圖片描述

  • 加入了全局鎖之后,只能讀,不能修改數(shù)據(jù)

  • 加全局鎖

    flush tables with read lock;
    
  • 備份數(shù)據(jù)

    mysqldump -h指定主機(jī)地址 -uroot -p密碼 需要備份的數(shù)據(jù)庫(kù) > 需要備份到的SQL文件;
    
  • 解鎖

    unlock tables;
    

1.2.2、一致性數(shù)據(jù)備份

  • 特點(diǎn)

數(shù)據(jù)庫(kù)中加全局鎖,是一個(gè)比較重的操作,存在以下問(wèn)題:

  1. 如果在主庫(kù)上備份,那么在備份期間都不能執(zhí)行更新,業(yè)務(wù)基本上就得停擺。
  2. 如果在從庫(kù)上備份,那么在備份期間從庫(kù)不能執(zhí)行主庫(kù)同步過(guò)來(lái)的二進(jìn)制日志(binlog),會(huì)導(dǎo)致主從延遲。

在InnoDB引擎中,我們可以在備份時(shí)加上參數(shù)--single-transaction參數(shù)來(lái)完成不加鎖的一致性數(shù)據(jù)備份。

mysqldump --single-transaction -uroot-p密碼 需要備份的數(shù)據(jù)庫(kù) > 需要備份到的SQL文件;

1.3、表級(jí)鎖

表級(jí)鎖,每次操作鎖住整張表。鎖定粒度大,發(fā)生鎖沖突的概率最高,并發(fā)度最低。應(yīng)用在MyISAM、InnoDB、BDB等存儲(chǔ)引擎中。

對(duì)于表級(jí)鎖,主要分為以下三類(lèi):

  1. 表鎖
  2. 元數(shù)據(jù)鎖( meta data lock,MDL)
  3. 意向鎖

1.3.1、表鎖

對(duì)于表鎖,分為兩類(lèi):

  1. 表共享讀鎖( read lock )
  2. 表獨(dú)占寫(xiě)鎖( write lock )

語(yǔ)法:

  1. 加鎖:lock tables 表名... read/write。
  2. 釋放鎖:unlock tables/ 客戶(hù)端斷開(kāi)連接。
  • 讀鎖
    在這里插入圖片描述

  • 寫(xiě)鎖在這里插入圖片描述
    讀鎖不會(huì)阻塞其他客戶(hù)端的讀,但是會(huì)阻塞寫(xiě)。寫(xiě)鎖既會(huì)阻塞其他客戶(hù)端的讀,又會(huì)阻塞其他客戶(hù)端的寫(xiě)。

1.3.2、元數(shù)據(jù)鎖(meta data lock , MDL)

MDL加鎖過(guò)程是系統(tǒng)自動(dòng)控制,無(wú)需顯式使用,在訪(fǎng)問(wèn)一張表的時(shí)候會(huì)自動(dòng)加上。MDL鎖主要作用是維護(hù)表元數(shù)據(jù)的數(shù)據(jù)一致性,在表上有活動(dòng)事務(wù)的時(shí)候,不可以對(duì)元數(shù)據(jù)進(jìn)行寫(xiě)入操作。為了避免DML與DDL沖突,保證讀寫(xiě)的正確性。

在MySQL5.5中引入了MDL,當(dāng)對(duì)一張表進(jìn)行增刪改查的時(shí)候,加MDL讀鎖(共享);當(dāng)對(duì)表結(jié)構(gòu)進(jìn)行變更操作的時(shí)候,加MDL寫(xiě)鎖(排他)。

對(duì)應(yīng)SQL鎖類(lèi)型說(shuō)明
lock tables xxx read / writeSHARED_READ_ONLY / SHARED_NO_READ_WRITE
select 、select … lock in share modeSHARED_READ與SHARED_READ、SHARED_WRITE兼容,與EXCLUSIVE互斥
insert 、update、delete、select … for updateSHARED_WRITE與SHARED_READ、SHARED_WRITE兼容,與EXCLUSIVE互斥
alter table …EXCLUSIVE與其他的MDL都互斥

查看元數(shù)據(jù)鎖:

select object type,object_ schema,object_ name,lock_type,lock_duration from performance schema.metadata_locks;

1.3.3、意向鎖

  1. 意向共享鎖(IS):由語(yǔ)句select...lock in share mode 添加
    表鎖共享鎖(read)兼容,與表鎖排它鎖(write)互斥
  2. 意向排他鎖(IX):由insert、 update、delete.select ... for update添加。
    表鎖共享鎖(read)及排它鎖(write)都互斥。意向鎖之間不會(huì)互斥。
select object_schema,object_name,index_name,lock_type,lock_mode,lock_data from performance_schema.data_locks;

1.4、行級(jí)鎖

1.4.1、介紹

行級(jí)鎖,每次操作鎖住對(duì)應(yīng)的行數(shù)據(jù)。鎖定粒度最小,發(fā)生鎖沖突的概率最低,并發(fā)度最高。應(yīng)用在InnoDB存儲(chǔ)引擎中。

InnoDB的數(shù)據(jù)是基于索引組織的,行鎖是通過(guò)對(duì)索引上的索引項(xiàng)加鎖來(lái)實(shí)現(xiàn)的,而不是對(duì)記錄加的鎖。對(duì)于行級(jí)鎖,主要分為以下三類(lèi):

  1. 行鎖(Record Lock)︰鎖定單個(gè)行記錄的鎖,防止其他事務(wù)對(duì)此行進(jìn)行update和delete。在RC、RR隔離級(jí)別下都支持。
    在這里插入圖片描述
  2. 間隙鎖(Gap Lock)∶鎖定索引記錄間隙(不含該記錄),確保索引記錄間隙不變,防止其他事務(wù)在這個(gè)間隙進(jìn)行insert,產(chǎn)生幻讀。在RRA隔離級(jí)別下都支持。
    在這里插入圖片描述
  3. 臨鍵鎖(Next-Key Lock)∶行鎖和間隙鎖組合,同時(shí)鎖住數(shù)據(jù),并鎖住數(shù)據(jù)前面的間隙Gap。在RR隔離級(jí)別下支持。
    在這里插入圖片描述

1.4.2、行鎖

lnnoDB實(shí)現(xiàn)了以下兩種類(lèi)型的行鎖:

  1. 共享鎖(S)︰允許一個(gè)事務(wù)去讀一行,阻止其他事務(wù)獲得相同數(shù)據(jù)集的排它鎖。
  2. 排他鎖(X)∶允許獲取排他鎖的事務(wù)更新數(shù)據(jù),阻止其他事務(wù)獲得相同數(shù)據(jù)集的共享鎖和排他鎖。
S(共享鎖)X(排他鎖)
S(共享鎖)兼容沖突
X(排他鎖)沖突沖突
SQL行鎖類(lèi)型說(shuō)明
INSERT …排他鎖自動(dòng)加鎖
UPDATE…排他鎖自動(dòng)加鎖
DELETE …排他鎖自動(dòng)加鎖
SELECT(正常)不加任何鎖
SELECT …LOCK IN SHARE MODE共享鎖需要手動(dòng)在SELECT之后加LOCK IN SHARE MODE
SELECT … FOR UPDATE排他鎖需要手動(dòng)在SELECT之后加FOR UPDATE

默認(rèn)情況下,InnoDB在REPEATABLE READ事務(wù)隔離級(jí)別運(yùn)行,InnoDB使用next-key鎖進(jìn)行搜索和索引掃描,以防止幻讀。

  1. 針對(duì)唯一索引進(jìn)行檢索時(shí),對(duì)已存在的記錄進(jìn)行等值匹配時(shí),將會(huì)自動(dòng)優(yōu)化為行鎖。
  2. InnoDB的行鎖是針對(duì)于索引加的鎖,不通過(guò)索引條件檢索數(shù)據(jù),那么InnoDB將對(duì)表中的所有記錄加鎖,此時(shí)就會(huì)升級(jí)為表鎖。

可以通過(guò)以下SQL,查看意向鎖及行鎖的加鎖情況:

select object_schema,object_name,index_name,ock_type.lock mode,lock data from performance_schema.data_locks;

1.4.3、間隙鎖/臨建鎖

默認(rèn)情況下,InnoDB在 REPEATABLE READ事務(wù)隔離級(jí)別運(yùn)行,InnoDB使用next-key鎖進(jìn)行搜索和索引掃描,以防止幻讀。

  1. 索引上的等值查詢(xún)(唯一索引),給不存在的記錄加鎖時(shí),優(yōu)化為間隙鎖。
  2. 索引上的等值查詢(xún)(普通索引),向右遍歷時(shí)最后一個(gè)值不滿(mǎn)足查詢(xún)需求時(shí),next-key lock退化為間隙鎖。
  3. 索引上的范圍查詢(xún)(唯一索引)–會(huì)訪(fǎng)問(wèn)到不滿(mǎn)足條件的第一個(gè)值為止。

注意:間隙鎖唯一目的是防止其他事務(wù)插入間隙。間隙鎖可以共存,一個(gè)事務(wù)采用的間隙鎖不會(huì)阻止另一個(gè)事務(wù)在同一間隙上采用間隙鎖。

在這里插入圖片描述

二、InnoDB引擎

2.1、邏輯存儲(chǔ)結(jié)構(gòu)

在這里插入圖片描述

2.2、架構(gòu)

MySQL5.5版本開(kāi)始,默認(rèn)使用InnoDB存儲(chǔ)引擎,它擅長(zhǎng)事務(wù)處理,具有崩潰恢復(fù)特性,在日常開(kāi)發(fā)中使用非常廣泛。下面是/nnoDB架構(gòu)圖,左側(cè)為內(nèi)存結(jié)構(gòu),右側(cè)為磁盤(pán)結(jié)構(gòu)。

在這里插入圖片描述

2.2.1、內(nèi)存架構(gòu)

  • Buffer Pool 緩沖池

在這里插入圖片描述

  • Change Buffer 更改緩沖區(qū)

在這里插入圖片描述

  • 自適應(yīng)Hash

在這里插入圖片描述

  • 日志緩沖區(qū)

在這里插入圖片描述

2.2.2、磁盤(pán)結(jié)構(gòu)

  • 系統(tǒng)表空間 獨(dú)立表空間

在這里插入圖片描述

  • 通用表空間 撤銷(xiāo)表空間 臨時(shí)表空間

在這里插入圖片描述

  • 雙寫(xiě)緩沖區(qū) 重做日志

在這里插入圖片描述

2.2.3、后臺(tái)線(xiàn)程

在這里插入圖片描述

  1. Master Thread

核心后臺(tái)線(xiàn)程,負(fù)責(zé)調(diào)度其他線(xiàn)程,還負(fù)責(zé)將緩沖池中的數(shù)據(jù)異步刷新到磁盤(pán)中,保持?jǐn)?shù)據(jù)的一致性,還包括臟頁(yè)的刷新、合并插入緩存、undo頁(yè)的回收。

  1. IO Thread

在InnoDB存儲(chǔ)引擎中大量使用了AIO來(lái)處理O請(qǐng)求,這樣可以極大地提高數(shù)據(jù)庫(kù)的性能,而IOThread主要負(fù)責(zé)這些lO請(qǐng)求的回調(diào)。

線(xiàn)程類(lèi)型默認(rèn)個(gè)數(shù)職責(zé)
Read thread4負(fù)責(zé)讀操作
Write thread4負(fù)責(zé)寫(xiě)操作
Log thread1負(fù)責(zé)將日志緩沖區(qū)刷新到磁盤(pán)
Insert buffer thread1負(fù)責(zé)將寫(xiě)緩沖區(qū)內(nèi)容刷新到磁盤(pán)
  1. Purge Thread

主要用于回收事務(wù)已經(jīng)提交了的undo log,在事務(wù)提交之后,undo log可能不用了,就用它來(lái)回收。

  1. Page Cleaner Thread

協(xié)助Master Thread 刷新臟頁(yè)到磁盤(pán)的線(xiàn)程,它可以減輕Master Thread的工作壓力,減少阻塞。

2.3、事務(wù)原理

2.3.1、概述

事務(wù)是一組操作的集合,它是一個(gè)不可分割的工作單位,事務(wù)會(huì)把所有的操作作為一個(gè)整體一起向系統(tǒng)提交或撤銷(xiāo)操作請(qǐng)求,即這些操作要么同時(shí)成功,要么同時(shí)失敗。

特性:

  • 原子性(Atomicity):事務(wù)是不可分割的最小操作單元,要么全部成功,要么全部失敗。
  • 一致性(Consistency):事務(wù)完成時(shí),必須使所有的數(shù)據(jù)都保持一致?tīng)顟B(tài)。
  • 隔離性(lsolation)∶數(shù)據(jù)庫(kù)系統(tǒng)提供的隔離機(jī)制,保證事務(wù)在不受外部并發(fā)操作影響的獨(dú)立環(huán)境下運(yùn)行。
  • 持久性(Durability):事務(wù)一旦提交或回滾,它對(duì)數(shù)據(jù)庫(kù)中的數(shù)據(jù)的改變就是永久的。

在這里插入圖片描述

2.3.2、redo log

重做日志,記錄的是事務(wù)提交時(shí)數(shù)據(jù)頁(yè)的物理修改,是用來(lái)實(shí)現(xiàn)事務(wù)的持久性。

該日志文件由兩部分組成:重做日志緩沖(redo log buffer)以及重做日志文件(redo log file) ,前者是在內(nèi)存中,后者在磁盤(pán)中。當(dāng)事務(wù)提交之后會(huì)把所有修改信息都存到該日志文件中,用于在刷新臟頁(yè)到磁盤(pán),發(fā)生錯(cuò)誤時(shí),進(jìn)行數(shù)據(jù)恢復(fù)使用。

在這里插入圖片描述

2.3.3、undo log

回滾日志,用于記錄數(shù)據(jù)被修改前的信息,作用包含兩個(gè):提供回滾和MVCC(多版本并發(fā)控制)。
undo logredo log記錄物理日志不一樣,它是邏輯日志??梢哉J(rèn)為當(dāng)delete一條記錄時(shí),undo log中會(huì)記錄一條對(duì)應(yīng)的insert記錄,反之亦然,當(dāng)update一條記錄時(shí),它記錄一條對(duì)應(yīng)相反的update記錄。當(dāng)執(zhí)行rollback時(shí),就可以從undo log中的邏輯記錄讀取到相應(yīng)的內(nèi)容并進(jìn)行回滾。

Undo log銷(xiāo)毀: undo log在事務(wù)執(zhí)行時(shí)產(chǎn)生,事務(wù)提交時(shí),并不會(huì)立即刪除undo log,因?yàn)檫@些日志可能還用于MVCC。

Undo log存儲(chǔ): undo log采用段的方式進(jìn)行管理和記錄,存放在前面介紹的rollback segment 回滾段中,內(nèi)部包含1024個(gè)undo logsegment。

2.4、MVCC

2.4.1、基本概念

  • 當(dāng)前讀

讀取的是記錄的最新版本,讀取時(shí)還要保證其他并發(fā)事務(wù)不能修改當(dāng)前記錄,會(huì)對(duì)讀取的記錄進(jìn)行加鎖。對(duì)于我們?nèi)粘5牟僮?#xff0c;如:select...lock in share mode(共享鎖), select ... for update、update、insert、delete(排他鎖)都是一種當(dāng)前讀。

  • 快照讀

簡(jiǎn)單的select(不加鎖)就是快照讀,快照讀,讀取的是記錄數(shù)據(jù)的可見(jiàn)版本,有可能是歷史數(shù)據(jù),不加鎖,是非阻塞讀。

  • Read Committed:每次select,都生成一個(gè)快照讀。

  • Repeatable Read:開(kāi)啟事務(wù)后第一個(gè)select語(yǔ)句才是快照讀的地方。

  • Serializable:快照讀會(huì)退化為當(dāng)前讀。

  • MVCC

全稱(chēng)Multi-Version Concurrency Control,多版本并發(fā)控制。指維護(hù)一個(gè)數(shù)據(jù)的多個(gè)版本,使得讀寫(xiě)操作沒(méi)有沖突,快照讀為MysQL實(shí)現(xiàn)MVCC提供了一個(gè)非阻塞讀功能。MVCC的具體實(shí)現(xiàn),還需要依賴(lài)于數(shù)據(jù)庫(kù)記錄中的三個(gè)隱式字段、undo log日志、readView。

2.4.2、隱式字段

  • 記錄中的隱式字段

在這里插入圖片描述

隱藏字段含義
DB_TRX_ID最近修改事務(wù)ID,記錄插入這條記錄或最后一次修改該記錄的事務(wù)ID。
DB_ROLL_PTR回滾指針,指向這條記錄的上一個(gè)版本,用于配合undo log,指向上一個(gè)版本。
DB_ROW_ID隱藏主鍵,如果表結(jié)構(gòu)沒(méi)有指定主鍵,將會(huì)生成該隱藏字段。

2.4.3、undo log日志

回滾日志,在insert update.delete的時(shí)候產(chǎn)生的便于數(shù)據(jù)回滾的日志。

當(dāng)insert的時(shí)候,產(chǎn)生的undo log日志只在回滾時(shí)需要,在事務(wù)提交后,可被立即刪除。

而update、delete的時(shí)候,產(chǎn)生的undo log日志不僅在回滾時(shí)需要,在快照讀時(shí)也需要,不會(huì)立即被刪除。

  • undo log 版本鏈

在這里插入圖片描述
不同事務(wù)或相同事務(wù)對(duì)同一條記錄進(jìn)行修改,會(huì)導(dǎo)致該記錄的undolog生成一條記錄版本鏈表,鏈表的頭部是最新的舊記錄,鏈表尾部是最早的舊記錄。

2.4.4、readView

ReadView(讀視圖)是 快照讀 SQL執(zhí)行時(shí)MVCC提取數(shù)據(jù)的依據(jù),記錄并維護(hù)系統(tǒng)當(dāng)前活躍的事務(wù)(未提交的) id。
ReadView中包含了四個(gè)核心字段:

字段含義
m_ids當(dāng)前活躍的事務(wù)ID集合
min_trx_id最小活躍事務(wù)ID
max_trx_id預(yù)分配事務(wù)ID,當(dāng)前最大事務(wù)ID+1(因?yàn)槭聞?wù)ID是自增的)
creator_trx_idReadView創(chuàng)建者的事務(wù)ID

在這里插入圖片描述

不同的隔離級(jí)別,生成ReadView的時(shí)機(jī)體不同:

  • READ COMMITTED∶在事務(wù)中每一次執(zhí)行快照讀時(shí)生成ReadView。
  • REPEATABLE READ:僅在事務(wù)中第一次執(zhí)行快照讀時(shí)生成ReadView,后續(xù)復(fù)用該ReadView。

2.4.5、原理分析(RC級(jí)別)

RC隔離級(jí)別下,在事務(wù)中每一次執(zhí)行快照讀時(shí)生成ReadView。
在這里插入圖片描述

2.4.6、原理分析(RR級(jí)別)

  • RR隔離級(jí)別下,僅在事務(wù)中第一次執(zhí)行快照讀時(shí)生成ReadView,后續(xù)復(fù)用該ReadView。

在這里插入圖片描述
在這里插入圖片描述

在這里插入圖片描述

三、MySQL管理

3.1、系統(tǒng)數(shù)據(jù)庫(kù)介紹

Mysql數(shù)據(jù)庫(kù)安裝完成后,自帶了一下四個(gè)數(shù)據(jù)庫(kù),具體作用如下:

數(shù)據(jù)庫(kù)含義
mysql存儲(chǔ)MySQL服務(wù)器正常運(yùn)行所需要的各種信息(時(shí)區(qū)、主從、用戶(hù)、權(quán)限等)
information_schema提供了訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)元數(shù)據(jù)的各種表和視圖,包含數(shù)據(jù)庫(kù)、表、字段類(lèi)型及訪(fǎng)問(wèn)權(quán)限等
performance_schema為MySQL服務(wù)器運(yùn)行時(shí)狀態(tài)提供了一個(gè)底層監(jiān)控功能,主要用于收集數(shù)據(jù)庫(kù)服務(wù)器性能參數(shù)
sys包含了一系列方便DBA和開(kāi)發(fā)人員利用performance_schema性能數(shù)據(jù)庫(kù)進(jìn)行性能調(diào)優(yōu)和診斷的視圖

3.2、常用工具

3.2.1、mysql

該mysql不是指mysql服務(wù),而是指mysql的客戶(hù)端工具。

語(yǔ)法:mysql [options] [database]
選項(xiàng):-U, --user=name 		#指定用戶(hù)名-p,--password[=name]    #指定密碼-h, --host=name			#指定服務(wù)器IP或域名-P, --port=port		    #指定連接端口-e,--execute=name		#執(zhí)行SQL語(yǔ)句并退出

-e選項(xiàng)可以在Mysql客戶(hù)端執(zhí)行SQL語(yǔ)句,而不用連接到MySQL數(shù)據(jù)庫(kù)再執(zhí)行,對(duì)于一些批處理腳本,這種方式尤其方便。

示例:mysql-uroot -p123456 db01 -e "select * from stu";

3.2.2、mysqladmin

mysqladmin是一個(gè)執(zhí)行管理操作的客戶(hù)端程序??梢杂盟鼇?lái)檢查服務(wù)器的配置和當(dāng)前狀態(tài)
創(chuàng)建并刪除數(shù)據(jù)庫(kù)等。

指令

mysqladmin --help

在這里插入圖片描述

3.2.3、mysqlbinlog

由于服務(wù)器生成的二進(jìn)制日志文件以二進(jìn)制格式保存,所以如果想要檢查這些文本的文本格式,就會(huì)使用到mysqlbinlog日志管理工具。

語(yǔ)法:mysqlbinlog [options] log-files1 log-files2 ...
選項(xiàng):-d, --database=name			指定數(shù)據(jù)庫(kù)名稱(chēng),只列出指定的數(shù)據(jù)庫(kù)相關(guān)操作。-O, --offset=#				忽略掉日志中的前n行命令。-r, --result-file=name		將輸出的文本格式日志輸出到指定文件。-s, --short-form			顯示簡(jiǎn)單格式,省略掉一些信息。--start-datatime=date1 --stop-datetime=date2	指定日期間隔內(nèi)的所有日志。--start-position=pos1 --stop-position=pos2		指定位置間隔內(nèi)的所有日志。

3.2.4、mysqlshow

mysqlshow客戶(hù)端對(duì)象查找工具,用來(lái)很快地查找存在哪些數(shù)據(jù)庫(kù)、數(shù)據(jù)庫(kù)中的表、表中的列或者索引。

語(yǔ)法:mysqlshow [options] [db_name [table_name [col_name]
選項(xiàng):--count		顯示數(shù)據(jù)庫(kù)及表的統(tǒng)計(jì)信息(數(shù)據(jù)庫(kù),表均可以不指定)-i			顯示指定數(shù)據(jù)庫(kù)或者指定表的狀態(tài)信息
示例:#查詢(xún)每個(gè)數(shù)據(jù)庫(kù)的表的數(shù)量及表中記錄的數(shù)量mysqlshow-uroot-p2143 --count#查詢(xún)test庫(kù)中每個(gè)表中的字段書(shū),及行數(shù)mysqlshow-uroot-p2143 test --count#!查詢(xún)test庫(kù)中book表的詳細(xì)情況mysqlshow-uroot-p2143 test book --count

3.2.5、mysqldump

mysqldump客戶(hù)端工具用來(lái)備份數(shù)據(jù)庫(kù)或在不同數(shù)據(jù)庫(kù)之間進(jìn)行數(shù)據(jù)遷移。備份內(nèi)容包含創(chuàng)建表,及插入表的SQL語(yǔ)句。

語(yǔ)法:mysqldump [options] db_name [tables]mysqldump [options] --database/-B db1 [db2 db3..]mysqldump [options] --all-databases/-A
連接選項(xiàng):-u, --USer=name				指定用戶(hù)名-p,--password[=name]		指定密碼-h, --host=name				指定服務(wù)器ip或域名-P, --port=#				指定連接端口
輸出選項(xiàng):--add-drop-database			在每個(gè)數(shù)據(jù)庫(kù)創(chuàng)建語(yǔ)句前加上drop database語(yǔ)句--add-drop-table			在每個(gè)表創(chuàng)建語(yǔ)句前加上 drop table語(yǔ)句,默認(rèn)開(kāi)啟;不開(kāi)啟(--skip-add-drop-table)-n, --no-create-db			不包含數(shù)據(jù)庫(kù)的創(chuàng)建語(yǔ)句-t, --no-create-info		不包含數(shù)據(jù)表的創(chuàng)建語(yǔ)句-d --no-data				不包含數(shù)據(jù)-T, --tab=name				自動(dòng)生成兩個(gè)文件:一個(gè).sql文件,創(chuàng)建表結(jié)構(gòu)的語(yǔ)句;一個(gè).txt文件,數(shù)據(jù)文件
  • 使用-T指令需要生成到其信任的路徑下

在這里插入圖片描述

3.2.6、mysqlimport/source

mysqlimport是客戶(hù)端數(shù)據(jù)導(dǎo)入工具,用來(lái)導(dǎo)入mysqldump加-T參數(shù)后導(dǎo)出的文本文件。

  • 需要在其信任的路徑下進(jìn)行導(dǎo)入
語(yǔ)法:mysqlimport [options] db_name textfile1 [textfile2...]
示例:mysqlimport-uroot-p2143 test /tmp/city.bxt

如果需要導(dǎo)入sql文件,可以使用mysql中的source指令:

語(yǔ)法:source /root/xooox.sql

在這里插入圖片描述

http://www.risenshineclean.com/news/47563.html

相關(guān)文章:

  • 廣州商城建網(wǎng)站渠道搜索排名優(yōu)化軟件
  • ecshop網(wǎng)站模板手機(jī)優(yōu)化大師
  • 做100個(gè)網(wǎng)站關(guān)鍵詞優(yōu)化軟件有哪些
  • 魔方網(wǎng)站建設(shè)網(wǎng)站制作網(wǎng)站關(guān)鍵詞優(yōu)化報(bào)價(jià)
  • 現(xiàn)在建網(wǎng)站seo關(guān)鍵詞優(yōu)化排名外包
  • 商城網(wǎng)站建設(shè)經(jīng)驗(yàn)seo工具軟件
  • 網(wǎng)站建設(shè)第一步怎么弄win7優(yōu)化大師官網(wǎng)
  • 深圳網(wǎng)站建設(shè)制作公司排名國(guó)際新聞?lì)^條
  • 衢州市住房建設(shè)局 網(wǎng)站網(wǎng)站制作哪家公司好
  • 廊坊網(wǎng)站制作套餐廈門(mén)人才網(wǎng)唯一官網(wǎng)招聘
  • 淘寶網(wǎng)站那個(gè)做的百度明星人氣榜
  • ppt做書(shū)模板下載網(wǎng)站有哪些百度關(guān)鍵詞分析工具
  • 轉(zhuǎn)運(yùn)公司網(wǎng)站建設(shè)服務(wù)推廣軟文
  • 微信微博網(wǎng)站建設(shè)英文外鏈代發(fā)
  • 長(zhǎng)沙百度開(kāi)戶(hù)seo常見(jiàn)優(yōu)化技術(shù)
  • 公司網(wǎng)站搜索不到外鏈怎么打開(kāi)
  • 國(guó)外網(wǎng)購(gòu)網(wǎng)站seo優(yōu)化服務(wù)
  • 大型免費(fèi)網(wǎng)站制作網(wǎng)絡(luò)優(yōu)化主要做什么
  • 藍(lán)科企業(yè)網(wǎng)站系統(tǒng)b2b多平臺(tái)一鍵發(fā)布
  • 網(wǎng)站的欄目設(shè)置進(jìn)入百度app查看
  • 專(zhuān)業(yè)鄭州做網(wǎng)站的公司2023最近的新聞大事10條
  • 家具網(wǎng)站的建設(shè)北京網(wǎng)站優(yōu)化技術(shù)
  • it初學(xué)者做網(wǎng)站最近的新聞?dòng)心男?/a>
  • 鹽津鋪?zhàn)泳W(wǎng)絡(luò)營(yíng)銷(xiāo)推廣方法搜索引擎優(yōu)化seo論文
  • 怎樣建網(wǎng)站步驟奶茶店推廣軟文500字
  • 大良商城網(wǎng)站建設(shè)b站推廣在哪里
  • 重慶建站網(wǎng)站企業(yè)培訓(xùn)機(jī)構(gòu)管理系統(tǒng)
  • iis 添加網(wǎng)站 win7種子搜索神器
  • 怎么做網(wǎng)站點(diǎn)擊率監(jiān)控工具國(guó)內(nèi)seo做最好的公司
  • 大安網(wǎng)站建設(shè)網(wǎng)站制作公司有哪些