473,786 Members | 2,849 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

MyISAM max_rows greater than 4294967295?

I'm running MySQL 4.1 under Linux. I need to have a MyISAM table with
more than 4G rows of data.

I've read the manual regarding the MAX_ROWS option on tables. This
table has a fixed row length, with 17 bytes per row.

MySQL simply won't set the ROW_LENGTH greater than 4G. When I use an
ALTER TABLE to set it higher, it acts as though it worked fine, but a SHOW
TABLE STATUS indicates that it is still limited to 4294967295.

I've been searching high and low on this, and the only things I'm
finding (for example in the '1.2.4. How Big MySQL Tables Can Be' section)
keep talking about file size limits of the OS. This isn't the issue. I
have a table that is at the 4G (rows) limit, and it's physical size on
disk is already 74GB. It appears that the addressing is being limited to
4 bytes.

Any ideas on what's imposing this limit? Thanks in advance.

Tom
Jul 23 '05 #1
2 5042
Tom D wrote:
I'm running MySQL 4.1 under Linux. I need to have a MyISAM table with
more than 4G rows of data.
...It appears that the addressing is being limited to 4 bytes.


Yeah, I'd guess that this is the case, especially if the table is indexed.

Have you considered using InnoDB tables instead? The MAX_ROWS option is
specific to MyISAM. I can't quickly find a reference to any maximum
number of rows in InnoDB tables, but perhaps it is greater than 2^32.

Likewise, have you considered that your usage is outside the range of
functionality of MySQL? Apologies for suggesting this on a MySQL
newsgroup, but perhaps you should consider another RDBMS after
researching their row limits per table.

For instance, PostgreSQL claims that the maximum rows per table is
"unlimited. "
http://www.postgresql.org/docs/faqs.FAQ.html#4.4

Regards,
Bill K.
Jul 23 '05 #2
On Thu, 21 Apr 2005 12:46:00 -0700, Bill Karwin wrote:
Tom D wrote:
I'm running MySQL 4.1 under Linux. I need to have a MyISAM table with
more than 4G rows of data.
...It appears that the addressing is being limited to 4 bytes.


Yeah, I'd guess that this is the case, especially if the table is indexed.

Have you considered using InnoDB tables instead? The MAX_ROWS option is
specific to MyISAM. I can't quickly find a reference to any maximum
number of rows in InnoDB tables, but perhaps it is greater than 2^32.


Thanks for the reply Bill. Actually I'm going to load these into
and InnoDB table. I can't find anything regarding the 4 billion
row limit on InnoDB either.

Here's what's really annoying. For the sake of the demo I need these
for I was going to just go with the 4 billion rows I was able to load,
but I wasn't able to index them, even after trimming out about 50 million
rows. myisamchk keeps telling me that index 1 has 'too many keys'. Index
one is a primary key using two integers from the table. The total number
of keys in the index would be a fraction of the total rows, so I just
simply don't get what's going on.

I'm just hoping that the InnoDB table will allow the existing records (a
bit less than 4G) with indexes. I plan on loading the InnoDB table using
'LOAD TABLE INFILE' commands against 1 million row chunks of data in tab
demimited files.

It's not fun I assure you. Thanks again!

Tom

Jul 23 '05 #3

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

0
1738
by: Morten Gulbrandsen | last post by:
Dear MySQL developers, Could some experienced Database developer please take a look at this ? It is supposed to be plain SQL2. How can it be coded under MySQL Especially all referential triggered actions.
2
7146
by: Marco | last post by:
MAX_ROWS can be used in conjunction with AVG_ROW_LENGTH to (a) limit the size of a HEAP table (b) overcome MyISAM's default 4GB limit Are there *any other ways* in which MySQL uses MAX_ROWS and AVG_ROW_LENGTH? Does it use them to improve performance by sizing buffers appropriately, to prevent fragmentation in dynamic tables (variable row lengths)?
1
1482
by: Craig Stadler | last post by:
mySQL (4.0.20a win32), dual amd2200 machine, 4 gigs of DDR ECC memory. I have a series of 33 tables, identical in structure : (field names shortened) CREATE TABLE `dbtable1` ( `FS` varchar(254) NOT NULL default '', `NAM` varchar(254) NOT NULL default '', `H` int(11) NOT NULL default '0', `SIZ` int(11) default NULL,
25
2994
by: Jason | last post by:
Hi, below is example code which demonstrates a problem I have encountered. When passing a number to a function I compare it with a string's size and then take certain actions, unfortunately during the testing of it I discovered that negative numbers were being treated as if they were > 0. I compiled the following on mingw compiler/dev c++/windows xp. If I replace string.size() for a ordinary number it behaves as expected? I notice...
1
1681
by: Fábio Emilio Costa | last post by:
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hi! I'm working in a project in C++ using MySQL C API (Win98/Dev-C++ 4.9.9.8/MySQL DevPak/MySQL 4.1.13) and I want to know if it's possible to setup the server environment language (--language) via mysql_options() function.
4
2948
by: Good Man | last post by:
Hi there I have a database with about 20 or so tables, maybe a few thousand rows in each. I am starting to do more complex things with my insertions etc, and I want to start to use transactions, so I imagine I should change some table types in the database from MyISAM to InnoDB. I know that InnoDB tables are a completely different beast than MyISAM in terms of data storage etc... ie: instead of using folders on the server, everything...
2
11411
by: crescent_au | last post by:
I've read articles and postings about MyISAM vs InnoDB but I am still a bit unsure about which storage engine to use for my new project. I am developing a website in PHP/MySQL, which includes features such as member login, insert/update/delete operations for members to maintain their records, report generation based on database entries, shopping cart but payments will be made through Paypal gateway and the search facility. This is a...
110
10629
by: alf | last post by:
Hi, is it possible that due to OS crash or mysql itself crash or some e.g. SCSI failure to lose all the data stored in the table (let's say million of 1KB rows). In other words what is the worst case scenario for MyISAM backend? Also is it possible to not to lose data but get them corrupted?
77
4300
by: borophyll | last post by:
As I read it, C99 states that a byte is an: "addressable unit of data storage large enough to hold any member of the basic character set of the execution environment" (3.6) and that a byte must be at least 8 bits: "The values given below shall be replaced by constant expressions suitable for use in #if
0
9496
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
10363
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
10164
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
0
9961
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
0
8989
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
1
7512
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
6745
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
5397
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
0
5534
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.