Mysql自动备份与还原 转
一、自动备份:将以下代码保存为*.bat批处理脚本,然后再添加Windows定时作业,如每天凌晨2点执行:
set s=%date:~0,4%%date:~5,2%%date:~8,2%%time:~1,1%%time:~3,2%%time:~6,2%
mysqldump -u root -ppassword databasename > d:\databasename_%s%_bak.sql
说明:databasename 为数据库名 password为数据库密码,系统自动以当前日期时间备份至指定目录。
a.只导出表结构:mysqldump -uroot -–no-data test > test.txt
b.只导出a表的数据: mysqldump -uroot -–no-create-info test a> test.txt
【注意】:用mysqldump,如果不加任何参数,dump出来的文件,如果存在表则会先drop table,然后再create table
,最后insert数据。所以要特别注意。可以通过添加参数去掉drop或者直接去掉create,如mysqldump –no-create-info
、mysqldump –add-drop-table=’false’ ,当然最安全最正确的做法是导入之前先检查文件,是否存在drop等命令会破坏原有表。
二、还原数据库: mysql -u root -p databasename< d:\databasename.sql
2.mysqldump
导出整个库的表结构
mysqldump -h链接名 -u用户名 -P3306 -p -d 库名 > a.sql
导出单张表的数据(包括drop、create语句)
mysqldump -h链接名 -u用户名 -P3306 -p 库名 表名 > a.sql
导出单张表的数据(只有insert语句)
mysqldump –no-create-info -h链接名 -u用户名 -P3306 -p 库名 表名 > a.sql
导出单张表的数据(条件过滤)
mysqldump –no-create-info –where=”id=1” -h链接名 -u用户名 -P3306 -p 库名 表名 > a.sql
注意:- -no-create-info 前面是两个横杠,csdn显示有问题
3.登录远程数据库
mysql -h 链接 -u登录名 -P3306 -p
4.过滤一张表的数据到另一张表
insert into tablename values (select * from tablename where condition=?)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
2014-11-05 疑难杂症