「MySQL Connector/NET」の版間の差分
imported>Administrator |
imported>Administrator |
||
| (同じ利用者による、間の18版が非表示) | |||
| 33行目: | 33行目: | ||
[[ConnectionString]]の設定例を示す。 | [[ConnectionString]]の設定例を示す。 | ||
ConnectionStringに設定する項目名は宗教上の理由および政治上の理由により、同じ意味の異なる語句が大量に存在しており非常に紛らわしい。ここに記述してある項目は最新でもなく全てを網羅しているわけでもないのでMySQL公式サイト上のマニュアルを見るのが一番確実である<ref>http://dev.mysql.com/doc/refman/5.1/en/connector-net-connection-options.html</ref>。 | |||
=== 標準的な設定 === | === 標準的な設定 === | ||
| 42行目: | 42行目: | ||
</source> | </source> | ||
=== | === 接続先サーバーのアドレスを指定する === | ||
* Host | * Host | ||
* Server | * Server | ||
| 64行目: | 64行目: | ||
</source> | </source> | ||
=== | === 接続先サーバーのポート番号を指定する === | ||
* Port | * Port | ||
デフォルト:3306 | デフォルト:3306 | ||
| 71行目: | 71行目: | ||
この値は接続先がlocalhostで[[UNIXソケット]]が使える場合は無視されます。 | この値は接続先がlocalhostで[[UNIXソケット]]が使える場合は無視されます。 | ||
=== | === 接続プロトコルを指定する === | ||
* Protocol | * Protocol | ||
* Connection Protocol | * Connection Protocol | ||
| 85行目: | 85行目: | ||
* memory - MySQL共有メモリで接続する。 | * memory - MySQL共有メモリで接続する。 | ||
=== | === 初期データベースを指定する === | ||
* Initial Catalog | * Initial Catalog | ||
* Database | * Database | ||
| 94行目: | 94行目: | ||
接続後は「use データベース名;」というクエリーを実行することで切り替えれる。 | 接続後は「use データベース名;」というクエリーを実行することで切り替えれる。 | ||
=== | === ユーザー名を指定する === | ||
* User Id | * User Id | ||
* UserID | * UserID | ||
| 105行目: | 105行目: | ||
接続に使用するMySQLアカウントを指定する。 | 接続に使用するMySQLアカウントを指定する。 | ||
=== | === パスワードを指定する === | ||
* Password | * Password | ||
* pwd | * pwd | ||
| 112行目: | 112行目: | ||
接続に使用するMySQLアカウントのパスワードを指定する。 | 接続に使用するMySQLアカウントのパスワードを指定する。 | ||
=== | === 通信の暗号化の有無を指定する(旧) === | ||
* Encrypt | * Encrypt | ||
* UseSSL | * UseSSL | ||
| 120行目: | 120行目: | ||
MySQL Connector/NET 6.2.1 以降で廃止されたので、このオプションではなくSSL Modeオプションを使えとのこと。 | MySQL Connector/NET 6.2.1 以降で廃止されたので、このオプションではなくSSL Modeオプションを使えとのこと。 | ||
=== | === 通信の暗号化の有無を指定する(新) === | ||
* SSL Mode | * SSL Mode | ||
* SslMode | * SslMode | ||
| 134行目: | 134行目: | ||
* VerifyFull - SSLを使用し、かつ認証局(CA)での検証を行う。ホストが一致しない場合は接続エラーとなる。 | * VerifyFull - SSLを使用し、かつ認証局(CA)での検証を行う。ホストが一致しない場合は接続エラーとなる。 | ||
=== | === 接続がタイムアウトするまでの時間を指定する === | ||
* Connect Timeout | * Connect Timeout | ||
* Connection Timeout | * Connection Timeout | ||
| 142行目: | 142行目: | ||
MySQLサーバーへの接続を試み、タイムアウトするまでの時間(秒数)を設定する。 | MySQLサーバーへの接続を試み、タイムアウトするまでの時間(秒数)を設定する。 | ||
=== | === コマンドがタイムアウトするまでの時間を指定する === | ||
* Default Command Timeout | * Default Command Timeout | ||
* DefaultCommandTimeout | * DefaultCommandTimeout | ||
| 150行目: | 150行目: | ||
MySQLサーバーとの接続が完了し、コマンド(クエリー)を発行してからここで設定した時間(秒数)が経っても応答がない場合はエラーを発生させる。あくまでデフォルト値なのでコマンド(クエリー)発行時にコマンドタイムアウト時間を明示した場合はそちらが優先される。 | MySQLサーバーとの接続が完了し、コマンド(クエリー)を発行してからここで設定した時間(秒数)が経っても応答がない場合はエラーを発生させる。あくまでデフォルト値なのでコマンド(クエリー)発行時にコマンドタイムアウト時間を明示した場合はそちらが優先される。 | ||
=== | === プリペアド・ステートメントの実行場所を指定する === | ||
* Ignore Prepare | * Ignore Prepare | ||
* IgnorePrepare | * IgnorePrepare | ||
| 156行目: | 156行目: | ||
プリペアド・ステートメントの構文解析をサーバー側(MySQLサーバー)で行うか、クライアント側(MySQL Connecter/NET)で行うかを設定します。falseの場合はサーバー側で行い、trueの場合はクライアント側で行います。デフォルトはtrue(クライアント側)です。 | プリペアド・ステートメントの構文解析をサーバー側(MySQLサーバー)で行うか、クライアント側(MySQL Connecter/NET)で行うかを設定します。falseの場合はサーバー側で行い、trueの場合はクライアント側で行います。デフォルトはtrue(クライアント側)です。 | ||
=== 文字コードを指定する === | |||
* CharSet | |||
* Character Set | |||
* CharacterSet | |||
デフォルト:なし | |||
MySQLサーバーに送信する全てのクエリーに使用する文字コードを指定する。 | |||
結果はデータベース内の文字コード(テーブルごとに設定された文字コード)で帰ってくるので注意。 | |||
<source lang="text"> | |||
CharSet=UTF8; | |||
</source> | |||
MySQLを何も考えないでインストール直後の設定で運用し、デフォルトでlatin1が設定され、後々大変なことになる現場を大量に見てきたので文字コードには注意すること。MySQLで一番確実な文字コードは「Binary」(MediaWikiのデフォルト値)だが、[[Dapper]]などから使う場合によろしくないので普通はUTF8くらいが良いかもしれない。 | |||
=== コネクション・プールの有無を指定する === | |||
* Pooling | |||
デフォルト:true | |||
コネクションプールはデフォルトで有効となっている。 | |||
コネクションプールが有効な場合は、MySqlConnectionオブジェクトを生成する際に、プールしている接続の中から適切なものが引き出され、使えそうな接続が無ければ新規に作られる。 | |||
=== コネクション・プールの最小値を指定する === | |||
* Minimum Pool Size | |||
* Min Pool Size | |||
* MinimumPoolSize | |||
デフォルト:0 | |||
以下、[[Oracle]]と同じであれば、負荷が低いときはこの値に向かい接続を切り、無駄な接続維持をしない。また、アプリ起動直後などでこの値よりプールしている接続少ないは特に何もしないで増えるのを待つ。たとえばこの値が10に設定されていると10になるまで極力切断せずにプールし続けようとする。 | |||
ソースも見ていないし、実際に試してもいないので、実際のところ本当にそうなのかは不明。 | |||
=== コネクション・プールの最大数を指定する === | |||
* Maximum Pool Size | |||
* Max Pool Size | |||
* maximumpoolsize | |||
デフォルト:100 | |||
Oracleと同じであれば、接続数が最大数に達している状態では新規接続ができなくなる。高負荷でサーバーが吹っ飛ぶ(応答すらしなくなる)のを防止するための設定なので大きくすればいいというものではない。 | |||
ソースも見ていないし、実際に試してもいないので、実際のところ本当にそうなのかは不明。 | |||
== 備考 == | == 備考 == | ||
| 161行目: | 203行目: | ||
== 関連項目 == | == 関連項目 == | ||
* [[Dapper]] | * [[Dapper]] | ||
== 参考文献 == | |||
<references/> | |||
== 外部リンク == | == 外部リンク == | ||