一、数据备份
使用root用户备份myblog数据库下的user表语法,保存在E盘根目录
mysqldump -uroot -p123 myblog user >e:/backup.sql
使用root用户备份myblog数据库语法,保存在E盘根目录
mysqldump -uroot -p123 myblog >e:/backup.sql
同时备份多个数据库语法
mysqldump -uroot -p123 --databases day61 day62 day63 >e:/all.sql
备份所有数据库语法
mysqldump -uroot -p123 --all-databases >e:/all.sql
了解知识:
3、使用mysqlhotcopy工具快速备份
mysqlhotcopy是一种热备份,支持不停止MySQL服务器的备份,而且比mysqldump快。mysqlhotcopy是一个perl脚本,主要在Linux系统下使用。其使用LOCK TABLES、FLUSH TABLES和cp来进行快速备份。
原理:先将需要备份的数据库加上一个读锁,然后用FLUSH TABLES将内存中的数据写回到硬盘上的数据库,最后,把需要备份的数据库文件复制到目标目录。
mysqlhotcopy并非mysql自带,需要安装Perl的数据库接口包;下载地址为:http://dev.mysql.com/downloads/dbi.html。目前,该工具也仅仅能够备份MyISAM类型的表。
命令格式如下:
[root@localhost ~]# mysqlhotcopy [option] dbname1 dbname2 backupDir/
dbname:数据库名称;
backupDir:备份到哪个文件夹下;
常用选项:
--help:查看帮助;
--allowold:如果备份目录下存在相同的备份文件,将旧的备份文件加上_old;
--keepold:如果备份目录下存在相同的备份文件,不删除旧的备份文件,而是将旧的文件更名;
--flushlog:备份之后,将对数据库的更新记录到日志中;
--noindices:只备份数据文件,不备份索引文件;
--user=用户名:指定用户名,可以用-u代替;
--password=密码:指定密码,可以用-p代替。使用-p时,密码与-p之间没有空格;
--port=端口号:指定访问端口,可以用-P代替;
--socket=socket文件:指定socket文件,可以用-S代替;
二、数据还原
还原使用mysqldump命令备份的数据库
mysql -uroot -p123 day61 <e:/day61backup.sql
注意备份的时候首先要确保MySQL中有数据库day61