我有一个专门用于
MySQL的EC2 Large实例.
它将提供Joomla / Magento组合,因此它融合了InnoDB和MyISAM表.我过去只与MyISAM合作,因此不熟悉InnoDB使用的设置.迄今为止的实验并不富有成效,因为我一直在禁用InnoDB引擎.
我的实例运行的是Ubuntu 10.04 64位服务器版,并且有~7.5G的内存. MysqL目前使用约0.6%,性能稍差.我想将它配置为尽可能多地使用系统RAM.
测试一些设置我了解到InnoDB日志不能大于4G.
是否有人能够提供一些基本的InnoDB和MyISAM设置来启动我的.
谢谢
蒂姆
我在EC2上运行相同类型的MysqL服务器.不要触摸/etc/MysqL/my.cnf,而是将配置文件放入/etc/MysqL/conf.d/这将允许您管理特定引擎的更改,并在您提供有关配置方式的其他线索后给管理员.此外,它还可以轻松备份您所做的任何更改以及跟踪它们.
原文链接:https://www.f2er.com/ubuntu/348528.html/etc/MysqL/conf.d/innodb_MysqL.cnf
[MysqLd] # innodb settings innodb_additional_mem_pool_size = 12M innodb_buffer_pool_size = 2G innodb_file_per_table = 1 innodb_flush_log_at_trx_commit = 2 innodb_lock_wait_timeout = 180 innodb_log_buffer_size = 16M innodb_open_files = 512 innodb_thread_concurrency = 0
大多数这些设置都是非常标准的,你一定要看看Percona’s recommendations.你的系统可能会高达6G,但我从小开始.还有myisam表,我可能会停在4G.我不会触及innodb日志文件大小,那里有很少的收获.在初始碰撞后,增加log_buffer_size和addition_mem_pool也几乎没有回报.
此外,上述设置是为了获得更好的性能而不是为了事务一致性.假设您只运行一个Web应用程序,上述情况很好,但不适用于银行系统.
/etc/MysqL/conf.d/general_MysqL.cnf
[MysqLd] # general settings key_buffer = 384M
key_buffer对myisam和MysqL最有用一般默认它只有16M,在8GB机器上非常小.我再次以良好的跳跃开始,看看你是否有所改善.请记住,myisam缓冲区和innodb缓冲区不是共享的,所以它们需要总共少于你拥有的RAM量.稍后您可能会查看排序和读取缓冲区.