windows上备份mysql数据库
方案一:采用mysql自带的工具mysqldump。
脚本文件backup.bat如下:
set "YMD=%date:~,4%%date:~5,2%%date:~8,2%"
cd /d C:\Program Files\MySQL\MySQL Server 5.7\bin
mysqldump --no-defaults -uroot -p"501501" sdxs > E:/databaseBackupData/sdxs/sdxs_%YMD%.sql
解释如下:
1、set "YMD=%date:~,4%%date:~5,2%%date:~8,2%" 表示给变量YMD赋值为执行该脚本时的年月日,比如为20180505。
2、cd /d C:\Program Files\MySQL\MySQL Server 5.7\bin 表示切换cmd目录到C:\Program Files\MySQL\MySQL Server 5.7\bin中。特别注意 /d 必须加上。否则失败。
3、mysqldump --no-defaults -uroot -p"501501" sdxs > E:/databaseBackupData/sdxs/sdxs_%YMD%.sql
表示执行mysqldump 命令。--no-defaults 的作用主要是解决执行该命令出现error的--no-beep。即如下图错误。
4、完整的mysqldump命令表示如下:
mysqldump --no-defaults
--host=120.120.120.120
--port=3306
--user=root
--password=501501
--events
--routines
--triggers
--flush-logs
--add-drop-database
--add-drop-table
--add-locks
--complete-insert
--default-character-set=utf8
(--lock-all-tables) 一般不用
--log-error=E:/databaseBackupData/sdxs/sdxs_%YMD%.err
(--no-data) 一般不用
--single-transaction
--master-data=2
--databases sdxs
> E:/databaseBackupData/sdxs/sdxs_%YMD%.sql
如果添加 --no-data 选项,则只备份结构不会备份数据。
--host=127.0.0.1 用于指定mysql数据库所在的ip地址,这里指定为本地的ip 。因此可以远程备份,异地备份,该选项用于指定备份哪一台机器上的mysql数据库。
--port=3306 用于指mysql定数据库服务使用的端口,这里指定为3306端口 。
--databases 数据库A,数据库B,数据库C等,用于指定备份指定mysql服务器的哪些数据库。如果备份这台mysql服务器上的所有的数据库的所有表,则用 --all-databases 选项,真正在生产环境中,我们应该导出的是整个mysql服务器中的数据,而不是单个库,因此应该使用--all-databases。
--user="igoodful" 用于指定数据库的用户名,这里指定用户名为igoodful 。
--password="123456" 表示该数据库用户的密码,这里是给igoodful用户指定的密码为123456 。
--comments="很好" 表示给备份文件添加注释。
--default-character-set=utf8 表示该数据库使用的默认字符集 。
--events 表示数据库的事件也会备份,默认不会备份事件。
--routines 表示导出存储过程以及自定义函数,默认不会备份存储过程以及自定义函数。
--triggers 表示数据库的触发器也会备份,默认会备份触发器。
--flush-logs 表示日志滚动一次,以免日志不一致。
--add-drop-database 表示每个数据库创建之前会先执行drop对应的数据库,即会在备份文件中先执行drop 对应的数据库操作。
--add-drop-table 表示每个数据表创建之前会先执行drop对应的数据表,即会在备份文件中先执行drop 对应的数据表操作。默认执行drop,可以添加--skip-add-drop-table取消drop。
--add-locks 在每个表导出之前增加LOCK TABLES并且之后UNLOCK TABLE。(默认为打开状态,使用--skip-add-locks取消选项)
--complete-insert 表示使用完整的insert语句(包含列名称)。这么做能提高插入效率,但是可能会受到max_allowed_packet参数的影响而导致插入失败。
--default-character-set=utf8 表示指定的字符集。
--lock-all-tables 表示提交请求锁定所有数据库中的所有表,以保证数据的一致性。这是一个全局读锁。与--single-transaction 互斥
--log-error=E:/databaseBackupData/sdxs/sdxs_%YMD%.err 表示附加警告和错误信息到给定文件。
--no-data 表示不导出任何数据,只导出数据库表结构。
--single-transaction 表示该选项在导出数据之前提交一个BEGIN SQL语句,BEGIN 不会阻塞任何应用程序且能保证导出时数据库的一致性状态。它只适用于多版本存储引擎,仅InnoDB。本选项和--lock-tables 选项是互斥的,因为LOCK TABLES 会使任何挂起的事务隐含提交。要想导出大表的话,应结合使用--quick 选项。该选项实现热备份。热备(hot backup):备份的同时,业务不受影响。
--master-data=2 表示mysqldump导出数据时,当这个参数的值为1的时候,mysqldump出来的文件就会包括CHANGE MASTER TO这个语句,CHANGE MASTER TO后面紧接着就是file和position的记录,在slave上导入数据时就会执行这个语句,salve就会根据指定这个文件位置从master端复制binlog。默认情况下这个值是1。当这个值是2的时候,chang master to也是会写到dump文件里面去的,但是这个语句是被注释的状态。记录备份那一时刻的二进制日志的位置。
备份到120的有:
备份到106的有:bat存放脚本文件,data存放备份的数据数据
5、备份后使用备份的sql文件时,特别注意下面的语句。会创备份的建数据库(如果不存在该库),而且使用创建的数据库来执行备份中的sql语句。
windows上备份mysql数据库的更多相关文章
- 在windows上安装MySQL数据库注意点及Navicat Premium 15的破解
在windows上安装MySQL数据库 跟随慕课网教程(http://www.imooc.com/wiki/mysqllesson/mysqlwindows.html)下载安装MySQL: 其中注意 ...
- 本地Windows上安装 MySQL数据库
1.首先下载mysql安装文件,下载地址:https://dev.mysql.com/downloads/mysql/ 2.将下载下来的压缩包解压到本地一个文件夹中 3.在文件根目录下新增my.ini ...
- Windows定时备份Mysql数据库
1.新建批处理文件bat(随意命名:如auto_backup_mysql_data.bat) 2.在批处理文件里添加如下命令 %1 mshta vbscript:createobject(" ...
- 备份MySQL数据库并上传到阿里云OSS存储
1. 环境配置 要将本地文件上传到阿里云oss中, 必须使用阿里云提供的工具 ossutil, 有32位,也有64位的, Linux和Windows都有.具体可以到阿里云官网下载 官网及文档: htt ...
- Windows系统定时备份MySQL数据库
当一个网站投入使用时,定期备份数据库是必要的事.那么,在Windows系统上,我们该如何做呢? 如下语句可以实现备份及还原MySQL数据库: 备份MySQL数据库 mysqldump -uroot - ...
- Linux下自动备份MySQL数据库并上传到远程FTP服务器
Linux下自动备份MySQL数据库并上传到远程FTP服务器且删除指定日期前的备份Shell脚本 说明: 1.备份MySQL数据库存放目录/var/lib/mysql下面的xshelldata数据库 ...
- 使用Windows任务计划程序和Python备份Mysql数据库
目标:每日定时自动备份Mysql数据库 方案: 1.安装Python: 使用的Python版本是Python3.7.1,下载地址:https://www.python.org/downloads/re ...
- 批处理命令 BAT备份MySQL数据库
批处理命令 BAT备份MySQL数据库 作者: 字体:[增加 减小] 类型:转载 时间:2009-07-23我要评论 MySQL数据的备份工具也许有很多,在这我要给大家分享一下通过DOS批处理命令和M ...
- Linux下定时备份MySQL数据库的Shell脚本
Linux下定时备份MySQL数据库的Shell脚本 对任何一个已经上线的网站站点来说,数据备份都是必须的.无论版本更新还是服务器迁移,备份数据的重要性不言而喻.人工备份数据的方式不单耗费大量时间 ...
随机推荐
- pip安装python包出现Cannot fetch index base URL http://pypi.python.org/simple/
pipinstall***安装python包,出现 Cannot fetch index base URL http://pypi.python.org/simple /错误提示或者直接安装不成功. ...
- host.conf 文件
/etc/host.conf文件的作用是设置名称解析时的先后顺序/etc/hosts文件是在使用host解析时,手动的添加的主机记录/etc/relov.conf文件中设置DNS服务器名称以及缺省的域 ...
- Egret第三方库的制作和使用(模块化 第三方库)
一.第三方库的制作 官方教程:第三方库的使用方法 水友帖子:新版本第三方库制作细节5.1.x 首先在任意需要创建第三方库的地方,右键,选择"在此处打开命令窗口" 输入egret c ...
- CMOS构成的常见电路
CMOS门电路 以MOS(Metal-Oxide Semiconductor)管作为开关元件的门电路称为MOS门电路.由于MOS型集成门电路具有制造工艺简单.集成度高.功耗小以及抗干扰能力强等优点,因 ...
- IntelliJ IDEA导出Java 可执行Jar包
extends:http://blog.sina.com.cn/s/blog_3fe961ae0102uy42.html 保证自己的Java代码是没有问题的,在IDEA里面是可以正常运行的,然后,按下 ...
- libxml2简单的生成、解析操作
3. 简单xml操作例子 link:http://www.blogjava.net/wxb_nudt/archive/2007/11/18/161340.html 了解以上基本知识之后,就可以进行一些 ...
- 拓扑_dfs——找最小环
今天在题库发现了一个wa了很久还没调过的题,这个题呢是2015年noip的day1t2,莫名感觉难度上升(其实水的一匹). 这道题输出是3,其实就是一个图中让你找最小环,尽管我不会找环,但是要是我的话 ...
- 审核被拒绝。附近??Guideline 5.1.2
5. 1.2 Legal: Privacy - Data Use and Sharing Guideline 5.1.2 - Legal - Privacy - Data Use and Sharin ...
- 2018/03/20 每日一个Linux命令 之 cp
cp 命令用于复制文件/目录 cp [-参数] [复制文件] [复制成为的新文件] 参数(这里只介绍平常会用到的,之后的话遇到再回来补充) -f 覆盖已经存在的目标文件而不给出提示. -i 与-f选项 ...
- 几个经典的css技巧
使用 line-height 垂直居中 line-height:24px; 使用固定宽度的容器并且需要一行垂直居中时,使用 line-height 即可(高度与父层容器一致),更多的垂直居中总结可以看 ...