基礎資料庫操作
CREATE DATABASE db_name; -- 建立資料庫
USE db_name; -- 選擇資料庫
DROP DATABASE db_name; -- 直接刪除資料庫 (無提示)
SHOW TABLES; -- 顯示所有資料表
DESCRIBE table_name; -- 顯示資料表結構
SELECT DISTINCT column FROM table; -- 去除重複值
SELECT VERSION(), CURRENT_DATE; -- 顯示版本與目前日期
修改 root 密碼
mysql -u root -p
UPDATE user SET password=PASSWORD('new_pass') WHERE user='root';
FLUSH PRIVILEGES;
使用者授權 (GRANT)
-- 建立超級用戶 (允許任意主機連線)
GRANT ALL PRIVILEGES ON *.* TO 'user'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
-- 建立特定資料庫唯讀用戶
GRANT SELECT ON db_name.* TO 'user'@'host' IDENTIFIED BY 'password';
-- 移除授權
REVOKE ALL PRIVILEGES ON *.* FROM 'user'@'%';
DELETE FROM user WHERE user='root' AND host='%';
FLUSH PRIVILEGES;
-- 重新命名資料表
ALTER TABLE t1 RENAME t2;
mysqldump 備份與還原
# 完整備份 (含結構與資料)
mysqldump -h host -u root -p db_name > backup.sql
# 僅備份結構
mysqldump -u root -p -d db_name > structure.sql
# 僅備份資料 (INSERT 語句)
mysqldump -u root -p -t db_name > data.sql
# 還原資料庫
mysqladmin -h host -u root -p CREATE db_name
mysql -h host -u root -p db_name < backup.sql
# 匯出純文字資料 (每張表產生 .sql 與 .txt 兩檔)
mysqldump -T ./ db_name table_name
從檔案執行 SQL
mysql -h host -u root -p db_name < sql_file.sql