mysql 基础操作 数据库全量备份 增量备份

1mysql不建议对外开放,远程连接通过ssh中转

#连接工具navicat

打开工具--连接新建--mysql

填写ssh认证信息

之后填写数据库信息

 

填写完成,可以点击“测试连接”,一切无误,显示如图

 

#打开刚才新建的连接,右键 选择新建数据库

数据库名字,字符集等选择好,点击 确定

 

3选择刚创建的数据库,创建几张表,方便学习

右键-test-命令行界面--输入(一般工人信息表)

CREATE TABLE `hpfaceidentify` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `idnum` char(18) CHARACTER SET utf8 DEFAULT NULL,
  `name` varchar(50) CHARACTER SET utf8 DEFAULT NULL,
  `sex` varchar(255) CHARACTER SET utf8 DEFAULT NULL,
  `issuingOrgan` varchar(30) CHARACTER SET utf8 DEFAULT NULL,
  `address` varchar(64) CHARACTER SET utf8 DEFAULT NULL,
  `nationality` varchar(8) CHARACTER SET utf8 DEFAULT NULL,
  `birth_date` date DEFAULT NULL,
  `indate` varchar(30) CHARACTER SET utf8 DEFAULT NULL,
  `phone` varchar(11) CHARACTER SET utf8 DEFAULT NULL,
  `entry_date` date DEFAULT NULL,
  `createTime` datetime(6) DEFAULT NULL,
  `modifyTime` datetime(6) DEFAULT NULL,
  `user_id` int(11) DEFAULT NULL,
  `photo` varchar(255) CHARACTER SET utf8 DEFAULT NULL,
  `project_name` varchar(255) CHARACTER SET utf8 DEFAULT NULL,
  `team_name` varchar(255) CHARACTER SET utf8 DEFAULT NULL,
  `worktype_name` varchar(255) CHARACTER SET utf8 DEFAULT NULL,
  `work_role` int(11) DEFAULT NULL,
  `card_num` varchar(20) CHARACTER SET utf8 DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `user_id` (`user_id`),
  UNIQUE KEY `identityNum` (`idnum`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

#加入测试数据

INSERT INTO `test`.`hpfaceidentify`(`id`, `idnum`, `name`, `sex`, `issuingOrgan`, `address`, `nationality`, `birth_date`, `indate`, `phone`, `entry_date`, `createTime`, `modifyTime`, `user_id`, `photo`, `project_name`, `team_name`, `worktype_name`, `work_role`, `card_num`) VALUES (1, '3714221977080515', '刘', '1', '浙江省衢州', '浙江省玉华县兴山重庆路', '汉', '1971-03-16', '2030-06-09', '131999999', '2024-04-01', NULL, NULL, NULL, NULL, '测试项目1', '钢筋工班组', '020', 3, '1111111111');

 2数据库备份

#全量脚本如下mysql.sh

#!/bin/bash
cd  /data/bakcup/
DATE=$(date -d "yesterday" "+%Y-%m-%d")
mysqldump -h127.0.0.1  -uroot -p密码 --default-character-set=utf8 --single-transaction --set-gtid-purged=OFF test > test.sql

tar zcvf  test_$DATE.tar.gz test.sql
sleep 2
rm  -rf test.sql
加入定时任务,每天晚上23:59全量备份
crontab -e
59 23 * * *  sh /data/backup/mysql.sh

#增量备份

vim  my.cnf
[mysqld]下面增加
log_bin=/data/mysql/logs/mysql-bin
server_id=100
binlog_format=mixed
max_binlog_size = 100M
#其中log-bin参数指定二进制日志的文件名前缀,server-id参数指定MySQL实例的唯一标识
systemctl  restart  mysql

#查看 日志文件名和位置点

 

使用 mysqlbinlog 命令执行增量备份,包括 --start-datetime 和 --stop-datetime 参数来指定时间范围,以及 --start-position 参数来指定上次备份结束的二进制日志位置.
mysqlbinlog --no-defaults --start-datetime='2024-04-26 00:00:00' --stop-datetime='2024-04-26 23:59:59' --start-position=2320 mysql-bin.000005 > test_2024-04-26.sql
每天备份增量 ,可以不使用--start-position 直接

mysqlbinlog --no-defaults --start-datetime='2024-04-26 00:00:00' --stop-datetime='2024-04-26 23:59:59'  mysql-bin.000005 > test_2024-04-26.sql

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值