mysql的备份

mysql 备份
冷备份
/etc/init.d/mysqld stop
cp var/lib/mysql /tmp/back -r
myisam 直接拷贝文件即可
nonodb 需要拷贝 ib_logfile0 ib_logfile1
恢复时 需要改回权限 所有者和所有组的权限,否则用不了
chown mysql.mysql /var/lib/mysql -R

热备份
/etc/init.d/mysqld start 需要开启服务,但是有关锁表问题
mysqldump -u -p +库名 > /tmp/mysqlbak
还原
mysql -u root -p bak < /tmp/mysqlbak

冷备份 备份文件 热备份 备份 SQL语句

导入数据 load data infile ‘/ilepath' into table tablename;

事务 日志文件,文件小,可循环使用
/var/lib/mysql/ib_logfile0
/var/lib/mysql/ib_logfile1

二进制日志 binlog
1.开启binlog 在my.cnf中添加
log-bin=binlog 长度、前缀
log-bin-index=binlog.index 日志的索引文件
sync-binlog=1 设置,在写入时,是否直接写入硬盘,还是先写入内存在写入硬盘。1写入磁盘,0写入内存
2.binlog 存放位置
/usr/local/mysql/var/lib/
3.还原数据
mysqlbinlog --start-postion 98 --stop-postion 268 binlog.000001 | mysql -u -p -h
4.修改循环时间,让binlog 一天,生成一次
mysql> flush logs
shell 下执行
mysql -u -e 'flush logs'
显示binlog 状态
show master status


你可能感兴趣的:(mysql,备份)