当前位置:首页 > 问答 > 正文

数据库管理 数据查询 mysql操作命令,mysql操作命令总结大全

MySQL操作命令大全:从基础查询到高效数据库管理

(2025年7月最新动态) 根据全球开发者社区调研,MySQL在关系型数据库中的使用率仍稳居前三,尤其在中小型企业和Web应用中表现突出,最新版MySQL 8.4进一步优化了查询性能,新增了窗口函数的高级支持,让数据分析更高效。

数据库管理 数据查询 mysql操作命令,mysql操作命令总结大全


MySQL基础操作命令

登录与退出

-- 登录MySQL(命令行方式)  
mysql -u 用户名 -p  
-- 退出  
exit 或 \q  

数据库管理

-- 显示所有数据库  
SHOW DATABASES;  
-- 创建数据库  
CREATE DATABASE 数据库名;  
-- 删除数据库(慎用!)  
DROP DATABASE 数据库名;  
-- 切换数据库  
USE 数据库名;  

表操作命令

表的增删改查

-- 显示当前数据库所有表  
SHOW TABLES;  
-- 创建表(示例)  
CREATE TABLE users (  
    id INT AUTO_INCREMENT PRIMARY KEY,  
    name VARCHAR(50) NOT NULL,  
    email VARCHAR(100) UNIQUE  
);  
-- 删除表  
DROP TABLE 表名;  
-- 修改表结构  
ALTER TABLE 表名 ADD COLUMN age INT;  -- 添加列  
ALTER TABLE 表名 DROP COLUMN age;    -- 删除列  

数据插入与更新

-- 插入数据  
INSERT INTO users (name, email) VALUES ('张三', 'zhangsan@example.com');  
-- 批量插入  
INSERT INTO users (name, email) VALUES  
('李四', 'lisi@example.com'),  
('王五', 'wangwu@example.com');  
-- 更新数据  
UPDATE users SET name = '张三丰' WHERE id = 1;  
-- 删除数据  
DELETE FROM users WHERE id = 2;  

数据查询进阶

基础查询

-- 查询所有数据  
SELECT * FROM users;  
-- 条件查询  
SELECT * FROM users WHERE name LIKE '张%';  -- 姓张的用户  
-- 排序与分页  
SELECT * FROM users ORDER BY id DESC LIMIT 10;  -- 最新10条记录  

多表关联查询

-- 内连接(示例)  
SELECT u.name, o.order_id  
FROM users u  
JOIN orders o ON u.id = o.user_id;  
-- 左连接(即使右表无匹配也返回左表记录)  
SELECT u.name, o.order_id  
FROM users u  
LEFT JOIN orders o ON u.id = o.user_id;  

聚合与分组

-- 统计用户数量  
SELECT COUNT(*) FROM users;  
-- 按城市分组统计  
SELECT city, COUNT(*) as user_count  
FROM users  
GROUP BY city  
HAVING user_count > 5;  -- 筛选结果  

高效管理技巧

索引优化

-- 创建索引(加速查询)  
CREATE INDEX idx_name ON users(name);  
-- 显示表索引  
SHOW INDEX FROM users;  

事务处理

-- 开启事务(保证数据一致性)  
START TRANSACTION;  
UPDATE accounts SET balance = balance - 100 WHERE user_id = 1;  
UPDATE accounts SET balance = balance + 100 WHERE user_id = 2;  
COMMIT;  -- 提交事务  
-- 出错时可执行 ROLLBACK; 回滚  

备份与恢复

# 命令行备份数据库(非SQL命令)  
mysqldump -u 用户名 -p 数据库名 > backup.sql  
# 恢复数据库  
mysql -u 用户名 -p 数据库名 < backup.sql  

常见错误解决

  1. Access Denied:检查用户名/密码,或使用 FLUSH PRIVILEGES; 刷新权限
  2. Lock Wait Timeout:长事务导致,优化事务代码或调整 innodb_lock_wait_timeout 参数
  3. Slow Queries:用 EXPLAIN 分析查询,
    EXPLAIN SELECT * FROM users WHERE name = '张三';  

:MySQL的强大在于它的简洁与高效,掌握这些核心命令后,你就能应对90%的日常数据库操作,记得定期备份数据,复杂的查询先测试再上线!

数据库管理 数据查询 mysql操作命令,mysql操作命令总结大全

(注:本文命令基于MySQL 8.4版本,部分语法可能与旧版有差异)

数据库管理 数据查询 mysql操作命令,mysql操作命令总结大全

发表评论