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

MySQL 常用操作命令完整指南:從安裝目錄到數據導入導出

     編輯:MySQL 資料庫相關知識

前言

MySQL 作為最流行的開源關係型數據庫,掌握其核心命令是開發者與運維人員的基本功。本文系統整理了 MySQL 日常操作中高頻使用的命令,涵蓋系統管理、用戶權限、數據庫與表操作、數據導入導出等核心場景,適合作為速查手冊隨時查閱。

一、MySQL 關鍵目錄結構

了解文件佈局有助於排查問題與配置優化:

  • 數據目錄:/var/lib/mysql/(存放數據文件)
  • 配置文件:/usr/share/mysql/(含 mysql.server 啟動腳本)
  • 執行命令:/usr/bin/(mysqladmin、mysqldump 等)
  • 啟動腳本:/etc/init.d/mysql

二、系統管理核心命令

1. 連接 MySQL

# 本地連接
mysql -u root -p

# 遠程連接
mysql -h 127.0.0.1 -u root -p

參數說明:-h 指定主機,-u 用戶名,-p 提示輸入密碼。

2. 修改 root 密碼

mysql -u root -p
USE mysql;
UPDATE user SET authentication_string=PASSWORD('新密碼') WHERE User='root';
FLUSH PRIVILEGES;
QUIT;

注意:MySQL 5.7+ 版本 password 欄位已改為 authentication_string。

3. 用戶授權與管理

-- 創建用戶並授權(推薦 8.0+ 語法)
CREATE USER 'test1'@'%' IDENTIFIED BY 'abc';
GRANT SELECT, INSERT, UPDATE, DELETE ON *.* TO 'test1'@'%';
FLUSH PRIVILEGES;

-- 僅允許本地訪問
GRANT SELECT, INSERT, UPDATE, DELETE ON mydb.* TO 'test2'@'localhost' IDENTIFIED BY 'abc';

-- 刪除用戶
DROP USER 'test1'@'%';

三、數據庫與表操作

1. 數據庫級命令

SHOW DATABASES;              -- 列出所有庫
CREATE DATABASE test;        -- 創建庫
USE test;                    -- 切換庫
SELECT DATABASE();           -- 查看當前庫
DROP DATABASE test;          -- 刪除庫

2. 表結構操作

-- 建表示例
CREATE TABLE MyClass (
    id INT(4) NOT NULL PRIMARY KEY AUTO_INCREMENT,
    name CHAR(20) NOT NULL,
    sex INT(4) NOT NULL DEFAULT '0',
    degree DOUBLE(16,2)
);

-- 查看結構
DESC MyClass;
SHOW COLUMNS FROM MyClass;

-- 修改表結構
ALTER TABLE MyClass ADD passtest INT(4) DEFAULT '0';  -- 增加欄位
ALTER TABLE MyClass CHANGE name new_name CHAR(30);    -- 重命名欄位
RENAME TABLE MyClass TO YouClass;                     -- 重命名表

3. 數據增刪改查 (CRUD)

-- 插入
INSERT INTO MyClass VALUES (1, 'Tom', 96.45), (2, 'Joan', 82.99);

-- 查詢
SELECT * FROM MyClass;
SELECT * FROM MyClass ORDER BY id LIMIT 0, 2;  -- 分頁

-- 更新
UPDATE MyClass SET name='Mary' WHERE id=1;

-- 刪除
DELETE FROM MyClass WHERE id=1;

四、數據遷移:mysqldump 導入導出實戰

1. 導出策略

# 導出所有庫
mysqldump -u root -p -A > all_dbs.sql

# 導出指定庫(含結構與數據)
mysqldump -u root -p mydb > mydb.sql

# 僅導出結構
mysqldump -u root -p -d mydb > mydb_struct.sql

# 僅導出數據
mysqldump -u root -p -t mydb > mydb_data.sql

# 導出存儲過程/函數/事件
mysqldump -u root -p -R -E mydb > mydb_routines.sql

2. 導入數據

# 方式一:source 命令(需先進入 mysql 客戶端)
mysql> CREATE DATABASE mydb;
mysql> USE mydb;
mysql> SOURCE /path/to/mydb.sql;

# 方式二:管道重定向
mysql -u root -p mydb < /path/to/mydb.sql

五、權限體系速查表

權限分類關鍵字說明
全局管理FILE, PROCESS, RELOAD, SHUTDOWN文件讀寫、進程查看/殺死、重載配置、關閉服務
庫/表/列級ALTER, CREATE, DELETE, DROP, INDEX, INSERT, SELECT, UPDATE結構修改、創建、刪除、索引、增刷改查
特殊權限ALL, USAGE全部權限 / 僅允許登錄

六、最佳實踐建議

  1. 最小權限原則:業務賬號僅授予必要權限,避免使用 root 直連。
  2. 定期備份:結合 --single-transaction 實現熱備份,不鎖表。
  3. 版本差異:MySQL 5.7/8.0 在密碼欄位、認證插件上有變化,命令需適配版本。
  4. 安全加固:刪除匿名用戶、禁止 root 遠程登錄、啟用 SSL 連接。

掌握上述命令組合,即可應對 90% 的 MySQL 日常運維場景。建議收藏備查,實踐中靈活組合參數以提升效率。

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