1.操作环境编辑本段
1.数据库版本5.7.19;
2.Linux版本Centos7.3
2.MySQL启动、连接、关闭相应操作编辑本段
mysql数据库启动
其中--defaults-file='/tmp/my.cnf' 指定启动数据库的配置文件 --datadir指定数据库目录 --user 指定用户 最后加了个& 是让其 在后台执行。
MySQL连接
命令: mysql -uroot -p -h127.0.0.1 --port=3307
关闭MySQL进程
3.备份方式编辑本
dump文件备份
在配置文件备份之前先查看mysql服务是否正在运行,如果没有正在运行的服务应该启动服务。
备份dump文件有几种备份的方式
1.常规备份不含有创建数据库的语句
mysqldump -uroot -p --routines --socket="/database/mysql.sock" vir >vir1.sq
2.带有--databases参数的备份(是创建了个数据库)
mysqldump -uroot -p --routines --socket="/database/mysql.sock" --databases vir >vir2.sql
3.带有--add-drop-database --databases的备份(试用于测试环境,可以快速将数据库回复到测试之前的数据库)
mysqldump -uroot -p --routines --socket="/database/mysql.sock" --add-drop-database --databases vir >vir3.sql
先删掉mysql> drop database vir; 数据库
然后导入自带创建库的vir3.sql
[root@localhost database]# mysql -uroot -p --socket=/database/mysql.sock databases < vir3.sql
binlog备份(增量备份 和dump搭配使用)
binlog的binlog_format=statement和row 默认是row。binlog日志中记录的是改变的数据像insert和update操作。而statement和row格式出来的binlog区别:statement是人可以看懂的语句。row不是人看的。哈哈。
查看某个binlog:mysqlbinlog binlog.000002
以下拿binlog.000002举例
binlog日志可以选取某个时间段或者起始位置和终止位置来进行数据恢复 详细参数
mysqlbinlog binlog.000002mysqlbinlog --start-position=575 --stop-position=667 binlog.000002
mysqlbinlog --start-position=575 --stop-position=667 binlog.000002> binlog002.sql
mysql -uroot -p --socket=/database/mysql.sock test < binlog002.sql
在将处理过的binlog导回相应的数据库mysql -uroot -p --socket=/database/mysql.sock vir< binlog002.sql
binlog重新生成的时机:1. max_binlog_cache_size 达到上限
2.重启mysql