首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • 关于mysql中InnoDB表类型的最大容量问题
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • tssungeng
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    • 结帖率:
    发表于:2008-08-21 17:59:14 楼主
    如果我使用了InnoDB表类型,是不是不用管表的大小的问题了?是不是如果超过存储的2G上限mysql就会自动分一个新的文件来存储更多的信息?
    另外,这种InnoDB表类型的表,在linux下恢复能不能直接把表直接copy到对应文件目录就OK?
    100  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • hrb2008
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 22:53:361楼 得分:0
    InnoDB
    表的大小只受限于操作系统文件的大小,一般为 2GB
    InnoDB表类型的表数据存放在mysql中的ibdata1文件里。将此文件拷到新环境即可。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • java_xinjun
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 23:35:362楼 得分:0
    引用 1 楼 hrb2008 的回复:
    InnoDB
    表的大小只受限于操作系统文件的大小,一般为 2GB
    InnoDB表类型的表数据存放在mysql中的ibdata1文件里。将此文件拷到新环境即可。

    据我所了解是不可以的,InnoDB也有日志文件,
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • hrb2008
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-22 09:29:233楼 得分:0
    进/var/lib/mysql 下,拷备ibdata1 及包含.frm .MYD .MYI的数据库文件到新的mysql路径下,想要日志拷备 ib_logfile0 ib_logfile1 存储过程之类的存在mysql文件夹下。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • tssungeng
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-22 10:12:594楼 得分:0
    我用MyISAM类型测试了一下 我的是rh linux as3系统,mysql是5.1,现在一张单独的myIsam表已经有3.2G了,但是还能继续添加。
    那么MyIsam在rh linux as3中的最大表空间又是多少呢?
    我刚才找到一句话:
    Mysql有一个参数myisam_data_pointer_size,在mysql4中它的默认值为4,在mysql5中默认值为 6,所以在 mysql4中mysql表默认能达到的最大值为2的32(每个字节8位,8*4=32)次方,即4GB,而在mysql5中,mysqk表默认能达到的最大值为2的48次方,好像是65536TB吧。
    有道理没?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • wwwwb
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    • 9

      10

      12

    发表于:2008-08-22 10:33:535楼 得分:0
    InnoDB 给 MySQL 提供了具有事务(commit)、回滚(rollback)和崩溃修复能力(crash recovery capabilities)的事务安全(transaction-safe (ACID compliant))型表。InnoDB 提供了行锁(locking on row level),提供与 Oracle 类型一致的不加锁读取(non-locking read in SELECTs)。这些特性均提高了多用户并发操作的性能表现。在InnoDB表中不需要扩大锁定(lock escalation),因为 InnoDB 的列锁定(row level locks)适宜非常小的空间。InnoDB 是 MySQL 上第一个提供外键约束(FOREIGN KEY constraints)的表引擎。

    InnoDB 的设计目标是处理大容量数据库系统,它的 CPU 利用率是其它基于磁盘的关系数据库引擎所不能比的。在技术上,InnoDB 是一套放在 MySQL 后台的完整数据库系统,InnoDB 在主内存中建立其专用的缓冲池用于高速缓冲数据和索引。 InnoDB 把数据和索引存放在表空间里,可能包含多个文件,这与其它的不一样,举例来说,在 MyISAM 中,表被存放在单独的文件中。InnoDB 表的大小只受限于操作系统的文件大小,一般为 2 GB。
    修改 删除 举报 引用 回复

    网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
    北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
    世纪乐知(北京)网络技术有限公司 提供技术支持
    Copyright © 2000-2008, CSDN.NET, All Rights Reserved