まず、私はこのサイトを何年も潜んでいると言いたいのですが、C \C++を手伝ってくれたすべてのことに感謝します。
私が抱えている本当の問題は、yamlファイルを解析し、解析された情報を使用してSQLデータベースにクエリを実行するプログラムをWindowsで作成したことですが、正常に機能しました。それで私はそれをLinuxに移植しましたが、それはうまくいったようで、1つの問題を保存しました。プログラムをテストするたびに、ホスト名が見つからないというエラー2005が表示されます。TCPの使用を強制しようとしましたが、まだ役に立ちません。私は複数のデータベースを試しましたが、奇妙な部分は、これがWindowsで正常に機能することです。したがって、誰かがこの問題に光を当てることができれば。
エラーは具体的には次のとおりです。エラー:2005:不明なMySQLサーバーホスト'#。#。#。#'(0)
注:#は、実際のIPアドレスを検閲するためのものです。
何が間違っているのかわからないので、助けてください。私のコードは以下の通りです。
int openConnection( char *name, char *password, char *ip, char *port, char *db )
{
printf("Opening SQL Connection...\n");
conn = mysql_init(NULL);
if (conn == NULL)
{
printf("Error: %u: %s\n", mysql_errno(conn), mysql_error(conn));
return 1;
}
if (mysql_real_connect(conn,
ip,
name,
password,
db,
(int)port,
NULL, 0) == NULL)
{
printf("Error: %u: %s\n", mysql_errno(conn), mysql_error(conn));
return 2;
}
return 0;
}