整理 PHP 開發中高頻使用的 MySQL 命令行與 SQL 語句,涵蓋庫/表結構管理、數據增刪改查、索引維護、服務控制,適合離線速查與面試複習。
# Windows (CMD) net stop mysql net start mysql # Linux (Systemd) systemctl start|stop|restart|status mysqld
# 登錄(記錄日誌) mysql -uroot -p123 --tee=c:\mysql.log # 庫操作 SHOW DATABASES; USE test; CREATE DATABASE txet; DROP DATABASE txet;
# 建表 CREATE TABLE user ( id INT, name VARCHAR(30), pass VARCHAR(30) ); # 查看結構 DESC user; SHOW CREATE TABLE user; # 修改表 ALTER TABLE user ADD COLUMN email VARCHAR(50); ALTER TABLE user MODIFY COLUMN name VARCHAR(40); ALTER TABLE user DROP COLUMN email; RENAME TABLE user TO user1; DROP TABLE user1;
# 查看索引 SHOW INDEX FROM t2; # 建立/刪除 CREATE INDEX idx_name ON user(name); DROP INDEX idx_name ON user;
# 插入 INSERT INTO user(id,name,pass) VALUES(1,'hello','123'); # 查詢 SELECT * FROM user; SELECT * FROM user WHERE id=1; # 更新 UPDATE user SET name='hello' WHERE id=1; # 刪除 DELETE FROM user WHERE id=1; TRUNCATE TABLE user; -- 清空表,重置自增ID,速度快
# 創建用戶並授權 CREATE USER 'dev'@'%' IDENTIFIED BY 'pass123'; GRANT SELECT,INSERT,UPDATE,DELETE ON mydb.* TO 'dev'@'%'; FLUSH PRIVILEGES;
START TRANSACTION; INSERT ...; UPDATE ...; COMMIT; -- 或 ROLLBACK;
NOW()、CURDATE()、DATE_FORMAT()CONCAT()、SUBSTRING()、REPLACE()IF()、CASE WHEN、COALESCE()COUNT()、SUM()、AVG()、MAX()/MIN()EXIT; -- 或 QUIT、Ctrl+D # 邏輯備份 mysqldump -uroot -p db_name > backup.sql