首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> MySQL 資料庫 >> MySQL 綜合教學

MySQL 日常運維命令精華:表結構、大小、BLOB、備份、引擎切換

     編輯:MySQL 綜合教學

查看表結構三種方式

DESC table_name;
SHOW CREATE TABLE table_name;          -- 含建表語句、引擎、字符集
SELECT * FROM information_schema.COLUMNS WHERE TABLE_NAME='table_name';

數據庫/表大小統計

USE information_schema;
-- 索引大小 (MB)
SELECT CONCAT(ROUND(SUM(INDEX_LENGTH)/1024/1024,2),'MB') AS 'Index Size'
FROM TABLES WHERE TABLE_SCHEMA='db_name';

-- 數據大小 (MB)
SELECT CONCAT(ROUND(SUM(DATA_LENGTH)/1024/1024,2),'MB') AS 'Data Size'
FROM TABLES WHERE TABLE_SCHEMA='db_name';

BLOB 類型選擇與備份

類型最大長度適用場景
TinyBlob255 B極小二進制
Blob64 KB小圖標、配置
MediumBlob16 MB文檔、圖片
LongBlob4 GB大文件、視頻

備份必加參數:mysqldump --hex-blob 將二進制轉十六進制,避免特殊字符導入失敗。

備份工具選型

  • mysqldump:邏輯備份,支援所有引擎,跨版本遷移首選,單線程較慢。
  • mysqlhotcopy:僅支援 MyISAM/ISAM,文件級複製極快,InnoDB 不可用。
  • xtrabackup (Percona):InnoDB 物理熱備份,支援增量、流式、壓縮,生產環境首選。

存儲引擎查看與切換

SHOW ENGINES;                    -- 支援列表
CREATE TABLE t (id INT) ENGINE=InnoDB;
ALTER TABLE t ENGINE=MyISAM;     -- 線上轉換(鎖表,大表慎用)

彈性備份腳本範例

mysqldump -uroot -p'pass' --single-transaction --routines --triggers --events db_name | gzip > /backup/db_$(date +%w).sql.gz
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved