Hello everyone
We have the following service configuration:
- A MySQL server that runs in a docker container on a server with the IP address xxxx
- A configured PMM version of the server, which also runs in a docker container on a server with an IP address yyyy
In PMM, I added my MySQL server as a data source in the web interface. PMM connects to MySQL through the pmm user and password.
PMM collects and processes information correctly (metrics and so on), but there are problems with the QA tab when decrypting requests (Explain category) - this is best seen in the video that I attached to this discussion but in short, 2 windows with the following content start constantly popping up in the browser in the upper right corner:
invalid GetActionRequest.ActionId: value length must be at least 1 runes
Internal server error.
I found a similar case on the Internet (at least there were the same errors as mine) and did as they advised, it even gave a small result, due to the fact that before that I could not, in principle, look at explain for my SELECT queries, but was advised in the MySQL configuration to increase the length of text representations of SQL queries (digests) for storage in Performance Schema from 1024 to 4000:
[mysqld]
max_digest_length=4000
performance_schema_max_digest_length=4000
I also attach the parameters of my MySQL server here (config.cnf) and PMM:
config.cnf for MySQL:
[client]
default-character-set = utf8mb4
[mysqld]
innodb_flush_method = O_DIRECT
max_allowed_packet=1073741824
init-connect='SET NAMES utf8mb4'
collation-server = utf8mb4_unicode_ci
character_set_server=utf8mb4
#skip-character-set-client-handshake
default_authentication_plugin= mysql_native_password
group_concat_max_len=100000
log_error_suppression_list=MY-013360
max_digest_length=4000
performance_schema_max_digest_length=4000
performance_schema=ON
innodb_thread_concurrency = 0
innodb_read_io_threads = 64
innodb_write_io_threads = 64
sort_buffer_size = 2M
read_buffer_size = 2M
innodb_io_capacity = 1000
innodb_buffer_pool_size = 20G
innodb_buffer_pool_instances = 11
innodb_log_file_size = 256M
information_schema_stats_expiry = 0
binlog_expire_logs_seconds = 259200
bind-address = 0.0.0.0
# PMM logs
log_error_verbosity = 3
innodb_print_all_deadlocks=1
log_output = file
slow_query_log = OFF
long_query_time = 0
log_slow_admin_statements = ON
log_slow_slave_statements = ON
slow_query_log_file = /var/log/mysql/mysql-slow.log
log_error = /var/log/mysql/mysqld.error.log
# Percona server
log_slow_rate_limit = 20
log_slow_rate_type = query
log_slow_verbosity = full
slow_query_log_always_write_time = 0.1
slow_query_log_use_global_control = all
# for replica
log_bin=/var/log/mysql/mysql-bin.log
server-id=1
gtid_mode=ON
enforce-gtid-consistency=ON
[xtrabackup]
host = [ip-addr]
port = [port]
datadir = [path]
log-bin = [path]
log-bin-index = [path]
PMM-server:
pmm-server:
image: percona/pmm-server:2
container_name: pmm-server
ports:
- "9210:443"
volumes:
- ./pmm-data:/srv
restart: always
I also attach a link to google disk, where the video is located:
https://drive.google.com/file/d/1HxQ9zYjZGpEs6RqbGM6UT7t6R7-adaAC/view?usp=sharing
PMM-server verion: Current version: 2.43.0
MySQL: percona/percona-server:8.3
It is not customary to say this, but I hope that someone, like me, has encountered such a problem (or a similar one) and will be able to help in some way - I will accept any help and can send almost any information on my problem (except personal data, of course), if it helps in any way.
I wrote this text with the help of a translator, so I apologize if I made mistakes somewhere in the description of the problem
have a nice day!