[MySQL Reference Manual] 24 MySQL sys框架

来源:http://www.cnblogs.com/Amaranthus/archive/2016/08/07/5747219.html
-Advertisement-
Play Games

24 MySQL sys框架 24 MySQL sys框架... 1 24.1 sys框架的前提條件... 1 24.2 使用sys框架... 2 24.3 sys框架進度報告... 3 24.4 sys框架的對象... 3 24.4.1所有sys下的對象... 3 24.4.2 sys框架的表和觸 ...


24 MySQL sys框架

24 MySQL sys框架... 1

24.1 sys框架的前提條件... 1

24.2 使用sys框架... 2

24.3 sys框架進度報告... 3

24.4 sys框架的對象... 3

24.4.1所有sys下的對象... 3

24.4.2 sys框架的表和觸發器... 8

24.4.2.1 sys_config. 8

24.4.3 性能框架視圖... 10

24.4.4 sys框架存儲過程... 13

24.4.5 sys框架存儲函數... 14

 

24.1 sys框架的前提條件

在開始使用sys框架之前,有一些前提條件,sys需要mysql 5.6或者更高版本。因為sysperformance_schema的替代方案,performance_schema必須啟動,sys才能夠使用。

為了完全訪問sys,需要有以下許可權:

·         Sys表和視圖的select許可權。

·         Sys存儲過程和函數的exec許可權。

·         Sys_config表的insertupdate許可權。

·         另外執行存儲過程需要一些其他的許可權,可以看存儲過程的描述。

其他許可權:

·         Sys框架對象訪問的任何performance_Schema的表的select許可權,和sys框架對象更新的任何表的update許可權。

·         Information_schema.innodb_buffer_pageprocess表。

特定的performance_Schema消費者和記錄點要啟動:

·         所有的等待記錄點

·         所有stage記錄點

·         所有statement記錄點

·         Xxx_currentxxx_history_long消費者相關的所有事件。

你可以使用sys下麵的存儲過程啟動所有這些選項:

CALL sys.ps_setup_enable_instrument('wait');
CALL sys.ps_setup_enable_instrument('stage');
CALL sys.ps_setup_enable_instrument('statement');
CALL sys.ps_setup_enable_consumer('current');
CALL sys.ps_setup_enable_consumer('history_long');

註意點:

       對於很多sys的使用,預設的性能框架數據收集就能夠滿足,啟動所有的記錄點和消費者會對性能有一點影響,所以最好只啟動你要的配置。通過這個函數也可以返回預設配置:

CALL sys.ps_setup_reset_to_default(TRUE);

24.2 使用sys框架

查看sys版本和mysql版本:

mysql> USE sys;

Database changed

mysql> SELECT * FROM version;

+-------------+-----------------+

| sys_version | mysql_version   |

+-------------+-----------------+

| 1.5.0       | 5.7.9-debug-log |

+-------------+-----------------+

Sys框架下包含了很多視圖合計了性能框架的表。很多這些視圖成對出現的,比如一個成員的名字和另外一個一樣,只是加了x$的首碼。比如host_summary_by_file_io有個名字一樣的x$host_summary_by_file_io2個顯示的單位不同。

mysql> SELECT * FROM host_summary_by_file_io;

+------------+-------+------------+

| host       | ios   | io_latency |

+------------+-------+------------+

| localhost  | 67570 | 5.38 s     |

| background |  3468 | 4.18 s     |

+------------+-------+------------+

 

mysql> SELECT * FROM x$host_summary_by_file_io;

+------------+-------+---------------+

| host       | ios   | io_latency    |

+------------+-------+---------------+

| localhost  | 67574 | 5380678125144 |

| background |  3474 | 4758696829416 |

+------------+-------+---------------+

沒有x$首碼的表更容易讀。帶x$和不帶x$顯示的數值是一樣大的用來用具獲取和處理這些數據。

可以使用show 語句或者information_schema的查詢獲取對象的定義比如:

mysql> SHOW CREATE VIEW session;

mysql> SHOW CREATE FUNCTION format_bytes;

mysqldumpmysqlpump預設不導出sys框架,導出sys需要顯示設置:

mysqldump --databases --routines sys > sys_dump.sql
mysqlpump sys > sys_dump.sql

導入sys結構:

mysql < sys_dump.sql

24.3 sys框架進度報告

Mysql 5.7.9,在sys下提供了長運行事務的進度報告:

Processlist
session
x$processlist
x$session

假設請求的記錄點和消費者已經啟動了,這些視圖的progress列顯示了完成的百分比。

stage進度報告要啟動events_stages_current消費者,還有一些需要啟動的記錄點信息:

stage/sql/Copying to tmp table
stage/innodb/alter table (end)
stage/innodb/alter table (flush)
stage/innodb/alter table (insert)
stage/innodb/alter table (log apply index)
stage/innodb/alter table (log apply table)
stage/innodb/alter table (merge sort)
stage/innodb/alter table (read PK
internal sort)
stage/innodb/buffer pool load

