SSH トンネル経由で C インターフェイスを使用して mySQL サーバーに接続しようとしています。
私が現在行っているのは、SSH トンネルを開くことです。
ssh user@IP -L 10293:127.0.0.1:3306
そしてコードで:
MYSQL *conn = mysql_init(NULL);
mysql_real_connect(conn, "localhost", "username", "password", "production", 10293, NULL, 0);
unsigned int error = mysql_errno(conn);
接続直後にエラー 2002 が表示されます。エラー 2002 は「ソケット経由でローカル MySQL サーバーに接続できません」です。しかし、接続でソケットを指定しなかったのに、ソケット経由で接続しようとするのはなぜですか?
他に何がうまくいかない可能性がありますか?
もちろん、ユーザー名、パスワード、テーブル名は何度もチェックされています。