博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
windows下mysql备份脚本
阅读量:5979 次
发布时间:2019-06-20

本文共 2079 字,大约阅读时间需要 6 分钟。

 

公司有个需求,要每天备份下一个即时通软件的Mysql数据库,下面是我写的运行在windows下的版本文件。设置个定时任务,没事让它自己背就可以了。

D:

cd  D:\test

rem 设置变量:备份文件名

SET BAK_FILE=%date:~0,4%%date:~5,2%%date:~8,2%

rem 设置变量:日志文件名

SET LOG_FILE=MY_DBBAK.log

SET RAR_CMD="C:\Program Files\WinRAR\Rar.exe"

rem 记录日志

echo "%date%" 》 %LOG_FILE%

rem 开始做备份

mysqldump  -h localhost -u root -pmasicong --single-transaction  -databases masicong zhangwang >  %BAK_FILE%.sql

rem 压缩备份文件

%RAR_CMD% a %BAK_FILE%.rar %BAK_FILE%.sql

rem 删除源文件

del /F %BAK_FILE%.sql

PAUSE

--------------------------------------------------------------

 

备份MySQL数据库的命令

mysqldump -hhostname -uusername -ppassword databasename > backupfile.sql

备份MySQL数据库为带删除表的格式 

备份MySQL数据库为带删除表的格式,能够让该备份覆盖已有数据库而不需要手动删除原有数据库。

mysqldump -–add-drop-table -uusername -ppassword databasename > backupfile.sql

直接将MySQL数据库压缩备份

mysqldump -hhostname -uusername -ppassword databasename | gzip > backupfile.sql.gz

备份MySQL数据库某个(些)表

mysqldump -hhostname -uusername -ppassword databasename specific_table1 specific_table2 > backupfile.sql

同时备份多个MySQL数据库

mysqldump -hhostname -uusername -ppassword –databases databasename1 databasename2 databasename3 > multibackupfile.sql

仅仅备份数据库结构

mysqldump –no-data –databases databasename1 databasename2 databasename3 > structurebackupfile.sql

备份服务器上所有数据库

mysqldump –all-databases > allbackupfile.sql

还原MySQL数据库的命令

mysql -hhostname -uusername -ppassword databasename < backupfile.sql

还原压缩的MySQL数据库

gunzip < backupfile.sql.gz | mysql -uusername -ppassword databasename

将数据库转移到新服务器

mysqldump -uusername -ppassword databasename | mysql –host=*.*.*.* -C databasename
 
 
几个常用用例:

1.导出整个数据库

mysqldump -u 用户名 -p 数据库名 > 导出的文件名
mysqldump -u root -p dataname >dataname.sql 
这个时候会提示要你输入root用户名的密码,输入密码后dataname数据库就成功备份在mysql/bin/目录中.

2.导出一个表

mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名
mysqldump -u root -p dataname users> dataname_users.sql

3.导出一个数据库结构

mysqldump -u wcnc -p -d –add-drop-table smgp_apps_wcnc >d:/wcnc_db.sql 
-d 没有数据 –add-drop-table 在每个create语句之前增加一个drop table

4.导入数据库

常用source 命令
进入mysql数据库控制台,
如mysql -u root -p

mysql>use 数据库

然后使用source命令,后面参数为脚本文件(如这里用到的.sql)

mysql>source d:/wcnc_db.sql

 

 

 

转载地址:http://rtaox.baihongyu.com/

你可能感兴趣的文章
[Oracle][DataGuard]Standby数据库文件有损坏时的处理方法
查看>>
JavaScript:Array 对象
查看>>
PDFCreator:一款免费,开源的PDF(Tiff,pcx,png,jpeg,bmp,PS,EPS)打印机(VB,GPL),并提供了COM接口,方便使用各种编程语言调用...
查看>>
PostgreSQL集群方案相关索引页
查看>>
Note 1773479 - SYB: Displaying multiple triggers per object
查看>>
《Java编程思想》读书笔记(5)
查看>>
全排列
查看>>
B3log部署文档
查看>>
第 27 章 C++
查看>>
典型:Eayui项目aspx页面引用js
查看>>
Android 中文 API (22) —— MultiAutoCompleteTextView
查看>>
8.5. show mac-address-table
查看>>
10.2。PHP_CodeSniffer
查看>>
煮酒论AI,看看大牛怎么说
查看>>
利用多线程解决多业务不同定时区间歇触发问题的一种方法
查看>>
DDD~WCF做中间件,实现多个项目的缓存共享
查看>>
分布式系统的那些事儿(六) - SOA架构体系
查看>>
0-1背包-分支限界
查看>>
iOS开发之全局变量
查看>>
微信网页开发之创建Controller(三)
查看>>