對於stage不支持簡歷和完成工作報告,如果請求記錄點和消費者沒有啟動,progress列為null

24.4 sys框架的對象

24.4.1所有sys下的對象

Table 24.1 sys Schema Tables Triggers

Table or Trigger Name

Description

sys_config

sys schema configuration options

sys_config_insert_set_user

sys_config insert trigger

sys_config_update_set_user

sys_config update trigger

 

Table 24.2 sys Schema Views

View Name

Description

host_summaryx$host_summary

Statement activity, file I/O, connections, grouped by host

host_summary_by_file_iox$host_summary_by_file_io

File I/O, grouped by host

host_summary_by_file_io_typex$host_summary_by_file_io_type

File I/O, grouped by host event type

host_summary_by_stagesx$host_summary_by_stages

Statement stages, grouped by host

host_summary_by_statement_latencyx$host_summary_by_statement_latency

Statement statistics, grouped by host

host_summary_by_statement_typex$host_summary_by_statement_type

Statements executed, grouped by host statement

innodb_buffer_stats_by_schemax$innodb_buffer_stats_by_schema

InnoDB buffer information, grouped by schema

innodb_buffer_stats_by_tablex$innodb_buffer_stats_by_table

InnoDB buffer information, grouped by schema table

innodb_lock_waitsx$innodb_lock_waits

InnoDB lock information

io_by_thread_by_latencyx$io_by_thread_by_latency

I/O consumers, grouped by thread

io_global_by_file_by_bytesx$io_global_by_file_by_bytes

Global I/O consumers, grouped by file bytes

io_global_by_file_by_latencyx$io_global_by_file_by_latency

Global I/O consumers, grouped by file latency

io_global_by_wait_by_bytesx$io_global_by_wait_by_bytes

Global I/O consumers, grouped by bytes

io_global_by_wait_by_latencyx$io_global_by_wait_by_latency

Global I/O consumers, grouped by latency

latest_file_iox$latest_file_io

Most recent I/O, grouped by file thread

memory_by_host_by_current_bytesx$memory_by_host_by_current_bytes

Memory use, grouped by host

memory_by_thread_by_current_bytesx$memory_by_thread_by_current_bytes

Memory use, grouped by thread

memory_by_user_by_current_bytesx$memory_by_user_by_current_bytes

Memory use, grouped by user

memory_global_by_current_bytesx$memory_global_by_current_bytes

您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • iOS的筆記-項目中的常見文件 新建一個項目之後,有那麼多的文件,下麵介紹一下主要的幾個。 1.文件名 (1)AppDelegate UIApplication的代理,app收到干擾的時候,進行處理系統事件。比如,來電話,記憶體警告,應用啟動。。 (2)ViewController 控制器,可以通過x ...
  • Android中圖片的左右切換隨處可見,今天我也試著查閱資料試著做了一下,挺簡單的一個小Demo,卻也發現了一些問題,話不多說,上代碼~: 只是用了一個ImageView作為顯示圖片的容器 ...
  • Swift - UITableView狀態切換效果 效果 源碼 https://github.com/YouXianMing/Swift-Animations ...
  • 1.數學函數:操作一個數據,返回一個結果 --取上限ceiling select code,name,ceiling(price) from car ; --取下限 floor select floor(price) from car --ABS 絕對值 --派 PI(),圓周率,括弧里不需要加東西 ...
  • 一、資料庫操作 create database 資料庫名稱 ——創建drop database 資料庫名稱 ——刪除use 資料庫名稱 ——使用go 兩條SQL語句之間分隔 二、表的操作 create table 表名( 列名 類型 其它,列名 id類型 其它 ) ——使用primary key — ...
  • 1.索引添加索引,設計界面,在任何一列前右鍵--索引/鍵--點擊進入添加某一列為索引 2.視圖 視圖就是我們查詢出來的虛擬表創建視圖:create view 視圖名 as SQL查詢語句,分組,排序,in 等都不能寫視圖的用法: select * from 視圖名 3.SQL編程 定義變數:decl ...
  • mysql簡介 1、什麼是資料庫 ? 資料庫(Database)是按照數據結構來組織、存儲和管理數據的倉庫,它產生於距今六十多年前,隨著信息技術和市場的發展,特別是二十世紀九十年代以後,數據管理不再僅僅是存儲和管理數據,而轉變成用戶所需要的各種數據管理的方式。資料庫有很多種類型,從最簡單的存儲有各種 ...
  • 介紹 本篇文章主要介紹搭建MMM方案以及MMM架構的原理。這裡不介紹主從、主主的搭建方法,MMM方案不適用對數據一致性要求很高的業務。 架構 部署 1.修改hosts 在所有的伺服器中執行相同的操作。 vim /etc/hosts 192.168.137.10 master 192.168.137. ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...