首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我应该改变mysql平台以获得更高的innodb_buffer_pool_size吗?

我应该改变mysql平台以获得更高的innodb_buffer_pool_size吗?
EN

Database Administration用户
提问于 2015-06-25 19:38:51
回答 1查看 90关注 0票数 2

目前,我正在Xampp (Windows)上运行160 g MySQL数据库。但Xampp对innodb缓冲池大小的上限为4G。我的电脑有16G内存。因此,如果我想充分利用资源,是否应该将数据库从Xampp移到Workbench?然后我可以设置10G缓冲器。

所以,我的计划是:

  1. 使用mysqldump创建备份文件。
  2. 完全卸载Xampp (否则MySQL将再次安装在Xampp目录中,我之前尝试过)
  3. 安装新的MySQL和工作台。
  4. 将转储文件恢复到新平台
  5. 将innodb缓冲池大小设置为>10G。

这有实际意义吗?

EN

回答 1

Database Administration用户

发布于 2015-06-25 20:14:53

对于160 GB的数据库,听起来并不像10 GB的缓存过度,但在某种程度上也取决于活动数据的大小。

我建议你看看罗兰多的帖子:Mysql应该有多大_缓冲器_池子_尺码?

在他讨论的特定情况下,为缓存分配了太多的内存。但是,他提供了相当多的细节,说明了要度量什么以及如何改进缓存的大小。

一些代码片段来自Rolando的文章:

计算缓存大小:

代码语言:javascript
复制
SELECT CEILING(Total_InnoDB_Bytes*1.6/POWER(1024,3)) RIBPS FROM
(SELECT SUM(data_length+index_length) Total_InnoDB_Bytes
FROM information_schema.tables WHERE engine='InnoDB') A;

在重置缓冲区大小并重新启动服务器后,请给它一些时间,然后运行以下命令以查看使用情况如何保持:

代码语言:javascript
复制
SELECT (PagesData*PageSize)/POWER(1024,3) DataGB FROM
(SELECT variable_value PagesData
FROM information_schema.global_status
WHERE variable_name='Innodb_buffer_pool_pages_data') A,
(SELECT variable_value PageSize
FROM information_schema.global_status
WHERE variable_name='Innodb_page_size') B;
票数 0
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/105171

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档