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

MySQL 命令行入門完全指南:連接、賬號、庫表操作、數據導入導出與腳本批量執行

     編輯:MySQL 資料庫相關知識

一、連接與認證

# 本地連接(默認 root 無密)
mysql -u root -p

# 遠程連接
mysql -h 110.110.110.110 -u root -pabcd123

# 退出
exit / quit

二、修改密碼

# 首次設密
mysqladmin -u root password ab12

# 修改密碼
mysqladmin -u root -pab12 password djg345

三、用戶授權體系

-- 超級用戶(任意主機)
GRANT ALL PRIVILEGES ON *.* TO 'monty'@'%' IDENTIFIED BY 'something' WITH GRANT OPTION;

-- 受限用戶(僅本地、特定庫)
GRANT SELECT,INSERT,UPDATE,DELETE ON mydb.* TO 'test2'@'localhost' IDENTIFIED BY 'abc';

-- 撤銷與刪除
REVOKE ALL PRIVILEGES ON *.* FROM 'root'@'%';
DELETE FROM mysql.user WHERE User='root' AND Host='%';
FLUSH PRIVILEGES;

四、庫表 DDL/DML 速查

操作命令
顯示庫/表SHOW DATABASES; USE db; SHOW TABLES;
表結構DESCRIBE tbl;
建庫/建表CREATE DATABASE db; CREATE TABLE t (id INT PRIMARY KEY, name VARCHAR(20));
刪庫/刪表DROP DATABASE db; DROP TABLE t;
清空表TRUNCATE TABLE t; (比 DELETE 快、不記錄 Binlog)
查詢/插入/更新/刪除SELECT * FROM t; INSERT INTO t VALUES(...); UPDATE t SET ... WHERE ...; DELETE FROM t WHERE ...;

五、實戰範例:建庫建表插入數據

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');

六、腳本批量執行

將上述 SQL 保存為 school.sql(去除註釋),命令行執行:

mysql -u root -p < c:\school.sql

無輸出 = 成功;有錯誤 = 報錯行號。

七、文本文件導入導出

  • 格式:字段間 Tab 分隔,NULL 用 \N。
  • 導入:LOAD DATA LOCAL INFILE 'file.txt' INTO TABLE t;(文件放在客戶端)。
  • 導出:SELECT * INTO OUTFILE '/server/path/t.txt' FROM t;(需 FILE 權限,路徑在服務器端)。

八、備份與還原

# 導出庫
mysqldump --opt school > school.bbb

# 導入
mysql -u root -p school < school.bbb
# 或進入客戶端
SOURCE school.bbb;

九、操作小技巧

  • 命令未輸入分號直接回車 → 提示 -> 繼續輸入,補上分號再回車即可執行。
  • 上下鍵調取歷史命令(需 Readline 支持)。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved