我有一台运行IIS7和
MySQL的8GB内存的Windows 2008服务器.我一直在跟踪服务器上的内存,CPU和磁盘使用情况,我发现MySQL只使用250MB的RAM,保持磁盘非常繁忙,即使我有足够的免费ram.
在SQL Server中,我可以轻松设置我想要它使用的内存量,我在MySQL中寻找相同的设置.
如何配置MySQL以使用更多内存并减少CPU和磁盘使用?
table_cache是要更改的最有用的配置指令. MySQL每次访问一个表时,都会将表加载到缓存中.如果你有很多表,那么缓存它们会更快.
运行以下命令查看服务器变量:
show status;
并查看变量open_tables.如果这与table_cache值相同,并且opens_tables继续上升,则需要增加配置文件中的table_cache值.通过在高峰时段尝试这些变量,您将找到平衡点.您希望对其进行配置,以便在高峰时间,即使服务器已经运行很长时间,open_tables也会很少.
key_buffer_size也是一个很好的实验变量.此变量会影响索引缓冲区大小,并且使此变量更大会增加MySQL的索引处理速度.您可以使用show变量查看变量;再次命令,并将key_read_requests与key_reads进行比较.理想情况下,您希望这两个变量之间的比率尽可能低,您可以通过增加key_buffer_size的大小来实现.如果将此变量设置得更高,则您将更少地写入和直接读取磁盘,这是您主要关注的问题.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。