そのため、C# を使用して Ubuntu VM にある MySQL データベースに接続しようとしています。ただし、System.Net.Sockets.SocketException
例外が発生し続け、接続は毎回失敗します。(ブラウザで)IPアドレスを使用してVM上のサーバーにアクセスできるため、何が問題なのかよくわかりません。
どんな助けでも大歓迎です。
そのため、C# を使用して Ubuntu VM にある MySQL データベースに接続しようとしています。ただし、System.Net.Sockets.SocketException
例外が発生し続け、接続は毎回失敗します。(ブラウザで)IPアドレスを使用してVM上のサーバーにアクセスできるため、何が問題なのかよくわかりません。
どんな助けでも大歓迎です。
接続しようとしている場所からmysqlサーバーにtelnetで接続しようとしましたか?telnet localhost 3306
localhostがmysqlサーバーで、3306がデフォルトのポートです。これが成功した場合は、mysqlが正しく実行されていることを意味します。また、クレデンシャルが正しく渡されているかどうかを確認できます。以下は、liferayポータルサーバーからmysqlに接続するためのサンプルJNDI構成です。
<Resource name="jdbc/LiferayPool" auth="Container" type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000"
username="root" password="" driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost/liferay?useUnicode=true&characterEncoding=UTF-8&useFastDateParsing=false"/>
お役に立てれば。
サーバーに問題がなければ、MySQL 用の ADO.Net ドライバーを試すことができます ( http://www.mysql.com/downloads/connector/net/ ) 。
ドライバーをインストールしたら、プロジェクトに MySql.Data.dll への参照を追加します。
コードでは、次を使用してサーバーに接続できます。
public static MySqlConnection mysqlCreateConection() {
try {
c = new MySqlConnection("server=" + "localhost" + ";user id=" + "user" +
";Password=" + "password" + ";persist security info=True;database=" + mysqlDatabase + "" + ";");
c.Open();
Console.WriteLine(c.ToString());
return c;
} catch (MySqlException e) {}
このコネクタを使用すると、C# + mysql を扱うときに、作成済みのクラスとメソッドを使用して作業を簡単にすることができます。