备份分为增量备份和全备份, 一般是两者结合起来使用,在备份的基础上,还原增量备份;

一定的时间间隔进行全备份,通过开启二进制日志来进行增量备份(其实就是通过binlog记录操作语句)。

备份数据库:

1.备份单张表

mysqldump  -u user  -p  password databasename table > table.sql

    默认第一个参数是数据库名,后面的均是表名

mysqldump  -u  user  -p  password databasename table1  table2  table3 ... > table.sql

2.备份一个库的所有表

mysqldump  -u  user  -p  password  databasename > database.sql

这样备份的是一个库的所有表,恢复前,需要先选择数据库,再导入

3.备份一个库

-B

加上大写的B,后面的参数默认为库名,备份文件中有建库的语句

4.备份所有数据库

 -A

加上大写的A,备份数据库服务器中的所有数据库

5.导出存储过程和函数

mysqldump  -u  user  -p  password -ntd -R dbname > backupflie.sql

-ntd 是表示导出存储过程;-R是表示导出函数

1/2是表级备份, 3/4 是库级备份,增量备份需要开启binlog二进制日志,涉及到mysqlbinlog工具的使用

恢复数据库:

在数据库客户端中恢复

1.表级恢复

    mysql> use  dbname;

source

2.库级恢复:

source

在终端中恢复

1.表级恢复:

dbname < backup.sql;

    dbname 表示需要将备份恢复到哪个库

2.库级恢复:

    mysql  -u user  -p password < backup.sql

未完,待续--使用增量备份日志

补充:myqldump  --opt  (加快备份速度)