<AI>
IPv6 で mariadb の port 指定はどうするの

IPv6 環境で MariaDB(または MySQL)のポート番号を指定する方法は、
コマンドライン(CLI)と接続文字列(プログラムや設定ファイル)で異なります。

1. コマンドライン(CLI)の場合
コマンドラインでは、IPv6 アドレスをそのまま指定し、-P(大文字)オプションでポートを指定します。
bash
mariadb -h 2001:db8::1 -P 3306 -u root -p
注意: コマンドラインでは、アドレスを [...] で囲む必要はありません。

2. 接続文字列(URI / プログラム)の場合
JDBC や PHP、各種プログラミング言語の接続用 URI では、
IPv6 アドレスの :(コロン)とポート番号の区分を明確にするため、アドレスを [](角括弧) で囲みます。

一般的な接続 URI 形式:
text
mariadb://[2001:db8::1]:3306/database_name

JDBC (Java) の場合:
textjdbc:mariadb://[2001:db8::1]:3306/database_name

PHP (PDO) の場合:
php$dsn = "mysql:host=[2001:db8::1];port=3306;dbname=testdb";

💡 補足:サーバー側の設定(my.cnf)
MariaDB サーバー側で IPv6 と特定のポートを待ち受ける(バインドする)場合は、設定ファイルに以下のように記述します。
ini
[mariadb]
bind-address = ::
port = 3306

:: は、すべての IPv4 および IPv6 アドレスからの接続を許可する設定です。