Ik probeer een kleine master-slave-omgeving in te stellen met percona-server-server.x86_64-8.0.27-18.1.el8.

Een plan is om niet-ssl-verbindingen tussen de knooppunten te gebruiken, omdat de servers alleen in het LAN communiceren. Maar de volgende fout wordt ontvangen op slaves:

error connecting to master '[email protected]:3306' - retry-time: 60 retries: 3 message: SSL connection error: SSL is required but the server doesn't support it

Laatste mysql.cnf op beide knooppunten:

[mysqld]

port = 3306
bind-address = 0.0.0.0
datadir = /var/lib/mysql
socket = /var/run/mysql/mysql.sock
pid-file = /var/run/mysql/mysql.pid
tmpdir = /var/tmp/mysql
# User is ignored when systemd is used (fedora >= 15).
user = mysql
# adding this to allow replication w/o ssl
default_authentication_plugin = mysql_native_password
# disable ssl
ssl = 0

##
# Logging configuration.
##
log-error = /var/log/mysql/mysqld.err

##
# Replication
##
server-id = 1
report_host = hv3-db1
gtid_mode = on
enforce-gtid-consistency = on
sync_binlog         = 1
log_bin             = /var/lib/mysql/mysql-bin
log_bin_index       = /var/lib/mysql/mysql-bin.index
binlog_expire_logs_seconds    = 864000
max_binlog_size     = 100M
log_replica_updates   = 1

##
# Memory settings.
##
key_buffer_size = 256M
max_allowed_packet = 128M
table_open_cache = 256
sort_buffer_size = 1M
read_buffer_size = 1M
read_rnd_buffer_size = 4M
myisam_sort_buffer_size = 64M
thread_cache_size = 8
max_connections = 151
tmp_table_size = 64M
max_heap_table_size = 64M
join_buffer_size = 3M

##
# Other settings.
##
wait_timeout = 1800
# Disabling symbolic-links is recommended to prevent assorted security risks
skip-symbolic-links = 1
net_read_timeout = 120
skip-name-resolve
back_log = 100
max_connect_errors = 10000
open-files-limit = 20000
interactive_timeout = 3600
connect_timeout = 120
explicit_defaults_for_timestamp = True

##
# InnoDB settings
##
innodb_buffer_pool_size = 50G
innodb_log_buffer_size = 1M
innodb_flush_method = O_DIRECT
innodb_file_per_table = 1
innodb_flush_log_at_trx_commit = 2
innodb_lock_wait_timeout = 600
innodb_adaptive_hash_index = off
innodb_fill_factor = 50
innodb_log_file_size = 2G
# Move logs on separate directory/partition
innodb_undo_directory = /var/tmp/mysql
innodb_log_group_home_dir = /var/tmp/mysql

Replica wordt gestart met het volgende commando:

CHANGE REPLICATION SOURCE TO  SOURCE_HOST = '192.168.3.100', SOURCE_PORT = 3306, SOURCE_USER = 'replica', SOURCE_PASSWORD = 'xxx', SOURCE_AUTO_POSITION = 1, SOURCE_SSL=0;

Heeft u een idee hoe u het probleem kunt oplossen?

answer
mysql_ssl_rsa_setup --uid=mysql

Een probleem opgelost, het lijkt erop dat ssl-certificaten zouden moeten bestaan ​​voor mysql 8, zelfs als je ze niet in replicatie gebruikt.