本文主要是介绍设置mysql日志,和登录会话要求,主要解决等保3.0要求的整改。我用docker安装的mysql,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
先注意我的run命令,一个是容器,一个是目录挂在
docker run --name mysql -p 3306:3306 -v G:\runtime\docker\mysql\data:/var/lib/mysql -v G:\runtime\docker\mysql\conf:/etc/mysql/conf.d -v G:\runtime\docker\mysql\log:/var/log/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
我是win10跑的docker,用的是linux容器,所以和linux跑docker效果是一致的。
我看过这个镜像的他会去加载 /etc/mysql/conf.d 目录下的文件,尽量使用.cnf或者直接命名mysqld.cnf吧
怎么加载没有认证,但我是用mysqld.cnf
如果做了挂在,那么直接在你挂在目录下新建这个文件即可,内容如下
# 记得给目录权限 chown -R mysql /var/log/mysql[mysqld]
# https://www.cnblogs.com/qlqwjy/p/8316134.html
# 错误日志 记录启动、运行或停止mysqld时出现的问题。
log-error=/var/log/mysql/error.log # 开启通用日志 记录建立的客户端连接和执行的语句。
general_log=1
# 通用日志地址
general_log_file=/var/log/mysql/general.log
# 开启慢查询日志
slow_query_log=1
# 慢查询日志地址
slow_query_log_file=/var/log/mysql/slowqueries.log
# 慢查询阀值
long_query_time=5
# 输出方式,FILE表示文件,TABLE表示数据库(可以在mysql库中看到日志),
# 可以同时使用,方法如上,也可单独使用比如log_output=’FILE’。
# 输出到文件比输出到数据库效率高。
log_output='FILE'# 二进制日志
server-id = 1
log-bin=/var/log/mysql/binlog/a# 超过5次登录失败,拒绝登录108000毫秒
# cli 登录安装插件,命令如下 ↓↓↓↓↓↓
# Install plugin connection_control soname "connection_control.so";
plugin-load=CONNECTION_CONTROL=connection_control.so
connection_control_failed_connections_threshold=5
connection_control_min_connection_delay=108000
上面有一定的注释。
1.我之前日志目录放的不是/var/log/mysql下面,所以会有第一行给目录权限的日志,如果报错了就执行下吧,没报错就不用管
2.登录会话是需要安装插件的,所以记得用命令执行这条语句:Install plugin connection_control soname "connection_control.so";
3.二进制日志,我加了一个目录,貌似mysql不会自动创建目录,麻烦手动创建下吧 mkdir /var/log/mysql/binlog
这篇关于设置mysql日志,和登录会话要求,主要解决等保3.0要求的整改。我用docker安装的mysql的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!