MySQL 数据备份mysqldump与还原mysql
一、手工备份和还原:
1、手工备份mysqldump,这个命令在cmd控制台执行:
mysqldump -uroot -proot 数据库[表1 表2] > 文件路径
mysqldump -uroot -proot tmp > d:/tmp.bak
mysqldump -uroot -proot tmp student > d:/tmp.student.bak
2、备份多个数据库
mysqldump -u username -p --databases dbname2 dbname2 > Backup.sql
加上了--databases选项,然后后面跟多个数据库
示例:备份test mysql数据库
mysqldump -u root -p --databases test mysql > D:\backup.sql
mysqldump命令备份所有数据库的语法如下:
mysqldump -u username -p -all-databases > BackupName.sql
示例:
mysqldump -u -root -p -all-databases > D:\all.sql
3、手工还原执行mysql,这个命令在cmd控制台执行:
mysql -u root -p [dbname] < backup.sq
mysql -u root -p < C:\backup.sql
4、手工还原执行source,这个指令在mysql客户端执行:
mysql>source d:\tmp.student.bak
二、定时备份:
1、windows下定时备份:
(1)、创建一个bat文件mysqltask.bat,其内容如下:
cd c:\mysql\bin
mysqldump -uroot -proot tmp student > d:/tmp.student.bak
注意:
如果mysqldump的文件路径目录存在空格,那么路径一定要用双引号"",即cd "c:\mysql aaa\bin"
文件名可变:
set yy=%date:~0,4%
set mm=%date:~5,2%
set dd=%date:~8,2%
set hh=%time:~0,2%
set hh=%hh: =0%
set mn=%time:~3,2%
set ss=%time:~6,2%
set filename=%yy%%mm%%dd%%hh%%mn%%ss%.bak
(2)、把mysqltask.bat做成一个任务,定时调度, 一般凌晨2点调度。
控制面板>任务计划>添加任务计划>浏览 选择mysqltask.bat>每天 2:00