「MySQL Connector/NET」の版間の差分

提供: MonoBook
ナビゲーションに移動 検索に移動
imported>Administrator
imported>Administrator
50行目: 50行目:
 
* Addr
 
* Addr
 
* Network Address
 
* Network Address
 
+
<source lang="text">
 +
Server=サーバーアドレス;
 +
</source>
 
複数のレプリケーションサーバーを指定する場合は、接続先サーバーをアンパサンド(&)で区切りで指定すると自動的に分散してくれる。なおMySQLはマスター・スレーブな非同期レプリケーションが大前提であり、アンパサンドで繋ぐ書き方は複数のスレーブサーバーを列挙する書き方なので、こいつに対してINSERT/UPDATE/DELETEなどの書き込みに使ってはいけない。あくまでSELECT専用。
 
複数のレプリケーションサーバーを指定する場合は、接続先サーバーをアンパサンド(&)で区切りで指定すると自動的に分散してくれる。なおMySQLはマスター・スレーブな非同期レプリケーションが大前提であり、アンパサンドで繋ぐ書き方は複数のスレーブサーバーを列挙する書き方なので、こいつに対してINSERT/UPDATE/DELETEなどの書き込みに使ってはいけない。あくまでSELECT専用。
 
<source lang="text">
 
<source lang="text">

2012年3月29日 (木) 07:13時点における版

MySQL Connector/NETとは、.NETアプリからMySQLデータベースサーバーに接続するためのADO.NETプロバイダである。

インストール

通常

  • mysql-connector-net-version-noinstall.zip をダウンロードする。
http://www.mysql.com/downloads/connector/net/#downloads


  • ダウンロードしたファイルを展開する。
$ unzip mysql-connector-net-version-noinstall.zip -d mysql-connector-net-version-noinstall


  • 展開したディレクトリの中からmysql.data.dllファイルを探し出し、Monoで作ったアプリのインストールフォルダにコピーする。
$ find . -name mysql.data.dll
./v4/mysql.data.dll
./v2/mysql.data.dll

2012年3月5日時点で最新バージョンとなっていたmysql-connector-net-6.4.4-noinstall.zipの中には、v2/mysql.data.dllとv4/mysql.data.dllの2個あったが、名前から推測するに、たぶん.NET Framework 2.0と4.0用だと思うので、とりあえずv4/mysql.data.dllを入れてみた。

GACに登録しておく場合

Connector/NET コンポーネントを、gacutil コマンドで Global Assembly Cache に登録する :

$ gacutil /i MySql.Data.dll
Installed mysql.data.dll into the gac (/opt/novell/mono/lib/mono/gac)

インストールが完了すれば、Connector/NET コンポーネントとコンパイルされたアプリケーションは以後変更する必要はありません。しかし、アプリケーションをコンパイルする際、-r:MySqlData.dll コマンドライン オプションを使用して Connector/NET コンポーネントを確実に含むようにしてください。

ConnectionString

ConnectionStringの設定例を示す。

ConnectionStringに設定する項目名は宗教上の理由および政治上の理由により、同じ意味の異なる語句が大量に存在しており非常に紛らわしい。最新でもなく全てを網羅しているわけでもないのでMySQL公式サイト上のマニュアルを見るのが一番確実だが現在は英文しか用意されていないという[1]

標準的な設定

MySQLサーバーの設定をいじってポート番号を変えてある場合はポート番号を明示する。 Portを省略するとMySQLデフォルトの3306番ポートが使用される。

Server=サーバーアドレス;Database=データベース名;Uid=ユーザー名;Pwd=パスワード;Port=ポート番号;

接続先サーバーの指定

  • Host
  • Server
  • Data Source
  • DataSource
  • Address
  • Addr
  • Network Address
Server=サーバーアドレス;

複数のレプリケーションサーバーを指定する場合は、接続先サーバーをアンパサンド(&)で区切りで指定すると自動的に分散してくれる。なおMySQLはマスター・スレーブな非同期レプリケーションが大前提であり、アンパサンドで繋ぐ書き方は複数のスレーブサーバーを列挙する書き方なので、こいつに対してINSERT/UPDATE/DELETEなどの書き込みに使ってはいけない。あくまでSELECT専用。

Server=サーバーアドレス1 & サーバーアドレス2 & サーバーアドレス3;

備考

関連項目

外部リンク