MySQL 保证数据不会丢的能力主要体现在两方面:
- 能够恢复到任何时间点的状态;
- 能够保证MySQL在任何时间段突然奔溃,重启后之前提交的记录都不会丢失
binlog
1能力可以通过重跑binlog日志来实现
binlog二进制日志,它记录了数据库上的所有改变(记录sql语句),并以二进制的形式保存在磁盘中;
它可以用来查看数据库的变更历史、数据库增量备份和恢复、Mysql的复制(主从数据库的复制)。
redolog
redolog是物理日志,记录的是在某个数据页上做了什么修改
对于第二点的能力,通过redolog来实现,即在 InnoDB 存储引擎中,每执行一条sql语句,就重做日志缓存,在事务提交后,才会刷盘,将日志写入系统缓存,并且每隔一秒就会将日志写入系统缓存,并主动刷盘。
这样在事务提交之前的日志丢了也没什么损失
iptables防止nmap扫描
在服务器上配置iptables可以阻止nmap扫描
[root@bogon goaccess-1.5.4]# iptables -t filter -I INPUT -p tcp --tcp-flags ALL FIN,URG,PSH -j REJECT
[root@bogon goaccess-1.5.4]# iptables -t filter -I INPUT -p tcp --tcp-flags SYN,RST SYN,RST -j REJECT
[root@bogon goaccess-1.5.4]# iptables -t filter -I INPUT -p tcp --tcp-flags SYN,FIN SYN,FIN -j REJECT
[root@bogon goaccess-1.5.4]# iptables -t filter -I INPUT -p tcp --tcp-flags ALL SYN -j REJECT
[root@bogon goaccess-1.5.4]# iptables -t filter -R INPUT 1 -s 192.168.80.138 -p tcp --dport 1: --tcp-flags ALL ACK -j REJECT
在kali上验证成果
nmap -sS 192.168.62.129