2013-10-31 83 views
1

出于一些非常奇怪的原因,my.cnf文件中的我的table_cache以及query_cache_limit值都拒绝更改值,即使我修改了它们。MySQL table_cache拒绝更改值

例如,在mysqltuner以下建议所示:

query_cache_limit (> 1M, or use smaller result sets) 
table_cache (> 400) 
在my.cnf文件

但是我有:

query-cache-limit    = 8G 
table-open-cache    = 2048 

我重新启动mysql的,Apache和服务器尚未值拒绝更新。我在MySQL服务器上使用Percona 5.5 drop。

真的欢迎任何提示或建议。

感谢

回答

0

因为是有可能改变全球配置文件,它很可能是你设置一个更具体的配置文件被覆盖的值,如stated in the docs

请记住,即使MySQL确实在/etc/my.cnf中定位了一个my.cnf文件(全局到该机器上的所有MySQL服务器),它将继续搜索特定于服务器的文件,然后搜索用户特定的文件。你能想到的最后的配置设置为在/etc/my.cnf中,MySQL的数据-DIR/my.cnf中,和〜/ .my.cnf文件

您既可以删除任何结果在更具体的文件中设置值,或者在mysql用户的特定配置文件中设置值。

0

我有同样的问题。 有解决方案吗?

正如他在答复中提到@NDM,我试图寻找另一个CNF文件

find/-type f -name *.cnf* 
/etc/mysql/debian.cnf 
/etc/mysql/conf.d/mysqld_safe_syslog.cnf 
/etc/mysql/conf.d/my5.6.cnf 
/etc/mysql/my.cnf 
/etc/texmf/fmt.d/50cyrtexinfo.cnf 
/etc/ssl/openssl.cnf 
/usr/share/doc/mysql-server-5.6/examples/my-default.cnf 
/root/.my.cnf 
/var/lib/mysql/auto.cnf 

在任何的这个文件没有mysql设置过载。所以我很困惑。 另外我更改innod_db_buffer_pool_size,并且在mysql重新启动后它改变了!但是table_open_cache没有!

修订半小时后

我找到了解决办法! 这都是因为debian系统打开文件限制设置。 这里描述 https://wied.it/blog/increase-max-open-files-in-debian-squeeze-too-many-open-files-ulimit-n-limits-conf.html

或者这里 https://rtcamp.com/tutorials/linux/increase-open-files-limit/

# ulimit -n 4096 
Relogin and verify: 

# ulimit -Sn # soft limit 
# ulimit -Hn # hard limit 

,MySQL的重启之后你可以改变它。