我的数据库insert和delete的频率比较大,数据量也比较大,大概没秒插入100条记录的样子
那我需要用哪种数据引擎了?myisam还是 InnoDB ?
另外,一个服务的多个数据库的InnoDB表 的记录是不是统统都存在一起的啊?
我有两个数据库database1和database2,一个存在D盘,一个存在E盘,但是,无论我插入多少条记录在表中(InnoDB),D盘和E盘的文件都没有增加大小,而c盘(datedir地址)中的ibdata1 在不停的增长。改成myisam后,才保存到D盘和E盘。

解决方案 »

  1.   


    每 秒100条,如果硬件没有限制的话,普通服务器来说两者都可,
    关键是你需要什么样的功能。MYISAM 是非事务的。面是INNODB是事务的。
      

  2.   

    如果你不做特殊设置,那在同一个MYSQL服务下的所有INNODB的数据都会在一个文件中。 你可以设置为每表一个单独的文件。你可以浏览一下手册中关于INNODB的介绍。
      

  3.   

    狼头大哥真是大好人,回复的这么快!没有事物需求,但要求每个数据库都可以移植出去。
    那么在这种情况下,
    insert、delete 和 select的速度,哪个占优?
    稳定性上,哪个好?
      

  4.   

    MYISAMinnodb (个人意见,并无定论) 总体是如果使用MYSQL一定要做好备份。
      

  5.   

    的数据库insert和delete的频率比较大,数据量也比较大,大概没秒插入100条记录的样子
    那我需要用哪种数据引擎了?myisam还是 InnoDB ?
    ===》
    如果你的内存量 足够大 介意使用InnoDB
    否则 你的insert命令这么频繁 就用myisam吧
    另外,一个服务的多个数据库的InnoDB表 的记录是不是统统都存在一起的啊?
    ==》
    看你用的是单表独立的表空间还是统一的空间。
    你的情况是属于统一的空间 是放在一起的。。你可以选择在配置文件里面修改下 统一空间的位置
      

  6.   

    配置
    innodb_file_per_table=1
    后,就像myisam引擎一样了
      

  7.   


    这个在哪里啊?还有就是:
    我每秒插入1000条数据时(未用批处理),select * 出现这种情况(未排序):前一秒插入的1000条信息到500多条,接着是第二秒插入的数条记录,然后又是第一秒插入的数据,后面也一样,select出来的顺序和insert进去的顺序不一样,还是insert进去的时候顺序乱了?谢谢。
      

  8.   

    win下是在 my.ini
    linux 是在 /etc/../my.cnf下 
      

  9.   

    select 语句 如果没有指定 order by  那么它不会保证显示的结果顺序和插入的顺序一致.
      

  10.   

    发现这样一个情况:表中有自增长字段id,select出来的是按照id顺序,但是顺序却不是按照先第一秒的1000条,然后第二秒的1000条,再第三秒的1000条,他们混在了一起
    这应该说明在插入的时候,顺序是混乱的吧?
      

  11.   

    id 自增字段 上面有primary key InnoDB引擎的默认是主键是聚集索引..
      

  12.   

    InnoDB stores its tables and indexes in a tablespace, which may consist of several files (or raw disk partitions).
    也就是说InnoDB把它的表和索引存储在表空间中,而这个表空间可以有一个或者多个文件组成。