WSの小屋

备份

用自带的mysqldump

  • --routines:备份数据库中的存储过程和函数
  • --triggers:备份数据库中的触发器(默认启用,此参数显式包含)
  • --events​​:备份数据库中的事件调度器
  • --single-transaction:
    • 对支持事务的存储引擎(如InnoDB)生成一致性备份,通过启动一个事务来创建快照,避免锁表
    • 注意:此选项不适用于MyISAM等非事务引擎
bash 复制代码
mysqldump -u root -p --routines --triggers --events --single-transaction --databases yourDbName > backup.sql

恢复

bash 复制代码
mysql -u root -p yourDbName < backup.sql

增量数据

需开启binlog,编辑my.cnf或my.ini:

ini 复制代码
[mysqld]
log-bin = mysql-bin  # 开启binlog,文件名前缀为mysql-bin
server-id = 1       # 主从复制时需唯一(必填)
binlog_format = ROW # 推荐格式:ROW、STATEMENT或MIXED
expire_logs_days = 7 # 自动清理7天前的日志
max_binlog_size = 100M # 单个日志文件大小限制
bash 复制代码
# 重启mysql服务
systemctl restart mysqld
sql 复制代码
/* 验证是否开启 */
SHOW VARIABLES LIKE '%log_bin%';
bash 复制代码
# 导出增量数据sql
mysqlbinlog --start-position=0 --database=copyright /var/lib/mysql/mysql-bin.000001 > zengliang.sql

Comments | 0条评论