• ベストアンサー

ローカル側のC#から、リモートサーバ側のMySQLに接続する方法

さくらインターネットの専用サーバにMySQLを設置しています。 ローカルPC(私の自宅PC・Windows XP)で VC#2008にて、専用サーバのMySQLに繋ぎ、 データベース操作(select等)を行いたいのですが、 可能でしょうか? 現在、ローカルPCに、MySQL Connector Net 6.2.2をインストールし、 MySql.Data.dllを参照設定でVC#2008の開発中のプロジェクトに 追加しています。 コードは下記URLのソースコードと殆ど同じです。 DB接続情報は勿論専用サーバのMySQLへの接続情報を 設定していまして、Data Sourceには、 localhostを設定しています。 http://hades.arrow.jp/blog/2008/08/cmysql3.html 下記も記述しています。 using MySql.Data.MySqlClient; using MySql.Data.Types; 実行しますと、下記のステップで失敗します。 // 接続を開く myConn.Open(); Unable to connect to any of the specified MySQL hosts というエラーメッセージが出てきます。 以上、問題が分かる方、よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • BellBell
  • ベストアンサー率54% (327/598)
回答No.2

専用サーバが、管理者権限全権ありなら、MySQL用のポートを開けておけば接続できるでしょうね。 一般的にはセキュリティの関係などでやらないですが。 やるとしたらSSH経由のMySQL接続ですかね。 http://dev.mysql.com/doc/refman/4.1/ja/windows-and-ssh.html 通信が暗号化されるのでってところが、どうしてもやらないといけないとしたら、使う理由。 VPNで接続できるなら、その選択もありですが。 http://www.itmedia.co.jp/help/howto/linux/vpn/ こちらも暗号化面で比較的安全。 SSHにしても、VPNにしても過信は禁物として。 SSHの欠点は、アプリの作り方か難しくなる、もしくはユーザの利便性が悪くなると言うこと、利点はサーバ上でデフォルトでインストールされている事が期待できる事。 VPNの欠点はサーバにデフォルトではインストールされていないだろう、ということ、利点はリモートとは言えLAN扱いなのでアプリ構築、ユーザ操作は楽ということ。

chibibichi
質問者

補足

ありがとうございます。勉強になりました。

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • cw3629
  • ベストアンサー率0% (0/3)
回答No.1

さくらインターネットでは 確か外部からのMySQL 接続は不可ではなかったでしょうか? (専用サーバは使ったことがありませんが)

chibibichi
質問者

補足

ご回答、ありがとうございます。 そうなんですか。残念です><

すると、全ての回答が全文表示されます。