《MySQL必知必會》學習筆記(一):基礎查詢與常用命令
資料庫/資料表基本操作 -- 選擇資料庫 USE mysql; -- 列出所有資料庫 SHOW DATABASES; -- 列出當前資料庫所有表 SHOW
MySQL Online DDL 原理與演進:從 5.5 FIC 到 5.6 在線結構變更
為什麼需要 Online DDL? 互聯網 OLTP 業務屬高併發短事務,任何長時間鎖表操作都會導致前端大量超時。DDL(特別是大表 ALTER TABLE)鎖
MySQL Metadata Lock (MDL) 機制詳解:來源、類型、死鎖場景、監控排查與 8.0 優化新特性
Metadata Lock (MDL) 是 MySQL 5.5+ 引入的元數據鎖,保護表結構定義(Schema)在併發 DDL/DML 下不被破壞。本文深度解析
MySQL SQL Mode 完整指南:模式分類、ANSI/嚴格/傳統模式差異、異構遷移組合、數據驗證功能與生產配置建議
SQL Mode 決定 MySQL 「多嚴格地執行 SQL 標準」。本文系統梳理模式分類、常用組合、異構遷移預設組合、數據驗證功能、版本演進差異,給出生產環境配
MySQL 觸發器實現字段級防篡改:BEFORE UPDATE 鎖定核心欄位(姓名、手機、郵箱、密碼、餘額)不可修改
業務需求:某些核心欄位(實名信息、聯繫方式、密碼、賬戶餘額)一旦寫入**永不允許修改**,但允許更新其他欄位。MySQL 觸發器可在行級攔截 UPDATE,將核
MySQL 復制表結構與數據四大場景標準語法:僅結構、結構+數據、同結構數據遷移、異結構數據轉換
日常運維中頻繁需要「復制表」。本文給出四大標準場景的最簡 SQL,對比 CREATE TABLE ... LIKE、CREATE TABLE ... SELEC
MySQL Open_tables 與 Opened_tables 監控指標詳解:合理配置 table_open_cache 的科學依據
Open_tables(當前緩存打開表數)與 Opened_tables(歷史累計打開表數)是評估 table_open_cache 是否合理的核心指標。本文給
MySQL table_open_cache 參數深度解析:緩存機制、監控指標、調優公式、清空操作與生產配置建議
table_open_cache(5.1.3 前稱 table_cache)控制表定義緩存與文件描述符緩存大小,直接影響「打開表」系統調用頻率。本文詳細講解緩存
Memcached 緩存 MySQL 數據庫交互原理與緩存流程全解析:查詢、更新、新增、刪除四大操作模式
Memcached 作為 MySQL 前置緩存層,能將熱點查詢 QPS 提升 10-100 倍,降低 DB 負載 90% 以上。本文系統梳理 Memcached
MySQL max_connections 參數詳解:默認值、實際上限、調整三法、資源影響與「Too many connections」排查指南
max_connections 控制 MySQL 最大並發連接數,默認 151(5.6+),實際上限 16384。本文詳細講解參數特性、三種調整方式、資源影響模
MySQL 性能優化核心參數:thread_cache 與 table_cache(table_open_cache)原理、監控指標與調優實戰
thread_cache_size 與 table_open_cache(5.1.3 前稱 table_cache)是 MySQL 連接層與表緩存層的兩大核心參
MySQL 分表 vs 分區:實現方式、數據處理、性能提升、難易度、聯用策略深度對比
「分表」與「分區」同為解決單表過大問題的手段,但本質完全不同。本文從實現方式、數據處理、性能提升側重、實現難度、聯用策略五個維度深度對比,助你選型決策。 一、
MySQL 忘記 Root 密碼四大重置方案:SET PASSWORD、mysqladmin、UPDATE user 表、Skip-grant-tables 完整操作指南
Root 密碼遺忘是高頻運維場景。本文匯總四種重置方法,覆蓋「知舊密碼」、「不知舊密碼但能登錄」、「完全無法登錄」三大前提條件,附帶 5.7+ authenti
Linux MySQL UDF 提權實戰:利用 lib_mysqludf_sys.so 注冊 sys_eval 執行任意命令獲取 Shell
UDF(User Defined Function)允許將共享庫函數註冊為 MySQL 函數。攻擊者若擁有 INSERT 權限於 mysql.func 表且插件
MySQL 中文亂碼終極解決指南:從庫表創建、數據導入到應用連接的全鏈路 UTF-8 最佳實踐
中文亂碼 90% 源於「字符集不一致」:庫/表/連接/應用/終端任一環節編碼不統一即會產生亂碼。本文建立「全鏈路 UTF-8」標準,覆蓋創建、導入、連接、應用四
MySQL 錯誤處理:ERROR 1665 (HY000) — BINLOG_FORMAT=STATEMENT 與 READ COMMITTED 隔離級別衝突解決
InnoDB 在 READ COMMITTED 或 READ UNCOMMITTED 隔離級別下,必須使用 ROW 或 MIXED 格式的 Binlog,否則執
MySQL 自動化安裝部署方案:自建 RPM 包 + 模板化 my.cnf + 數據目錄模板 + Shell 一鍵腳本,支援百台並發部署
手動編譯安裝 MySQL 在百台級集群不可行。本文提供「自建 RPM + 模板化配置 + 數據目錄預備 + Shell 自動化」四位一體的標準化交付方案,實現從
MySQL 錯誤處理:ERROR 1786 (HY000) — ENFORCE_GTID_CONSISTENCY 禁止 CREATE TABLE ... SELECT 解決方案
啟用 GTID 一致性模式(ENFORCE_GTID_CONSISTENCY=ON)後,執行 CREATE TABLE ... SELECT 會報錯 ERROR