[前][次][番号順一覧][スレッド一覧]

mysql:2114

From: Tomohiro Takahashi <Tomohiro Takahashi <t_takahashi@xxxxxxxxxx>>
Date: Wed, 24 May 2000 23:52:14 +0900
Subject: [mysql 02114] Re: about MySQL JDBC Driver

Tomohiro Takahashi wrote:
> 
>  <略>
> 
>   マニュアルには、
>   「例えば、 BLOB 型の許容範囲いっぱいのデータをテーブルに入れる場合、
>     --set-variable=max_allowed_packet=24M オプションを指定してサーバー
>     を起動する必要があります。」
> とありますが、クライアントから送りだすパケットのサイズは、ヘッダの構造上、
> 16Mを越えることが出来ないと思うのですが、どうなのでしょうか...。
 
  高橋(智)です。

  結局、--set-variable=max_allowed_packet=16M として mysqld を起動する
ことで、数メガ程度のバイナリデータを格納することができました。
  ここでやはり気になったのは、「MM Mysql JDBC DRIVER」は送信するSQL文を
一度完成させてから一気にパケットを送り出しているため、パケット用のバッファ
を確保できずに、内部で例外を発生させることがありますね。JavaVMの起動オプ
ションでメモリを多めに確保しておけば問題ないですが。
  その点、修正を加えた gwe JDBC Driver では、64K 程度のバッファを使いま
わすようにしてます。そのかわり、UPDATE ... SET BINDATA=0x00010203....
というように 16進表記 のSQL文を使用しているので、送り出すパケットは 2倍
に脹れ上がります。(最終的なパケット長を早期に計算するためです)

--
高橋智宏

[前][次][番号順一覧][スレッド一覧]

      2096 2000-05-23 22:00 [Tomohiro Takahashi <] about MySQL JDBC Driver                 
      2105 2000-05-24 15:58 ┗[Shin-ichi Tsurunaga ]                                       
      2108 2000-05-24 18:16  ┣[Tomohiro KATO <tomop]                                     
      2112 2000-05-24 21:10  ┃┗[Shin-ichi Tsurunaga ]                                   
      2110 2000-05-24 19:49  ┗[Tomohiro Takahashi <]                                     
      2111 2000-05-24 20:32   ┗[Shin-ichi Tsurunaga ]                                   
      2113 2000-05-24 22:29    ┗[Tomohiro Takahashi <]                                 
->    2114 2000-05-24 23:52     ┗[Tomohiro Takahashi <]                               
      2116 2000-05-25 12:15      ┗[Shin-ichi Tsurunaga ]