これがあなたがしたいことをする方法です。
MySQLコネクタ/NETADO.NETコネクタを使用します。ここにあるよ。
http://dev.mysql.com/downloads/connector/net/5.1.html
設定の指示に従ってください。それは非常にうまく機能します。
MySQLサーバーをパブリックIPアドレスに配置します。
クライアントソフトウェアアセンブリを取得して、ADO.NETコネクタを介してそのパブリックIPに接続します。
でもお願いです!
これが正しいことかどうかを自問してください。MySQLサーバー(およびすべてのテーブルサーバー)は、ファイアウォールの背後にあり、限られた数のクライアントパッケージからの接続を受け入れる場合、はるかに安全かつ予測どおりに機能するため、おそらくそうではありません。
マイク・クリステンセンが提案したことを行うことを検討してください。ASP.NETとWCF、または任意のスタックを使用して、MySQLデータベースへのサーバー常駐インターフェイスを構築します。そのサーバー常駐インターフェースには、エンドユーザーにプッシュするクライアントソフトウェアからアクセスできます。
そのインターフェースには、必要なメソッドだけを含めることができます。サーバーコンポーネントを構築するためのWCFまたはその他のスタックは、これを簡単かつ堅牢に実行できます。例えば。
Client 1: This is moe. Here's a message for curly: "Look at the grouse, look at the grouse".
Server: OK
Client 2: This is curly: any new messages?
Server: moe says "Look at the grouse, look at the grouse".
Client 1: This is moe. When did curly last collect my messages?
Server: ten minutes ago.
Client 2: This curly. any new messages?
Server: NO
これは、MySQLインターフェイスをインターネットで利用できるようにするよりもはるかに安全でスケーラブルであり、パフォーマンスが大幅に向上します。
ちなみに、インスタントメッセージングプロトコルが必要なようです。http://jabber.orgでオープンソースシステムの使用を検討することをお勧めします。このようなものは、すべて自分で作成する場合、正しく理解するのが難しい場合があります。