MySqlTalk.com  

Go Back   MySqlTalk.com > MySQL > Documentation
User Name
Password
FAQ Members List Calendar Search Today's Posts Mark Forums Read


Reply
 
Thread Tools Search this Thread
Old 06-08-2004, 01:59 AM   #1
Administrator
Administrator
 
Join Date: Jun 2004
Posts: 383 Administrator is on a distinguished road
1.2.4 How Big MySQL Tables Can Be

From http://dev.mysql.com/doc/mysql/en/Table_size.html :

1.2.4 How Big MySQL Tables Can Be



MySQL 3.22 had a 4GB (4 gigabyte) limit on table size. With the MyISAM storage engine in MySQL 3.23, the maximum table size was increased to 8 million terabytes (2 ^ 63 bytes). With this larger allowed table size, the maximum effective table size for MySQL databases now usually is determined by operating system constraints on file sizes, not by MySQL internal limits.

The InnoDB storage engine maintains InnoDB tables within a tablespace that can be created from several files. This allows a table to exceed the maximum individual file size. The tablespace can include raw disk partitions, which allows extremely large tables. The maximum tablespace size is 64TB.

The following table lists some examples of operating system file-size limits:

Operating System File-size Limit Linux-Intel 32-bit 2GB, much more when using LFS Linux-Alpha 8TB (?) Solaris 2.5.1 2GB (4GB possible with patch) Solaris 2.6 4GB (can be changed with flag) Solaris 2.7 Intel 4GB Solaris 2.7 UltraSPARC 512GB NetWare w/NSS filesystem 8TB
On Linux 2.2, you can get MyISAM tables larger than 2GB in size by using the Large File Support (LFS) patch for the ext2 filesystem. On Linux 2.4, patches also exist for ReiserFS to get support for big files. Most current Linux distributions are based on kernel 2.4 and already include all the required LFS patches. However, the maximum available file size still depends on several factors, one of them being the filesystem used to store MySQL tables.

For a detailed overview about LFS in Linux, have a look at Andreas Jaeger's Large File Support in Linux page at http://www.suse.de/~aj/linux_lfs.html.

By default, MySQL creates MyISAM tables with an internal structure that allows a maximum size of about 4GB. You can check the maximum table size for a table with the SHOW TABLE STATUS statement or with myisamchk -dv tbl_name. See section 14.5.3 SET and SHOW Syntax.

If you need a MyISAM table that will be larger than 4GB in size (and your operating system supports large files), the CREATE TABLE statement allows AVG_ROW_LENGTH and MAX_ROWS options. See section 14.2.5 CREATE TABLE Syntax. You can also change these options with ALTER TABLE after the table has been created, to increase the table's maximum allowable size. See section 14.2.2 ALTER TABLE Syntax.

Other ways to work around file-size limits for MyISAM tables are as follows:
  • If your large table is read-only, you can use myisampack to compress it. myisampack usually compresses a table by at least 50%, so you can have, in effect, much bigger tables. myisampack also can merge multiple tables into a single table. See section 8.2 myisampack, the MySQL Compressed Read-only Table Generator.
  • Another way to get around the operating system file limit for MyISAM data files is by using the RAID options. See section 14.2.5 CREATE TABLE Syntax.
  • MySQL includes a MERGE library that allows you to handle a collection of MyISAM tables that have identical structure as a single MERGE table. See section 15.2 The MERGE Storage Engine.

DISCUSS:
Administrator is offline   Fork this post Reply With Quote
Old 09-06-2004, 03:22 AM   #2
JsS
Junior Member
 
Join Date: Sep 2004
Posts: 26 JsS is on a distinguished road
Question Re: 1.2.4 How Big MySQL Tables Can Be

A table has 14lakhs of records.The order of retrival is not same as order of entry.
Means if we insert B5,B4,B3 then the retrival is B3,B4,B5.
When the table is having 9lakhs of records then it handles properly....
can any 1 suggest....
JsS is offline   Fork this post Reply With Quote
Old 10-20-2004, 03:22 PM   #3
Azkaban
Senior Member
 
Join Date: Jul 2004
Posts: 167 Azkaban is on a distinguished road
Re: 1.2.4 How Big MySQL Tables Can Be

Quote:
Originally Posted by JsS
A table has 14lakhs of records.The order of retrival is not same as order of entry.
Means if we insert B5,B4,B3 then the retrival is B3,B4,B5.
When the table is having 9lakhs of records then it handles properly....
can any 1 suggest....

What's a lakhs?
Azkaban is offline   Fork this post Reply With Quote
Old 10-21-2004, 12:38 AM   #4
JsS
Junior Member
 
Join Date: Sep 2004
Posts: 26 JsS is on a distinguished road
Re: 1.2.4 How Big MySQL Tables Can Be

9lakhs means 900,000
JsS is offline   Fork this post Reply With Quote
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Import Access, Excel and data of other formats to MySQL by Navicat NavicatGuy Articles 0 08-17-2004 01:08 AM
3.2 Entering Queries Administrator Documentation 0 06-09-2004 02:58 AM
1.4.3.2 Using the MySQL Software for Free Under GPL Administrator Documentation 0 06-08-2004 02:20 AM
1.2.2 The Main Features of MySQL Administrator Documentation 0 06-08-2004 01:55 AM
1.2 Overview of the MySQL Database Management System Administrator Documentation 0 06-07-2004 10:11 PM



All times are GMT -4. The time now is 08:54 PM.



Powered by: vBulletin, Copyright ©2000 - 2008, Jelsoft Enterprises Limited.
Google
  Web http://www.mysqltalk.com
DISCLAIMERS:
1. We have no commercial interest in this site.
Banner Ads and Subscriptions will only be used to help pay for hosting and maintenance costs.
2. MySQLTalk.com is NOT affiliated with MySQL AB in any way.
3. MySQLTalk.com is NOT endorsed by MySQL AB in any way.
4. Please do not post any content that is harmful to MySQL or MySQL AB, meaning no misleading or obsolete information will be tolerated.
Well-founded constructive criticism meant to help the community is permitted.
5. This website is founded with the goal of improving the MySQL community.
We not only tolerate newbies, we encourage them.
Please do not ask newbies to "read the manual".