当前位置: 首页 > 面试题库 >

如何在my.cnf文件中设置内存限制

慕凌
2023-03-14
问题内容

关闭。 这个问题是题外话。它当前不接受答案。

想改善这个问题吗? 更新问题,使其成为Stack Overflow
的主题。

7年前关闭。

如何在my.cnf文件中设置内存限制。我尝试了memory_limit = 64M。但是在重启MYSQL服务器时显示错误。任何人都可以帮助…

my.cnf

[mysqld]
datadir=/home/mysql/
tmpdir=/home/mysqltmp
#max_connections = 175 #was 175
max_connections = 80
#max_connect_errors = 350 #was 250
max_connect_errors = 250
safe-show-database
skip-locking
key_buffer = 1024M # was 128M
max_allowed_packet = 6M
myisam_sort_buffer_size = 64M

#old settings, for 900 ish max maxconn
#sort_buffer_size = 32M
#read_buffer_size = 32M
#read_rnd_buffer_size = 32M

sort_buffer_size = 5M
read_buffer_size = 5M
read_rnd_buffer_size = 5M

query_cache_size= 1024M
query_cache_limit= 16M
max_heap_table_size = 128M
tmp_table_size = 128M
thread_concurrency = 16
wait_timeout = 10
innodb_file_per_table
innodb_log_file_size = 10485760
open_files_limit = 8192
low_priority_updates = 1 
#log_slow_queries = /var/log/mysql_slow.log
#log_queries_not_using_indexes = 1
#slow_queries_log_file = /var/log/mysql_slow.log
memory_limit = 64M 
# who set these? these are NOT memory settings, but rather integer settings.
#table_cache = 1024M
#thread_cache_size = 8M

table_cache = 512
thread_cache_size = 8

[mysqldump]
quick
max_allowed_packet = 16M

[mysql]
no-auto-rehash

[isamchk]
key_buffer = 128M
sort_buffer_size = 128M
read_buffer = 2M
write_buffer = 2M

[myisamchk]
key_buffer = 128M
sort_buffer_size = 128M
read_buffer = 2M
write_buffer = 2M

问题答案:

没有像memory_limit MySQL
my.cnf文件中这样的变量。您只能从MySQL服务器系统变量中添加变量。阅读本文Mysql如何使用内存

这取决于您的MySQL服务器的RAM大小。您可以my.cnf根据以下用于MySQL内存需求计算的基本公式来相应地配置文件

key_buffer_size + (read_buffer_size + sort_buffer_size) * max_connections = K bytes of memory

您可能需要配置这些基本参数。

来自my.cnf文件的样本变量:

#MyISAM
key_buffer_size = 8G
sort_buffer_size = 1M
read_buffer_size = 1M
read_rnd_buffer_size = 2M
myisam_sort_buffer_size = 2M
join_buffer_size = 2M

#Innodb
innodb_buffer_pool_size = 16G
innodb_additional_mem_pool_size = 2G
innodb_log_file_size = 1G
innodb_log_buffer_size = 8M
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 30
innodb_file_format=barracuda


 类似资料:
  • 问题内容: 我正在尝试遵循本教程来启用对MySQL的远程访问。问题是,文件应该放在哪里?我正在使用Mac OS X Lion。 问题答案: MySQL论坛上的该线程说: 默认情况下,OS X安装不使用my.cnf,而MySQL仅使用默认值。 要设置自己的my.cnf,您可以直接在/ etc中创建一个文件。 OS X在提供了示例配置文件。 而且,如果您在此处找不到它们,MySQLWorkbench可

  • 问题内容: 我正在使用拥有者设置为的Apache Web服务器。我永远都不知道文件权限的最佳做法是什么,例如,当我创建新的Laravel 5项目时。 Laravel 5要求文件夹可写。我发现了很多不同的方法可以使其正常工作,而我通常以递归方式使其成为chmod。我知道这不是最好的主意。 官方文件说: Laravel可能需要配置一些权限:Web服务器中的文件夹, 并且需要Web服务器进行写访问。 这

  • 我使用的Apache Web服务器的所有者设置为。我从来不知道什么是文件权限的最佳实践,例如当我创建新的Laravel5项目时。 Laravel 5要求文件夹是可写的。我发现了许多不同的方法来使其工作,我通常以递归地使其chmod结束。我知道这不是最好的主意。 官方文件说: Laravel可能需要配置某些权限:和中的文件夹需要web服务器的写访问权限。 这是否意味着web服务器也需要访问和文件夹本

  • chrome调用了OOM-Killer:gfp_mask=0xd0,order=0,oom_score_adj=300 我在使用无头chrome浏览器+Selenium进行测试时得到了上面的错误。

  • 问题内容: 我有这样的HQL: 问题是它不理解关键字。有没有一种方法可以运行这样的查询而不将其分为两个子查询? 问题答案: 看一下如何在HQL中进行限价查询? 您不能用hql限制用hql编写的查询。您需要调用Query对象上的setMaxResults,我想这将阻止您对hql子查询施加限制。 这使您可以选择 将其编写为sql查询或 尝试寻找另一种编写hql查询的方法,以便您在子查询中不需要限制。

  • 问题内容: 我想通过在Plone站点中使用Python脚本设置许多文件夹的共享权限。 问题答案: 您需要查看模块以获取详细信息。Plone中的共享选项卡是该API的友好包装。 要为给定的用户标识添加角色,请致电: 其他两个重要方法是(完全替换当前角色集)和(删除所有角色)。查看已经定义了哪些本地角色也可能很方便。 您希望在进行此类更改后重新索引安全性信息: