1.windows系统下备份mysql数据库,.bat代码
@echo off
set "Ymd=%date:~,4%%date:~5,2%%date:~8,2%"
C:\"Program Files"\MySQL\"MySQL Server 5.6"\bin\mysqldump --opt -u root --password=root -h127.0.0.1 yadong > D:\yadong_%Ymd%.sql
@echo on
@pause
2.代码解释
MySQL 安装位置:C:\”Program Files”\MySQL\”MySQL Server 5.6”
MySQL root 密码:root
数据库名:yadong
数据库备份目的地:D:\yadong_%Ymd%.sql
C:\"Program Files"\MySQL\"MySQL Server 5.6"\bin\mysqldump --opt -u root --password=root yadong > D:\yadong_%Ymd%.sql
注意:
①:mysql安装目录如果存在空格, 要把该子路径用双引号括起来,见上方示例
②:数据库备份目的地为根目录比如:
D:\yadong_%Ymd%.sql
(存放在D盘根目录下),如果需要放在其他目录下,一定要保证目录存在,如果不存在请先自行新建对应目录
③:@pause表示命令窗不会自动消失,需要按任意键关闭,不需要则自行删除
④:
-h127.0.0.1
-h命令是链接远程服务器使用,如果是本地数据库则不需要该命令
3.创建定时任务,实现定时备份数据库
注:如果程序库中没有mysql也可以把定时任务建到根库中(或者自行新建一个MYSQL的任务文件夹),之所以选择mysql路径,是为了方便管理关于SQL的定时任务。
4.异常问题记录
问题描述:Warning: Using a password on the command line interface can be insecure.mysqldump: Got error: 1130: Host '117.xx.xx.22' is not allowed to connect to this MySQL server when trying to connect
问题原因:
远程服务器不允许ip117.xx.xx.22的主机进行链接
解决办法:授权用户
授权用户名为root的用户从ip为117.xx.xx.22的主机使用password作为密码链接到mysql服务器
GRANT ALL PRIVILEGES ON *.* TO 'root'@'117.xx.xx.22' IDENTIFIED BY 'password' WITH GRANT OPTION