環境
- MariaDB 11.8
症状
MariaDBサーバーをインストールして接続しようとすると、
ERROR 2026 (HY000): SSL connection error: unknown error number
が出て接続できない。SSLとか使ってないし無効化したい。
設定
/etc/my.cnf もしくは /etc/mysql/mariadb.conf.d/99-disable-ssl.cnf などに以下追記
[mysqld] skip-ssl
skip-ssl は文字のごとくサーバーの TLS サポートを無効化して、すべて平文接続として扱うオプションである。
systemctl restart mysqlで再起動すれば設定が反映され、接続できるようになるはず。
ローカル接続時に SSL を無効化する
ローカルから mysql -u root -p -h 127.0.0.1 でつなぐときに同じエラーが出る場合、クライアント側でも TLS を無効化する必要がある。
/etc/mysql/mariadb.conf.d/99-disable-ssl-client.cnfなど作成して以下追記
[client] skip-ssl disable-ssl-verify-server-cert
mysql_secure_installationで初期設定時に失敗する
--skip-ssl オプションを付ける
mysql_secure_installation --skip-ssl
スレーブ作成時にエラーになる
スレービ作成時に MASTER_SSL=0 と MASTER_SSL_VERIFY_SERVER_CERT=0 をつけないといけない。
CHANGE MASTER TO MASTER_HOST='primary_host', MASTER_USER='replication_user', MASTER_PASSWORD='password', MASTER_LOG_FILE='binlog.000001', MASTER_LOG_POS=4, MASTER_SSL=0, MASTER_SSL_VERIFY_SERVER_CERT=0;
備考
以下の記事がMariaDBの仕様変更についてよくまとまっている。
これを見ると11.4 LTSからSSLデフォルト有効の挙動になった模様。