Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I have a big data in myisam so a table's disk space is got full

so Can I Record Limit on MyISAM Table?

share|improve this question

1 Answer 1

What do you mean by "record limit"?

Do you mean "record the limit" or "limit the number of records"?

I'll assume the latter.

I believe the size of a MyISAM table is limited by the maximum filesize supported by the filesystem and the operating system. If your filesystem is limited to 2GB files, you can probably switch to a filesystem that supports larger files. You should probably consider changing the database back-end to InnoDB if your table sizes are approaching the limits.

The best approach may be to periodically check your database using myisamchkand take appropriate actions. I note it has this option

--data-file-length=len, -D len
Maximum length of the data file (when re-creating data file when it is “full”).

The MySQL documentation for full-tables says

To change the default size limit for MyISAM tables, set the myisam_data_pointer_size, which sets the number of bytes used for internal row pointers. The value is used to set the pointer size for new tables if you do not specify the MAX_ROWS option. The value of myisam_data_pointer_size can be from 2 to 7. A value of 4 permits tables up to 4GB; a value of 6 permits tables up to 256TB.

and

MySQL includes a MERGE library that enables you to handle a collection of MyISAM tables that have identical structure as a single MERGE table. See Section 13.3, “The MERGE Storage Engine”.

share|improve this answer
    
Nail right on the head !!! +1 !!! –  RolandoMySQLDBA Jun 18 '11 at 22:38

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.