安装MySQL5.5时选择自定义安装路径E:MySQL\MySQL Server 5.5,安装完后发现数有两个数据文件目录,分别是E:\MySQL\MySQL Server 5.5\data和C:\ProgramData\MySQL\MySQL Server 5.5\data,另外E:\MySQL Datafiles目录下发现有一个ibdata1
问题1:请问这两个data目录有什么区别?
问题2:如何在安装时指定datadir?
问题3:如果安装后指定datadir,比如datadir="E:/MySQL/MySQL Server 5.5/data/",那么C:\ProgramData\MySQL\MySQL Server 5.5\data目录是否可以覆盖E:\MySQL\MySQL Server 5.5\data?
问题4:E:\MySQL Datafiles目录下的ibdata1是什么文件,如何在安装时指定它的路径?它和
C:\ProgramData\MySQL\MySQL Server 5.5\data下的ibdata1好像大小一样,为什么会多出这个文件?

解决方案 »

  1.   

    关于E:\MySQL Datafiles目录下有一个ibdata1,这个应该是和我在安装时修改InnoDB tablespace settings有关,请问这个设置和datadir有什么关系
      

  2.   

    以 datadir 指向的为准。
      

  3.   

    安装时不能指定datadir吗?难道只能安装好后手动修改配置文件并拷贝相应的数据文件目录吗?
      

  4.   

    ibdata1是MySQL的数据文件,如果没有特别配置,那么所有的数据都会存储在这个文件中,并且即使数据删除也不会释放空间。如果比较在意这个,建议调整innodb_file_per_table参数。
      

  5.   

    1、E:\MySQL\MySQL Server 5.5\data 为安装 MYSQL 数据库目录, C:\ProgramData\MySQL\MySQL Server 5.5\data 为数据库数据缓存目录. 
    2、datadir 在安装时, 指定安装目录即可;
    3、两个目录在第一点以指明是干什么用的, 不能覆盖
    4、如果你使用了的 MYSQL 表类型为 INNODB (可回滚), 这个是单文件操作所有插入数据库数据都保存在这个文件中, 即使删除数据也不会释放空间, 可用 innodb_file_per_table 参数进行调整文件大小