🗣 Wd提问: mysql程序命令大全
🤖 Ai回答: 以下是 MySQL 常用命令的全面汇总,涵盖数据库管理、表操作、数据操作、用户权限、备份恢复等多个方面。适用于 MySQL 客户端(`mysql` 命令行工具)和 SQL 语句。
🔧 一、连接与退出 MySQL
bash
登录 MySQL(本地)
mysql -u 用户名 -p
登录指定主机和端口
mysql -h 主机地址 -P 端口 -u 用户名 -p
例如:
mysql -h 127.0.0.1 -P 3306 -u root -p
退出 MySQL
exit;
或
quit;
📁 二、数据库操作
sql
查看所有数据库
SHOW DATABASES;
创建数据库
CREATE DATABASE 数据库名;
示例:
CREATE DATABASE mydb;
创建数据库并指定字符集
CREATE DATABASE mydb CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
使用/切换数据库
USE 数据库名;
示例:
USE mydb;
查看当前使用的数据库
SELECT DATABASE();
删除数据库
DROP DATABASE 数据库名;
示例:
DROP DATABASE mydb;
修改数据库字符集
ALTER DATABASE 数据库名 CHARACTER SET utf8mb4;
📄 三、数据表操作
sql
查看当前数据库中所有表
SHOW TABLES;
查看表结构
DESC 表名;
或
DESCRIBE 表名;
或更详细信息
SHOW CREATE TABLE 表名;
创建表
CREATE TABLE 表名 (
字段1 类型 [约束],
字段2 类型 [约束],
...
);
示例:
CREATE TABLE users (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(50) NOT NULL,
email VARCHAR(100) UNIQUE,
age INT DEFAULT 0,
created_at DATETIME DEFAULT CURRENT_TIMESTAMP
);
修改表名
ALTER TABLE 旧表名 RENAME TO 新表名;
或
RENAME TABLE 旧表名 TO 新表名;
添加字段
ALTER TABLE 表名 ADD COLUMN 字段名 类型 [约束];
示例:
ALTER TABLE users ADD COLUMN phone VARCHAR(20);
修改字段类型或名称
ALTER TABLE 表名 CHANGE 旧字段名 新字段名 类型 [约束];
示例:
ALTER TABLE users CHANGE phone mobile VARCHAR(20);
修改字段类型(不改名)
ALTER TABLE 表名 MODIFY 字段名 新类型;
示例:
ALTER TABLE users MODIFY age TINYINT;
删除字段
ALTER TABLE 表名 DROP COLUMN 字段名;
示例:
ALTER TABLE users DROP COLUMN mobile;
删除表
DROP TABLE 表名;
删除多个表
DROP TABLE 表1, 表2;
清空表数据(保留结构)
TRUNCATE TABLE 表名;
💾 四、数据操作(CRUD)
1、插入数据(INSERT)
sql
插入一行
INSERT INTO 表名 (字段1, 字段2) VALUES (值1, 值2);
插入多行
INSERT INTO 表名 (字段1, 字段2) VALUES
(值1, 值2),
(值3, 值4);
插入所有字段(可省略字段名)
INSERT INTO 表名 VALUES (值1, 值2, ...);
2、查询数据(SELECT)
sql
查询所有数据
SELECT * FROM 表名;
查询指定字段
SELECT 字段1, 字段2 FROM 表名;
条件查询
SELECT * FROM 表名 WHERE 条件;
示例:
SELECT * FROM users WHERE age 18;
排序
SELECT * FROM users ORDER BY age DESC;
限制结果数量
SELECT * FROM users LIMIT 10;
分页查询(每页10条,第2页)
SELECT * FROM users LIMIT 10 OFFSET 10;
或
SELECT * FROM users LIMIT 10, 10;
去重
SELECT DISTINCT 字段 FROM 表名;
模糊查询
SELECT * FROM users WHERE name LIKE '%张%';
范围查询
SELECT * FROM users WHERE age BETWEEN 18 AND 30;
IN 查询
SELECT * FROM users WHERE id IN (1, 2, 3);
3、更新数据(UPDATE)
sql
UPDATE 表名 SET 字段1 = 值1, 字段2 = 值2 WHERE 条件;
示例:
UPDATE users SET age = 25 WHERE name = '张三';
⚠️ 注意:`UPDATE` 必须加 `WHERE`,否则会更新整张表!
4、删除数据(DELETE)
sql
DELETE FROM 表名 WHERE 条件;
示例:
DELETE FROM users WHERE age < 18;
⚠️ 注意:`DELETE` 不加 `WHERE` 会删除所有数据(但保留表结构)。
🔐 五、用户与权限管理
sql
查看所有用户
SELECT user, host FROM mysql.user;
创建用户
CREATE USER '用户名'@'主机' IDENTIFIED BY '密码';
示例:
CREATE USER 'dev'@'localhost' IDENTIFIED BY '123456';
授权
GRANT 权限 ON 数据库.表 TO '用户名'@'主机';
示例:
GRANT SELECT, INSERT ON mydb.* TO 'dev'@'localhost';
授予所有权限
GRANT ALL PRIVILEGES ON mydb.* TO 'admin'@'%';
刷新权限
FLUSH PRIVILEGES;
查看用户权限
SHOW GRANTS FOR '用户名'@'主机';
撤销权限
REVOKE 权限 ON 数据库.表 FROM '用户名'@'主机';
删除用户
DROP USER '用户名'@'主机';
🔍 六、常用查询与信息查看
sql
查看 MySQL 版本
SELECT VERSION();
查看当前用户
SELECT USER();
查看当前连接数
SHOW PROCESSLIST;
查看系统变量
SHOW VARIABLES LIKE '%key%';
查看状态信息
SHOW STATUS LIKE 'Threads_connected';
查看建表语句
SHOW CREATE TABLE users\G
查看索引
SHOW INDEX FROM 表名;
🔗 七、索引操作
sql
创建普通索引
CREATE INDEX idx_name ON 表名(字段名);
创建唯一索引
CREATE UNIQUE INDEX idx_email ON users(email);
创建复合索引
CREATE INDEX idx_name_age ON users(name, age);
删除索引
DROP INDEX 索引名 ON 表名;
🔄 八、备份与恢复
1、备份(使用 `mysqldump` 工具)
bash
备份单个数据库
mysqldump -u 用户名 -p 数据库名 备份文件.sql
示例:
mysqldump -u root -p mydb mydb_backup.sql
备份多个数据库
mysqldump -u root -p databases db1 db2 backup.sql
备份所有数据库
mysqldump -u root -p all-databases all_backup.sql
只备份结构(不包含数据)
mysqldump -u root -p -d mydb schema.sql
压缩备份
mysqldump -u root -p mydb | gzip mydb.sql.gz
2、恢复
bash
恢复数据库
mysql -u 用户名 -p 数据库名 < 备份文件.sql
示例:
mysql -u root -p mydb < mydb_backup.sql
解压并恢复
gunzip < mydb.sql.gz | mysql -u root -p mydb
🛠 九、其他实用命令
sql
查看执行时间
SET profiling = 1;
执行查询
SELECT * FROM users;
查看性能分析
SHOW PROFILES;
SHOW PROFILE FOR QUERY 1;
设置自动提交
SET autocommit = 0; 关闭自动提交
SET autocommit = 1; 开启自动提交
事务操作
START TRANSACTION;
或
BEGIN;
提交事务
COMMIT;
回滚事务
ROLLBACK;
✅ 十、常用数据类型参考
| 类型 | 说明 |
| `INT` | 整数 |
| `BIGINT` | 大整数 |
| `VARCHAR(n)` | 可变长度字符串 |
| `CHAR(n)` | 固定长度字符串 |
| `TEXT` | 长文本 |
| `DATE` | 日期(YYYY-MM-DD) |
| `DATETIME` | 日期时间 |
| `TIMESTAMP` | 时间戳 |
| `FLOAT`, `DOUBLE` | 浮点数 |
| `BOOLEAN` /
📣 商家广告 :
👍
0
👎
IP地址: 212.158.153.39
搜索次数: 0
提问时间: 2025-11-11 06:30:39
🛒 域名购买 :
sbnjt.net 8xg.net xg.gs 9-9.net 41.gold 6444.com.cn oz.gs te.biz mmmf.com.cn wddd.com.cn
❓️ 热门提问 :
VPS服务器管理攻略 推广营销展示广告 顶层域名com表明该域名属于什么机构 站群SEO网站日志性能监控工具性能优化 香港芳草地 idc机房中标结果 服务器故障诊断及排除 租用服务器推荐 适合打游戏的主机推荐 服务器什么系统 豌豆Ai站群搜索引擎系统
🌐 域名评估 :
su8.gs.cn yu8.hn.cn 6444.com.cn wushi.cn 茶狐.中国 su.hk.cn xphone.green vance.studio u.nx.cn dknp.cn
⛏ 最新挖掘 :
凯里酸汤鱼 贵阳烤脑花 都匀毛尖茶 花溪牛肉粉 贵阳烤生蚝 贵阳烤豆腐 贵阳纸包鱼 贵阳特色菜
🖌 热门作画 :
🤝 关于我们:
豌豆Ai
域名
建站
站群
留痕
推广
评估
源码
开发Ai
工具
日记
价格
加盟
广告
流量
留言
联系
🗨 加入群聊 :
🔗 友情链接 :
검색엔진
网站搜索
ai提问
🧰 站长工具 :Ai工具 whois查询 搜索
📢 温馨提示 :本站所有问答由Ai自动创作,内容仅供参考,若有误差请用“联系”里面信息通知我们人工修改或删除。
👉 技术支持 :本站由豌豆Ai 提供技术支持,使用的最新版:《豌豆Ai站群搜索引擎系统 V.25.10.25》搭建本站。