Details
-
Bug
-
Status: Needs Feedback (View Workflow)
-
Major
-
Resolution: Unresolved
-
11.5.2
-
None
-
None
Description
We upgraded all our MariaDB servers to 11.5.2
Since then we noticed that the binary logs aren't automaticly purged anymore on many nodes. (Yes, new binlogs are created)
Also on manually calling 'PURGE BINARY LOGS', we don't get any error, but it does nothing.
We are use master slave replication with automatic failover from maxscale
Our scheme looks like this
Our config
#
|
# These groups are read by MariaDB server.
|
# Use it for options that only the server (but not clients) should see |
|
# this is read by the standalone daemon and embedded servers |
[server]
|
|
# this is only for the mysqld standalone daemon |
[mysqld]
|
|
#
|
# * Basic Settings
|
#
|
|
#user = mysql
|
pid-file = /run/mysqld/mysqld.pid
|
basedir = /usr
|
#datadir = /var/lib/mysql
|
#tmpdir = /tmp
|
|
# Broken reverse DNS slows down connections considerably and name resolve is
|
# safe to skip if there are no "host by domain name" access grants |
#skip-name-resolve
|
|
# Instead of skip-networking the default is now to listen only on |
# localhost which is more compatible and is not less secure.
|
bind-address = 0.0.0.0 |
skip-networking = 0 |
skip-name-resolve = 1 |
tmp_table_size = 256M
|
max_heap_table_size = 256M
|
performance_schema = ON
|
innodb_buffer_pool_size = 40G
|
innodb_log_file_size = 1G
|
join_buffer_size = 10M
|
#replicate-do-db = mybase |
sync_binlog = 0 |
proxy_protocol_networks='192.168.0.3' |
|
#
|
# * Fine Tuning
|
#
|
key_buffer_size = 128M
|
max_allowed_packet = 1G
|
thread_stack = 192K
|
thread_cache_size = 8 |
# This replaces the startup script and checks MyISAM tables if needed |
# the first time they are touched
|
#myisam_recover_options = BACKUP
|
max_connections = 500 |
table_cache = 64 |
|
query_cache_type = 0 |
query_cache_limit = 512K
|
query_cache_min_res_unit = 4k
|
query_cache_size = 100M
|
slave-parallel-threads = 2000 |
#
|
# * Logging and Replication
|
#
|
slow_query_log=ON
|
log_output=FILE
|
long_query_time=0 |
log_slow_admin_statements=ON
|
log_slow_slave_statements=ON
|
log_slow_rate_limit=100 |
performance_schema=ON
|
performance-schema-instrument='statement/%=ON' |
performance-schema-consumer-statements-digest=ON
|
innodb_monitor_enable=all
|
query_response_time_stats=ON
|
userstat=ON
|
# Both location gets rotated by the cronjob.
|
# Be aware that this log type is a performance killer. |
# Recommend only changing this at runtime for short testing periods if needed! |
#general_log_file = /var/log/mysql/mysql.log
|
#general_log = 1 |
|
# When running under systemd, error logging goes via stdout/stderr to journald
|
# and when running legacy init error logging goes to syslog due to
|
# /etc/mysql/conf.d/mariadb.conf.d/50-mysqld_safe.cnf |
# Enable this if you want to have error logging into a separate file |
#log_error = /var/log/mysql/error.log
|
# Enable the slow query log to see queries with especially long duration |
#slow_query_log_file = /var/log/mysql/mariadb-slow.log
|
#long_query_time = 10 |
#log_slow_verbosity = query_plan,explain
|
#log-queries-not-using-indexes
|
#min_examined_row_limit = 1000 |
|
# The following can be used as easy to replay backup logs or for replication. |
# note: if you are setting up a replication slave, see README.Debian about |
# other settings you may need to change.
|
#server-id = 1 |
#log_bin = /var/log/mysql/mysql-bin.log
|
expire_logs_days = 4 |
#max_binlog_size = 100M
|
|
#
|
# * SSL/TLS
|
#
|
|
# For documentation, please read
|
# https://mariadb.com/kb/en/securing-connections-for-client-and-server/ |
#ssl-ca = /etc/mysql/cacert.pem
|
#ssl-cert = /etc/mysql/server-cert.pem
|
#ssl-key = /etc/mysql/server-key.pem
|
#require-secure-transport = on
|
|
#
|
# * Character sets
|
#
|
|
# MySQL/MariaDB default is Latin1, but in Debian we rather default to the full |
# utf8 4-byte character set. See also client.cnf |
character-set-server = utf8mb4
|
collation-server = utf8mb4_general_ci
|
|
#
|
# * InnoDB
|
#
|
|
# InnoDB is enabled by default with a 10MB datafile in /var/lib/mysql/. |
# Read the manual for more InnoDB related options. There are many! |
# Most important is to give InnoDB 80 % of the system RAM for buffer use: |
# https://mariadb.com/kb/en/innodb-system-variables/#innodb_buffer_pool_size |
#innodb_buffer_pool_size = 8G
|
|
# this is only for embedded server |
[embedded]
|
|
# This group is only read by MariaDB servers, not by MySQL.
|
# If you use the same .cnf file for MySQL and MariaDB, |
# you can put MariaDB-only options here
|
[mariadb]
|
log-basename=master2
|
log_bin = /var/lib/mysql/mariadb-bin
|
log_bin_index = /var/lib/mysql/mariadb-bin.index
|
relay_log = /var/lib/mysql/relay-bin
|
relay_log_index = /var/lib/mysql/relay-bin.index
|
server-id = 2 |
log-slave-updates = 1 |
gtid_strict_mode = 0 |
slave-skip-errors = 1396 |
gtid-domain-id = 1 |
# This group is only read by MariaDB-10.9 servers. |
# If you use the same .cnf file for MariaDB of different versions, |
# use this group for options that older servers don't understand |
[mariadb-11.3] |
|
Attachments
Issue Links
- relates to
-
MDEV-31404 Implement binlog_space_limit
- Closed
-
MDEV-34504 PURGE BINARY LOGS not working anymore
- Closed