环境:JSF2,Hibernate持久化,MySQL
我有一个数据库,由于带有图像数据的表格,所以数据库很快。从不搜索该数据,但只能通过id直接访问。问题是它保留在数据库中,因此扩大了备份和数据库的运行时内存使用量。
我认为可能有多种解决方案:
但我还没有找到办法。请指教。
谢谢, Milo van der Zee
答案 0 :(得分:0)
存储类型取决于MySQL中的存储引擎。只有具有MEMORY存储引擎的表存储在RAM中,其他表存储在磁盘上。
在select查询中,您可以使用SELECT SQL_NO_CACHE
告诉MySQL不要在MySQL查询缓存中缓存查询数据。
您可以通过在表上定义分区来对表进行分区。这将使插入和选择更快。
您还可以创建像table_name_2012_07_20这样的日常表和具有旧日期的存档表,并以压缩格式存储数据,您可以使用存档存储引擎,或者如果您使用的是MyIsam存储引擎,则执行myisamchk或myisampack以节省磁盘空间硬盘。