MySQL删除数据库drop database注意事项 MySQL
前言
DROP DATABASE 会一次性删掉整库所有表、视图、存储过程,不可恢复,是高危操作。本文讲解命令、备份前置、误删恢复途径、权限和操作纪律。
操作步骤
1. 删除前先备份
mysqldump -uroot -p dbname > dbname_backup.sql
2. 查看将删的库是否存在
SHOW DATABASES LIKE 'dbname';
3. 删除数据库
DROP DATABASE IF EXISTS dbname;
4. 确认已删除
SHOW DATABASES;
5. 程序连接同步下线
删除前先停掉写入该库的应用,避免连接报错。
6. 误删后从备份恢复
mysql -uroot -p dbname < dbname_backup.sql
常见坑
- 不备份直接 DROP,数据无法找回,只能靠 binlog/备份。
- 库名拼错或连错实例,删到生产库。
- IF EXISTS 防报错但不防误删,别依赖它。
- 外键、定时任务、程序配置仍指向已删库。
- 大库删除瞬间释放空间,磁盘 IO 峰值。
- 高权限账号别给应用直接使用。
- 云 RDS 删除库有回收站/快照,先确认保留策略。
总结
DROP DATABASE 前必须 mysqldump 备份、停应用、核对库名和实例,删后立即确认。误删只能靠备份或 binlog 恢复。高危操作限定给管理员,应用账号禁止 DROP 权限,生产库操作走审批。
遇到问题加QQ23979811 协助处理