Mysql备份与恢复

来源:互联网 发布:网络流行aq是什么意思 编辑:程序博客网 时间:2024/06/14 23:48

mysql备份与恢复:

物理备份&逻辑备份:
物理备份:适合比较大的数据,在出现问题后需要快速恢复的数据.
1.物理备份包含库的文件.
2.物理备份比逻辑备份更加快速,因为物理备份只复制文件,不会复制会话.
逻辑备份:适用于比较小的数据,以创建库,创建表,插入数据的方式进行备份.
1.备份数据不包含日志和其他不是不是数据库的文件.

在线备份&离线备份:
在线备份:
1.很少影响其他的客户端.
离线备份:
1.在备份的过程中,数据库的服务不可用,客户端会受到影响.这种备份机制一般在副本中进行.
2.备份的机制比较简单.

本地备份&远端备份:

全备份&增量备份:
增量备份需要开启二进制日志

mysql备份常用命令:

1.将查询数据导入到文件:

select * into outfile '/tmp/kasumi' from t_trade_user;
文件会创建在数据库的服务端,只保存表的数据,不会保存表结构.使用--tab参数创建备份的表结构.
$mysql -ukasumi -h127.0.0.1 -pkasumi < ta.sql > /tmp/kasumi
$vim ta.sql
use traderaccout;
select * from t_trade_user;
$mysql -ukasumi -h127.0.0.1 -pkasumi -e "use traderaccount; select * from t_trade_user \G;" > /tmp/kasumi

2.对数据库的某一些表进行备份:
$mysqldump -ukasumi -h127.0.0.1 -pkasumi traderaccount t_trade_user t_trade_account >/tmp/ta2.sql
$mysqldump -ukasumi -h127.0.0.1 -pkasumi -B traderaccount --tables t_trade_user t_trade_account >/tmp/ta2.sql

3.增量备份:
使用二进制日志进行增量备份,需要开启二进制日志

flush tables with read lock;
flush logs;
mysqlbinlog mysql-binlog.000092 >/tmp/increment.sql
unlock tables;

数据恢复:
1.操作系统中恢复:
$mysql < /tmp/kasumi
2.连接数据库进行恢复:

source /tmp/kasumi;
3.恢复增量备份:
$mysqlbinlog mysql-binlog.000092 | mysql -uroot -pkasumi
4.导入数据恢复:
use traderaccount;
load data infile '/tmp/kasumi' into table t1;


0 0
原创粉丝点击