mysql连接数,缓存区大小,连接超时时间如何设置呢?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql连接数,缓存区大小,连接超时时间如何设置呢?相关的知识,希望对你有一定的参考价值。

参考技术A mysql目录下的 my.ini 可以修改 配置

max_connections=100 表示的是最大连接数
query_cache_size=0 表示查询缓存的大小
table_cache=256 表示表格的缓存
tmp_table_size=18M 表示临时表的缓存
thread_cache_size=8 表示线程的缓存

超时时间可以在连接字符串中写好 下面给出了一个实例
Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;default command timeout=20;
其他 连接字符串的实例给你一个连接
http://www.cnblogs.com/hcbin/archive/2010/05/04/1727071.html追问

其他参数呢?万一程序操作数据库异常,我怎么调节mysql所有参数,除了这几个,还有,具体数字如何决定呢?

追答

所有的参数的决定并不是固定的 要看你运行的数据量和IO数据量 决定的
你可以根据你平时的查询量来设置 一般来说我都会这样 如果对资源要求不大
那么我会 选择2倍的资源
query_cache_size还是越小 越好 做网站的话 也要看 情况而设置 如果 大量的重复查询那么这个可以适当设置大一些~

本回答被提问者和网友采纳
参考技术B 在配置文件my.ini中加上相应语句即可如:max_connections=100

下载图片没有关闭http输入流导致下载超时

在某次接入第三方厂商数据时,需要根据对方提供的URL地址下载图片,当数据量大时会遇到很多的下载图片超时问题,开始以为是第三方厂商的问题,对方排查了很久之后,说是我这边下载数据全部留在缓存区,导致缓存区满了,并通过 netstat -antp 命令查看缓存队列,证明是我这边的问题。通过此命令查看到数据接收队列数值很大,上网查询资料后说是采用了tcp长连接导致的, 于是检查代码,看看下载时是否采用长连接,于是发现下载时没有关闭输入流,修改代码后测试,问题解决。

代码(改前):

 

Url url = new URL(urlStr);

URLConnection urlConnection = url.openConnection();

InputStream in = urlConnection.getInputStream();

//读取流中的数据,写入文件

//函数退出,没有关闭流

代码(改后):

Url url = new URL(urlStr);

URLConnection urlConnection = url.openConnection();

try(InputStream in = urlConnection.getInputStream()){

//读取流中的数据,写入文件

}

//函数退出

 

以上是关于mysql连接数,缓存区大小,连接超时时间如何设置呢?的主要内容,如果未能解决你的问题,请参考以下文章

如何设置数据库的连接数和连接超时时间

下载图片没有关闭http输入流导致下载超时

mysql长时间不操作会不会连接超时?怎么改?

Druid连接池 查询慢 超时

使用memcache作为中间缓存区的步骤

IntelliJ IDEA修改Output输出缓存区大小应对:too much output to process