首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

DBA 必備:MySQL 常用操作與技巧完全手冊

     編輯:MySQL 資料庫相關知識

MySQL 是 DBA 最常打交道的資料庫之一。本文整理資深 DBA 總結的核心操作技巧,涵蓋備份恢復、連線管理、基礎命令、建庫建表實例、密碼修改、用戶授權等實戰內容,適合速查與進階。

一、MySQL 資料庫備份:文件級快速備份法

除了標準邏輯備份,MySQL 支援直接複製資料目錄進行物理備份(非官方正式驗證,生產環境請謹慎測試)。

實驗場景

  • 目的:備份 HostA 上的 TestA 資料庫,恢復至 HostB。
  • 環境:WinNT 4.0、MySQL 3.22.34、PHPMyAdmin 2.1.0。

操作步驟

  1. 啟動 PHPMyAdmin 確認 HostB 無 TestA。
  2. 定位 HostA MySQL 安裝目錄下的 data 資料夾(如 C:\MySQL\data)。
  3. 複製對應資料庫子目錄 C:\MySQL\data\TestA 至 HostB 同樣路徑。
  4. 刷新 HostB PHPMyAdmin,TestA 已出現,查詢修改正常。

結論:MySQL 可透過文件目錄直接備份恢復,無需額外工具,速度極快。

二、連線 MySQL 基礎命令

# 格式
mysql -h主機地址 -u用戶名 -p密碼

# 本機連線(無密碼)
mysql -uroot -p

# 遠端連線
mysql -h110.110.110.110 -uroot -pabcd123

# 退出
exit

三、實用操作技巧

  • 命令未加分號換行?直接補分號回車即可,支援多行輸入。
  • 善用鍵盤上下鍵調取歷史命令(舊版本可能不支援)。

四、常用顯示與 DDL 命令速查

操作命令
顯示資料庫列表SHOW DATABASES;
切換資料庫USE mysql;
顯示資料表SHOW TABLES;
顯示表結構DESCRIBE 表名;
建立資料庫CREATE DATABASE 库名;
建立資料表USE 库名; CREATE TABLE 表名 (欄位定義);
刪除資料庫/表DROP DATABASE 库名; DROP TABLE 表名;
清空表數據DELETE FROM 表名;
查詢所有記錄SELECT * FROM 表名;

五、建庫建表插入完整實例

DROP DATABASE IF EXISTS school;
CREATE DATABASE school;
USE school;

CREATE TABLE teacher (
  id INT(3) AUTO_INCREMENT NOT NULL PRIMARY KEY,
  name CHAR(10) NOT NULL,
  address VARCHAR(50) DEFAULT '深圳',
  year DATE
);

INSERT INTO teacher VALUES ('', 'glchengang', '深圳一中', '1976-10-10');
INSERT INTO teacher VALUES ('', 'jack', '深圳一中', '1975-12-23');

建議將上述命令存為 school.sql,用重導向執行:
mysql -uroot -p密碼 < c:\school.sql

六、修改 root 密碼

# 首次設密碼(root 初始無密碼)
mysqladmin -uroot -password ab12

# 修改密碼
mysqladmin -uroot -pab12 password djg345

七、新增用戶與權限控制

格式:GRANT 權限 ON 資料庫.* TO 用戶@登錄主機 IDENTIFIED BY '密碼';

案例 1:高風險帳號(任何主機可登入,全庫權限)

GRANT SELECT, INSERT, UPDATE, DELETE ON *.* TO test1@'%' IDENTIFIED BY 'abc';

風險:密碼洩露將導致全網資料庫淪陷。

案例 2:安全帳號(僅本機登入,特定庫權限)

GRANT SELECT, INSERT, UPDATE, DELETE ON mydb.* TO test2@localhost IDENTIFIED BY 'abc';

移除密碼:GRANT ... IDENTIFIED BY '';

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved