随着一天天的增加数据MYSQL好像是 8G吧?缓存2G?
用完了怎么办

解决方案 »

  1.   

    http://dev.mysql.com/doc/refman/5.1/zh/introduction.html#table-size1.4.4. MySQL表最大能达到多少MySQL 3.22限制的表大小为4GB。由于在MySQL 3.23中使用了MyISAM存储引擎,最大表尺寸增加到了65536TB(2567 – 1字节)。由于允许的表尺寸更大,MySQL数据库的最大有效表尺寸通常是由操作系统对文件大小的限制决定的,而不是由MySQL内部限制决定的。InnoDB存储引擎将InnoDB表保存在一个表空间内,该表空间可由数个文件创建。这样,表的大小就能超过单独文件的最大容量。表空间可包括原始磁盘分区,从而使得很大的表成为可能。表空间的最大容量为64TB。在下面的表格中,列出了一些关于操作系统文件大小限制的示例。这仅是初步指南,并不是最终的。要想了解最新信息,请参阅关于操作系统的文档。
    操作系统
    文件大小限制Linux 2.2-Intel 32-bit
    2GB (LFS: 4GB)Linux 2.4+
    (using ext3 filesystem) 4TBSolaris 9/10
    16TBNetWare w/NSS filesystem
    8TBwin32 w/ FAT/FAT32
    2GB/4GBwin32 w/ NTFS
    2TB(可能更大)MacOS X w/ HFS+
    2TB在Linux 2.2平台下,通过使用对ext2文件系统的大文件支持(LFS)补丁,可以获得超过2GB的MyISAM表。在Linux 2.4平台下,存在针对ReiserFS的补丁,可支持大文件(高达2TB)。目前发布的大多数Linux版本均基于2.4内核,包含所有所需的LFS补丁。使用JFS和XFS,petabyte(千兆兆)和更大的文件也能在Linux上实现。然而,最大可用的文件容量仍取决于多项因素,其中之一就是用于存储MySQL表的文件系统。关于Linux中LFS的详细介绍,请参见Andreas Jaeger的“Linux中的大文件支持”页面:http://www.suse.de/~aj/linux_lfs.html。Windows用户请注意: FAT和VFAT (FAT32)不适合MySQL的生产使用。应使用NTFS。在默认情况下,MySQL创建的MyISAM表允许的最大尺寸为4GB。你可以使用SHOW TABLE STATUS语句或myisamchk -dv tbl_name检查表的最大尺寸。请参见13.5.4节,“SHOW语法”。如果需要使用大于4GB的MyISAM表(而且你的操作系统支持大文件),可使用允许AVG_ROW_LENGTH和MAX_ROWS选项的CREATE TABLE语句。请参见13.1.5节,“CREATE TABLE语法”。创建了表后,也可以使用ALTER TABLE更改这些选项,以增加表的最大允许容量。请参见13.1.2节,“ALTER TABLE语法”。处理MyISAM表文件大小的其他方式:·         如果你的大表是只读的,可使用myisampack压缩它。myisampack通常能将表压缩至少50%,因而,从结果上看,可获得更大的表。此外,myisampack还能将多个表合并为1个表。请参见8.2节,“myisampack:生成压缩、只读MyISAM表”。·         MySQL包含一个允许处理MyISAM表集合的MERGE库,这类MyISAM表具有与单个MERGE表相同的结构。请参见15.3节,“MERGE存储引擎”。
      

  2.   

    表的存储量如楼上MYSQL官方文档中所述,库的存储量是多个表的的限制集合。
    楼上忘了把innodb的表限制贴出来了。如果你的表是INNODB的,并且操作系统是linux 或 winodws的ntfs,一般都是如此在服务器上,则可以说理论上没有限制。
    一般来说,OLTP数据库随着时间的增长,数据会越来越多,常规的设计是定期做归档。仅保留业务需要的数据即可,比如1年的,或者2年的数据。2年前的数据归档,如果需要报表,则把数据同时生成到数据仓库即可。