Does mysql have 开发者_如何学JAVAany datarows limit. I mean there's gotta be a limit somewhere, or maybe just a limit for a user.
Anyone knows if there is a limit for a user?
Yes there is a limit (Actually there are a few).
The file size of your filesystem. Since MySQL (all engines) stores the table in a maximum of 1 file (InnoDB can store multiple tables in one file), the filesystem's file size limit will be restrictive of how many rows you can have. Now, if you're using a modern filesystem, it won't be too bad. See this list for more information: Comparison of filesystem limits.
The row pointer in the storage engine (MyISAM for instance is 6 bytes by default, 7 bytes max). Granted, these numbers are huge (256TB default, 65,536TB max for MyISAM), but they are there.
Data type of your primary key. If you use
INT
, you're capped at 2.1 billion rows (4.3 if you used unsigned). If you used aBIGINT
, you're capped at 9.2x10^18 rows (18.4x10^18 if unsigned). Of course this doesn't apply to tables without an auto-incremeneted PK.InnoDB's maximum tablespace size is 64TB, so that's the max table size in Inno.
There may be more, but that's what I can think of...
Check out this documentation page for more information...
As far as I know, there is no row limit as such, and there definitely is no per-user limit - it would not make sense in a database system.
See E.7. Limits in MySQL in the manual and the duplicate link I posted.
精彩评论