FWIW, IMO LOB handling is really where MySQL lags behind all other enterprise database solutions. Firebird, DB2, Oracle, et al all are able to stream LOB data to and from disk so that it does not all need to be loaded in memory (multiple times for a single LOB). I would call this a bug but others would probably prefer to call it a limitation. :)
-----Original Message----- From: schlubediwup [mailto:[EMAIL PROTECTED] Sent: Monday, May 29, 2006 8:07 AM To: mysql@lists.mysql.com Subject: max size of TEXT columns hi listers, 1. environment: [EMAIL PROTECTED] ~> uname -a Linux myhost.mydomain.com 2.6.16-1.2080_2.rhfc5.cubbi_suspend2 #1 Wed Mar 29 12:54:32 CEST 2006 i686 i686 i386 GNU/Linux [EMAIL PROTECTED] ~> localhost.(none)> show variables like "version%"; +-------------------------+------------------------------------------+ | Variable_name | Value | +-------------------------+------------------------------------------+ | version | 5.0.18-standard | | version_comment | MySQL Community Edition - Standard (GPL) | | version_compile_machine | i686 | | version_compile_os | pc-linux-gnu | +-------------------------+------------------------------------------+ 4 rows in set (0.00 sec) localhost.(none)> localhost.mydb> show variables like "max%"; +----------------------------+----------------------+ | Variable_name | Value | +----------------------------+----------------------+ | max_allowed_packet | 1048576 | .... localhost.mydb> select max(char_length(history)) from my_contacts2; +---------------------------+ | max(char_length(history)) | +---------------------------+ | 65535 | +---------------------------+ 1 row in set (0.01 sec) localhost.mydb> 2. problem according do the mysql docu TEXT/BLOB fields depend solely on the db environment and can grow to any length: 11.4.3. The |BLOB| and |TEXT| Types .... The maximum size of a |BLOB| or |TEXT| object is determined by its type, but the largest value you actually can transmit between the client and server is determined by the amount of available memory and the size of the communications buffers. You can change the message buffer size by changing the value of the |max_allowed_packet| variable, but you must do so for both the server and your client program. For example, both *mysql* and *mysqldump* allow you to change the client-side |max_allowed_packet| value. See Section 7.5.2, "Tuning Server Parameters" <http://www.ayni.com/mysql/optimization.html#server-parameters>, Section 8.3, "mysql - The MySQL Command-Line Tool" <http://www.ayni.com/mysql/client-side-scripts.html#mysql>, and Section 8.8, "mysqldump - A Database Backup Program" <http://www.ayni.com/mysql/client-side-scripts.html#mysqldump>. .... BUT: The table in consideration contains a column named history containing all message text which has been sent to the mail-address in the row in question. i ment to have observed that this column in reality does not contain all message text from the very beginning. today, i found out that the maximum lenght of the history fields in all tables of this kind is 65535. when an update is ocurring, the column history is recreated using concat(new_text, history) so that the newest text is always at the beginning of the column. but the oldest text at the end of the column apparently is lost. 3. question which parameter do i have to change in order to get this TEXT column really to any length? any hint is very much appreciated, thanks in advance. suomi -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED] -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]