一、数据库操作
命令 | 说明 |
---|
SHOW DATABASES; | 查看所有数据库 |
CREATE DATABASE <db_name>; | 创建数据库 |
DROP DATABASE <db_name>; | 删除数据库 |
USE <db_name>; | 选择/切换数据库 |
二、表操作
命令 | 说明 |
---|
SHOW TABLES; | 查看当前数据库所有表 |
DESC <table_name>; | 查看表结构 |
CREATE TABLE <table_name> (<col1> <type>, ...); | 创建表 |
DROP TABLE <table_name>; | 删除表 |
ALTER TABLE <table_name> ADD COLUMN <col> <type>; | 添加列 |
ALTER TABLE <table_name> DROP COLUMN <col>; | 删除列 |
ALTER TABLE <table_name> RENAME TO <new_name>; | 重命名表 |
三、数据操作(CRUD)
命令 | 说明 |
---|
插入数据 | |
INSERT INTO <table> (<col1>,<col2>) VALUES (val1, val2); | 插入单行 |
INSERT INTO <table> VALUES (val1, val2, ...); | 插入所有列 |
查询数据 | |
SELECT * FROM <table>; | 查询所有数据 |
SELECT <col1>,<col2> FROM <table>; | 查询指定列 |
SELECT ... WHERE <condition>; | 条件查询(例:id=5 ) |
SELECT ... ORDER BY <col> [ASC/DESC]; | 排序结果 |
SELECT ... LIMIT <num>; | 限制返回行数 |
更新数据 | |
UPDATE <table> SET <col1>=val1, ... WHERE <condition>; | 更新数据(⚠️ 必须加条件) |
删除数据 | |
DELETE FROM <table> WHERE <condition>; | 删除数据(⚠️ 必须加条件) |
TRUNCATE TABLE <table>; | 清空表(重置自增ID) |
四、索引管理
命令 | 说明 |
---|
CREATE INDEX <idx_name> ON <table> (<col>); | 创建索引 |
SHOW INDEX FROM <table>; | 查看索引 |
DROP INDEX <idx_name> ON <table>; | 删除索引 |
五、用户与权限
命令 | 说明 |
---|
CREATE USER '<user>'@'<host>' IDENTIFIED BY '<password>'; | 创建用户 |
GRANT <privilege> ON <db>.<table> TO '<user>'@'<host>'; | 授权(例:GRANT SELECT ON db.* TO 'user'@'localhost'; ) |
REVOKE <privilege> ON <db>.<table> FROM '<user>'@'<host>'; | 撤销权限 |
SHOW GRANTS FOR '<user>'@'<host>'; | 查看用户权限 |
DROP USER '<user>'@'<host>'; | 删除用户 |
FLUSH PRIVILEGES; | 刷新权限(授权后执行) |
常用权限:SELECT
, INSERT
, UPDATE
, DELETE
, ALL PRIVILEGES
六、备份与恢复
命令 | 说明 |
---|
备份(命令行执行) | |
mysqldump -u <user> -p <db_name> > backup.sql | 备份整个数据库 |
mysqldump -u <user> -p <db_name> <table> > table.sql | 备份单张表 |
恢复 | |
mysql -u <user> -p <db_name> < backup.sql | 导入备份文件 |
七、其他实用命令
命令 | 说明 |
---|
SHOW PROCESSLIST; | 查看当前连接/进程 |
KILL <process_id>; | 终止某个查询 |
SELECT VERSION(); | 查看MySQL版本 |
SELECT NOW(); | 查看当前时间 |
\q 或 EXIT; | 退出MySQL客户端 |