MYSQL如何开启BINLOG

谈到MySQL的BINLOG功能,它是数据库备份和恢复的重要组成部分。
以前在做数据库维护的时候,经常要调整这个设置。

说实话,配置BINLOG其实还是蛮简单的。
你只需要在 MySQL 配置文件 my.cnf 中做一些技巧即可。
例如,您可以将以下行添加到配置文件中:
log_bin=开 log_bin_basename=/var/lib/mysql/mysql-bin log_bin_index=/var/lib/mysql/mysql-bin.index
这三行配置中的每一行都有其自己的用途。
不用说,log_bin=ON告诉MySQL你要启用BINLOG功能。
log_bin_basename参数用于指定binlog日志的基文件名。
例如,可以写为mysql-bin,这样生成的binlog文件名的格式就是mysql-bin.000001 、mysql-bin.000002 还有log_bin_index,这是指定binlog文件的索引文件,以便MySQL能够更好的管理这些binlog文件。

有趣的是,如果你只想使用默认的文件名,你可以直接写 log_bin=mysql-bin 就可以了。
这样MySQL就会在默认的datadir目录下生成一个以mysql-bin开头的文件。

需要明确的是,一旦配置了这几行,MySQL的BINLOG功能就基本准备好了。
不过在配置具体配置的时候,还是需要根据自己的实际情况进行调整,比如路径、文件名等。
这些细节非常重要。

我个人的经验是,配置这种东西的时候,在生产环境中操作最好先在测试环境中尝试一下,确保一切正常。
毕竟如果数据库出了问题那就麻烦了。
数据无价!

MYSQL如何开启BINLOG

嗯,我对此很熟悉。
一年前我帮朋友做过一次,我担心得满头大汗。
您有权遵循这些步骤。

记住,要打开配置文件/etc/my.cnf,您必须使用root权限。
在其中搜索[mysqld]。
如果不存在,请自行添加。
然后添加log_bin=ON。
就是这么简单。
保存并退出。

我的朋友当时添加了这个并重新启动了服务。
使用 sudo systemctl 重新启动 mysql。
重新启动完成后,记录并输入 show Variables as 'log_bin';查看它是否已打开。
是的,完成了。

如果要指定路径,如/var/lib/mysql/mysqlbinlog,直接输入log_bin=/var/lib/mysql/mysqlbin即可。
MySQL 会自己处理索引文件,所以你不需要担心它。

哦,顺便说一句,添加参数后,不要忘记备份数据库,以防万一。
这是一个相当稳健的举动。

MySQL数据库访问日志分析_MySQL安全事件监控实用方法

哦,这个讨论有很多话要说。
去年我接手了上海一个数百万用户的系统。
由于没有仔细阅读日志,我差点被拖进水里。

当天半夜,系统突然死机,CPU使用率高达9 0%。
我跑进机房,查看日志服务器。
哦mysql的slow_query.log占满了硬盘。
我赶紧更改配置,将long_query_time调整为1 秒,希望能找到超时的查询。

你觉得怎么样?刷日记比跑步双十一还要紧张。
都是这样的问题: sql SELECT FROM users WHERE username = 'admin' OR 1 =1 --'
当我发现这是一个典型的SQL注入。
该IP来自越南,看起来黑色产业正在尝试它。
如果没有及时发现。
数据库密码将被保存。

这就是日志分析的好处。
但当我第一次这样做时,我完全被震撼了。
启用 GeneralLog 后,其性能实际上会下降。
我试了一次,几个小时内CPU就上升到了7 0%。
后来,我们只在夜间审核时打开它。
我使用 SlowQueryLog 来捕获白天的慢速查询。

另外,记录中的密码是明文的;你必须注意它。
当时,我们有一个愚蠢的同事,他随机添加日志文件。
但当后门部门的IT人员看到的时候,差点就出大事了。
后来,我们在全公司范围内进行了宣传,并将日志文件权限更改为 6 00,这样就没有人可以读取它。

工具方面,我们用得最多的是ELKStack。
当我刚开始做的时候,我花了一周时间调试Logstash配置。
有些正则表达式很混乱;部分IP分析不正确;我的头发快要掉光了。
但做完之后,看看各种图表,发现不寻常的IP,还是很有趣的。

最重要的是分析。
我有一个做外科维护的朋友。
他讲述了一个关于他差点犯下大错误的故事。
那天,他看到一个 IP 运行疯狂缓慢的查询,并认为这是一次攻击。
结果,经过仔细分析记录;第三方系统升级更改了查询,发现时间停在那里。
直接封锁IP会让对方的系统崩溃。

看,就是这个日志分析,需要看细节,看全局。
但我经历了更令人愤怒的事情。
我有一家小公司,直接在服务器上使用grep处理日志。
结果,攻击者绕过了所有过滤器并使用特殊方法来搞乱数据库。
那家公司破产了。

所以日志分析看似简单,其实还是相当复杂的。
如果您不明白,请不要感到困惑。
但据说掌握了这个方法数据库安全就会稳定。