天天看点

mysql备份和恢复笔记

备份分为增量备份和全备份, 一般是两者结合起来使用,在备份的基础上,还原增量备份; 一定的时间间隔进行全备份,通过开启二进制日志来进行增量备份(其实就是通过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.备份一个库     mysqldump    -u  user  -p  password  -B   db1   db2  db3... > db.sql      加上大写的B,后面的参数默认为库名,备份文件中有建库的语句

4.备份所有数据库     mysqldump  -u  user  -p  password   -A > db.sql      加上大写的A,备份数据库服务器中的所有数据库

5.导出存储过程和函数    mysqldump  -u  user  -p  password -ntd -R dbname > backupflie.sql

  只导出dbname数据里面的存储过程和函数,-ntd 是表示导出存储过程;-R是表示导出函数

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

恢复数据库: 在数据库客户端中恢复 1.表级恢复     mysql> use  dbname;     mysql>  source  backup.sql;

2.库级恢复:     mysql>  source  backup.sql;

在终端中恢复 1.表级恢复:     mysql   -u user  -p password   dbname < backup.sql;     dbname 表示需要将备份恢复到哪个库

2.库级恢复:     mysql  -u user  -p password < backup.sql

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

补充:myqldump  --opt  (加快备份速度)   mysqldump -d   (只导结构不导数据)

继续阅读