免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 5987 | 回复: 5
打印 上一主题 下一主题

如何把ibdata1和ib_logfile0,ib_logfile1在另一块硬盘上生成? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-09-12 12:44 |只看该作者 |倒序浏览
系统内核是2.6.15, mysql版本是5.0.20
现在系统是装在一块256MB的CF卡上,因为担心ibdata1,ib_logfile0,ib_logfile1这几个文件太占空间,而且时间久了,CF卡就放不下了,所以又装了一块硬盘,希望能够把这几个文件直接在这块硬盘上生成,而不是在CF卡上。请问该如何设置?谢谢!!

[ 本帖最后由 setsuna 于 2006-9-12 12:47 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2006-09-12 13:05 |只看该作者
在保证数据一致的情况下将这些文件拷贝过去,然后修改my.cnf中的配置 innodb_data_home_dir 和  innodb_data_file_path 即可。

论坛徽章:
0
3 [报告]
发表于 2006-09-12 13:39 |只看该作者
是不是按照这个做?

15.2.14.2. 为表空间使用原始设备

你也可以使用原始磁盘分区作为表空间数据文件。通过使用原始磁盘,你可以在Windows和一些Unix系统上执行non-buffered I/O 而无须文件系统开支,这样可以改善性能

当你创建一个新数据文件之时,你必须在innodb_data_file_path里紧接着数据文件尺寸之后放置关键字newraw。分区必须至少和你指定的尺 寸一样大,注意,在InnoDB中,1MB是1024x1024字节, 但是在磁盘规格中,1MB通常意为1,000,000字节。

[mysqld]

innodb_data_home_dir=

innodb_data_file_path=/dev/hdd1:3Gnewraw;/dev/hdd2:2Gnewraw

下次你启动服务器之时,InnoDB注意到关键字newraw并初始化新分区。但是仍然并不创建或改变任何InnoDB表。另外,当你重启服务器之时,InnoDB重新初始化分区,你的改变会丢失。(从3.23.44启动,作为一个安全措施, 当用newraw指定任何分区之时,InnoDB阻止用户修改数据)。

InnoDB初始化新分区之后,停止服务器,在对行的数据文件规格中改变newraw:

[mysqld]

innodb_data_home_dir=

innodb_data_file_path=/dev/hdd1:5Graw;/dev/hdd2:2Graw

然后重启动服务器,并且InnoDB允许做改变。

论坛徽章:
0
4 [报告]
发表于 2006-09-12 14:42 |只看该作者
不用,直接拷贝过去即可,注意我上一个贴中提到的保持一致性前提条件下,并且 innodb_data_file_path 中对数据文件大小的参数也不能改变

论坛徽章:
0
5 [报告]
发表于 2006-09-12 18:51 |只看该作者
直接拷贝过去后,如果我原来的设置是这样的,
innodb_data_file_path=ibdata1:10M:autoextend:max:500M
是不是只需要改成这样
innodb_data_file_path=/dev/hda1/ibdata1:10M:autoextend:max:500M
就可以了?

论坛徽章:
0
6 [报告]
发表于 2006-09-12 22:10 |只看该作者
修改 innodb_data_home_dir 为 innodb_data_home_dir=/dev/hda1/ 即可,那个参数不用修改
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP