原创 巧用SQL拼接語句

前言:  在日常數據庫運維過程中,可能經常會用到各種拼接語句,巧用拼接SQL可以讓我們的工作方便很多,達到事半功倍的效果。本篇文章將會分享幾個日常會用到的SQL拼接案例,類似的SQL還可以舉一反三,探索出更多的可能性哦。 注意:適用於5.

原创 utf8字符集下的比較規則

前言:  在MySQL中,比較常用的字符集是utf8和utf8mb4。這兩個字符集是類似的,utf8是utf8mb3的別名,所以之後在MySQL中提到utf8就意味着使用1~3個字節來表示一個字符,如果大家有使用4字節編碼一個字符的情況,比

原创 關於Aborted connection告警日誌的分析

前言:  有時候,連接MySQL的會話經常會異常退出,錯誤日誌裏會看到"Got an error reading communication packets"類型的告警。本篇文章我們一起來討論下該錯誤可能的原因以及如何來規避。 1.狀態變量

原创 MySQL DDL詳情揭露

前言:  MySQL中DDL語句,即數據定義語言,用於創建、刪除、修改、庫或表結構,對數據庫或表的結構操作。常見的有create,alter,drop等。這類語句通常會耗費很大代價,特別是對於大表做表結構變更。本篇文章會揭露各類DDL語句執

原创 在線修改主從複製選項

前言:  MySQL最常用的架構就是主從複製了,其實主從複製有很多選項,特別是在從庫端,我們可以設置複製過濾,比如說忽略某張表或某個庫。這些過濾選項都是可以在線修改而不用重啓的。原來對這塊瞭解不多,最近看了下相關資料,個人覺得這個功能還是很

原创 時間戳,這樣用就對了

前言:  時間戳字段在MySQL中經常使用到,比如需要記錄一行數據創建的時間或修改的時間時,我們通常會使用時間戳即timestamp字段。本篇文章主要介紹timestamp字段的使用方法及相關參數,希望大家讀完能對timestamp有更深的

原创 MySQL數據類型DECIMAL用法

前言:  當我們需要存儲小數,並且有精度要求,比如存儲金額時,通常會考慮使用DECIMAL字段類型,可能大部分同學只是對DECIMAL類型略有了解,其中的細節還不甚清楚,本篇文章將從零開始,爲你講述DECIMAL字段類型的使用場景及方法。

原创 推薦收藏 —— MySQL視圖詳細介紹

前言:  在MySQL中,視圖可能是我們最常用的數據庫對象之一了。那麼你知道視圖和表的區別嗎?你知道創建及使用視圖要注意哪些點嗎?可能很多人對視圖只是一知半解,想詳細瞭解視圖的同學看過來喲,本篇文章會詳細介紹視圖的概念、創建及使用方法。 1

原创 深入理解MDL元數據鎖

前言:  當你在MySQL中執行一條SQL時,語句並沒有在你預期的時間內執行完成,這時候我們通常會登陸到MySQL數據庫上查看是不是出了什麼問題,通常會使用的一個命令就是 show processlist,看看有哪些session,這些se

原创 更改用戶host留下的坑

前言:  我們在創建數據庫用戶的時候都會指定host,即一個完整的用戶可描述爲 'username'@'host' 。創建用戶時不顯式指定host則默認爲%,%代表所有ip段都可以使用這個用戶,我們也可以指定host爲某個ip或ip段,這樣

原创 MySQL容器化詳細教程

前言:  上篇文章介紹了Docker工具的安裝及常用命令使用。本篇文章我們會介紹如何在Docker中運行MySQL實例,可能有的小夥伴會問:爲什麼要在Docker裏運行MySQL呢?因爲在Docker裏部署MySQL實例操作簡單,不需要考慮

原创 CHAR與VARCHAR詳解

前言:  前面寫過一篇介紹int類型的文章,一直想寫一篇介紹字符串字段類型的文章,一直拖着也沒思路要怎麼下手。最近多關注了下這方面的文章,決定還是把拖了好久的文章了結了吧。本篇文章主要會介紹字符串類型char及varchar的用法及區別。

原创 Docker入門與簡單使用

前言:  Docker 是一個開源的應用容器引擎,讓開發者可以打包他們的應用以及依賴包到一個可移植的鏡像中,然後發佈到任何流行的Linux或Windows機器上。近幾年來,Docker 在國內發展的如火如荼,特別是在互聯網公司, Docke

原创 MySQL常用函數介紹

前言:  MySQL數據庫中提供了很豐富的函數,比如我們常用的聚合函數,日期及字符串處理函數等。SELECT語句及其條件表達式都可以使用這些函數,函數可以幫助用戶更加方便的處理表中的數據,使MySQL數據庫的功能更加強大。本篇文章主要爲大家

原创 帶你認識MySQL sys schema

前言:  MySQL 5.7中引入了一個新的sys schema,sys是一個MySQL自帶的系統庫,在安裝MySQL 5.7以後的版本,使用mysqld進行初始化時,會自動創建sys庫。 sys庫裏面的表、視圖、函數、存儲過程可以使我們更