mysql最大连接数配置文件|怎么查看和修改 MySQL 的最大连接数

|

㈠ MySQL服务器最大连接数如何设置才合理

MySQL服务器的连接数并不是要达到最大的100%为好,还是要具体问题具体分析,下面就对MySQL服务器最大连接数的合理设置进行了详尽的分析,供您参考。x0dx0a我们经常会遇见“MySQL:ERROR1040:Toomanyconnections”的情况,一种是访问量确实很高,MySQL服务器抗不住,这个时候就要考虑增加从服务器分散读压力,另外一种情况是MySQL配置文件中max_connections值过小:x0dx0amysql>showvariableslike&#39max_connections'x0dx0a+—————–+——-+x0dx0a|Variable_name|Value|x0dx0a+—————–+——-+x0dx0a|max_connections|256|x0dx0a+—————–+——-+x0dx0a这台MySQL服务器最大连接数是256,然后查询一下服务器响应的最大连接数:x0dx0amysql>showglobalstatuslike&#39Max_used_connections'x0dx0aMySQL服务器过去的最大连接数是245,没有达到服务器连接数上限256,应该没有出现1040错误,比较理想的设置是:x0dx0aMax_used_connections/max_connections*100%≈85%x0dx0a最大连接数占上限连接数的85%左右,如果发现比例在10%以下,MySQL服务器连接上线就设置得过高了。

㈡ MySQL修改最大连接数,没有my.ini文件,只有my-default,这怎么改

你好,第一种是通过命令行的方式mysql -h host -u user -p password mysql> show variables like 'max_connections';(查可以看当前的最大连接数)msyql> set global max_connections=1000;(设置最大连接数为1000,可以再次查看是否设置成功)mysql> exit(推出)但这种方式有个问题,就是设置的最大连接数只在mysql当前服务进程有效,一旦mysql重启,又会恢复到初始状态。因为mysql启动后的初始化工作是从其配置文件中读取数据的,而这种方式没有对其配置文件做更改。第二种修改配置文件使用这个方式,你首先要知道mysql是怎么加载mysql配置文件的。查看mysql加载配置文件的方法是这样的首先切换到mysql安装路径/bin目录中,然后在执行./mysqld –verbose –help | grep -A 1 'Default options' 来查看mysql启动时加载的配置文件。找到配置文件只要修改参数max_connections,将其改为max_connections=1000,然后重启MySQL即可。至于你没有my.cnf文件可能是你安装mysql的问题,可以把my-default.cnf文件拷贝一份到执行上面的命令的路径中

㈢ mysql中如何查看最大连接数max

第一种:命令行查看和修改最大连接数(max_connections)。mysql -uuser -ppassword(命令行登录MySQL)mysql>show variables like 'max_connections';(查可以看当前的最大连接数)msyql>set global max_connections=1000;(设置最大连接数为1000,可以再次查看是否设置成功)mysql>exit复制代码这种方式有个问题,就是设置的最大连接数只在mysql当前服务进程有效,一旦mysql重启,又会恢复到初始状态。因为mysql启动后的初始化工作是从其配置文件中读取数据的,而这种方式没有对其配置文件做更改。第二种:通过修改配置文件来修改mysql最大连接数(max_connections)。这种方式说来很简单,只要修改MySQL配置文件my.ini 或 my.cnf的参数max_connections,将其改为max_connections=1000,然后重启MySQL即可。但是有一点最难的就是my.ini这个文件在哪找。通常有两种可能,一个是在安装目录下,另一种是在数据文件的目录下,安装的时候如果没有人为改变目录的话,一般就在C:/ProgramData/MySQL往下的目录下,linux系统中一般在/etc目录下。

㈣ mysql数据库的最大连接数怎么查询

怎么查询mysql的最大连接数

查询命令为:

MySQL 默认的最大连接数为 100,可以在 mysql 客户端使用上述命令查看

此命令将得到类似以下的输出结果:

要对 mysql 的最大连接数进行修改,只需要在 my.cnf 配置文件里面修改 max_connections 的值,然后重启 mysql 就行。如果 my.ini 文件中没有找到 max_connections 条目,可自行添加以下条目

重启Mysql即可!

㈤ mysql中如何查看最大连接数max

1、通过命令行查看:show variables like "max_connections"; 2、查看配置文件my.cnf,max_connections就是最大连接数,如果没有,那证明你没有做相关设置,所以是系统默认的值。

㈥ 怎么查看和修改 MySQL 的最大连接数

MYSQL数据库安装完成后,默认最大连接数是100,一般流量稍微大一点的论坛或网站这个连接数是远远不够的,增加默认MYSQL连接数的方法有两个方法一:进入MYSQL安装目录 打开MYSQL配置文件 my.ini 或 my.cnf查找 max_connections=100 修改为 max_connections=1000 服务里重起MYSQL即可方法二:MySQL的最大连接数默认是100客户端登录:mysql -uusername -ppassword设置新的最大连接数为200:mysql> set GLOBAL max_connections=200显示当前运行的Query:mysql> show processlist显示当前状态:mysql> show status退出客户端:mysql> exit查看当前最大连接数:mysqladmin -uusername -ppassword variables

㈦ mysql默认最大连接数是多少

在使用MySQL数据库的时候,经常会遇到这么一个问题,就是“Can not connect to MySQL server. Too many connections”-mysql 1040错误,这是因为访问MySQL且还未释放的连接数目已经达到MySQL的上限。

通常,mysql的最大连接数默认是100, 最大可以达到16384。

在Windows下常用的有两种方式修改最大连接数。

第一种:命令行修改。

>mysql -uuser -ppassword(命令行登录MySQL)

mysql>show variables like &#39max_connections'(查可以看当前的最大连接数)

msyql>set global max_connections=1000;(设置最大连接数为1000,可以再次查看是否设置成功)

mysql>exit(推出)

这种方式有个问题,就是设置的最大连接数只在mysql当前服务进程有效,一旦mysql重启,又会恢复到初始状态。

因为mysql启动后的初始化工作是从其配置文件中读取数据的,而这种方式没有对其配置文件做更改。

第二种:修改配置文件。

这 种方式说来很简单,只要修改MySQL配置文件my.ini 或 myf的参数max_connections,将其改为max_connections=1000,然后重启MySQL即可。

但是有一点最难的就是my.ini这个文件在哪找。

通常有两种可能,一个是在安装目录下(这是比较理想的情况),另一种是在数据文件的目录下,安装的时候如果没有人为改变目录的话,一般就在C:/ProgramData/MySQL往下的目录下。

与连接数相关的几个参数:

在修改最大连接数的时候会有这样一个疑问—这个值是不是越大越好,或者设置为多大才合适?这个参数的大小要综合很多因素来考虑,比如使用的平台所支持的线程库数量(windows只能支持到2048)、服务器的配置(特别是内存大小)、每个连接占用资源(内存和负载)的多少、系统需要的响应时间等。

可以在global或session范围内修改这个参数。

连接数的增加会带来很多连锁反应,需要在实际中避免由此引发的负面影响。

首先看一下MySQL的状态:

mysql> status;

————–

mysql Ver 14.14 Distrib 5.5.15, for Win32 (x86)

Connection id: 1

Current database:

Current user: [email protected]

SSL: Not in use

Using delimiter: ;

Server version: 5.5.15 MySQL munity Server (GPL)

Protocol version: 10

Connection: localhost via TCP/IP

Server characterset: utf8

Db characterset: utf8

Client characterset: gbk

Conn. characterset: gbk

TCP port: 3306

Uptime: 1 hour 3 min 27 sec

Threads: 12 Questions: 18 Slow queries: 10 Opens: 33 Flush tables: 5 Open tab

les: 34 Queries per second avg: 6.256

————–

Open tables:34,即当前数据库打开表的数量是34个,注意这个34并不是实际的34个表,因为MySQL是多线程的系统,几个不同的并发连接可能打开同一个表,这就需要为不同的连接session分配独立的内存空间来存储这些信息以避免冲突。

因此连接数的增加会导致MySQL需要的文件描述符数目的增加。

另外对于MyISAM表,还会建立一个共享的索引文件描述符。

在MySQL数据库层面,有几个系统参数决定了可同时打开的表的数量和要使用的文件描述符,那就是table_open_cache、max_tmp_tables和open_files_limit。

mysql> show variables like &#39table_open%'

+——————+——-+

| Variable_name | Value |

+——————+——-+

| table_open_cache | 256 |

+——————+——-+

1 row in set (0.00 sec)

table_open_cache:256,这就是说所有的MySQL线程一共能同时打开256个表,我们可以搜集系统的打开表的数量的历史记录和这个参数来对比,决定是否要增加这个参数的大小。

查看当前的打开表的数目(Open tables)可用上边提到过的status命令,另外可以直接查询这个系统变量的值:

mysql> show status like &#39open_tables'

+—————+——-+

| Variable_name | Value |

+—————+——-+

| Open_tables | 3 |

+—————+——-+

1 row in set (0.00 sec)

Open_tables就是当前打开表的数目,通过flush tables命令可以关闭当前打开的表。

这个值如果过大,并且如果没有经常的执行flush tables命令,可以考虑增加table_open_cache参数的大小。

接下来看max_tmp_tables:

mysql> show variables like &#39max_tmp%'

+—————-+——-+

| Variable_name | Value |

+—————-+——-+

| max_tmp_tables | 32 |

+—————-+——-+

1 row in set (0.00 sec)

max_tmp_tables:32即单个客户端连接能打开的临时表数目。

查看当前已打开的临时表的信息:

mysql> show global status like &#39%tmp%table%'

+————————-+——-+

| Variable_name | Value |

+————————-+——-+

| Created_tmp_disk_tables | 0 |

| Created_tmp_tables | 11 |

+————————-+——-+

2 rows in set (0.00 sec)

根据这两个值可以判断临时表的创建位置,一般选取BLOB和TEXT列、Group by 和 Distinct语句的数据量超过512 bytes,或者union的时候select某列的数据超过512 bytes的时候,就直接在磁盘上创建临时表了,另外内存中的临时表变大的时候,也可能被MySQL自动转移到磁盘上(由tmp_table_size和max_heap_table_size参数决定)。

增加table_open_cache或max_tmp_tables 参数的大小后,从操作系统的角度看,mysqld进程需要使用的文件描述符的个数就要相应的增加,这个是由open_files_limit参数控制的。

mysql> show variables like &#39open_files%'

+——————+——-+

| Variable_name | Value |

+——————+——-+

| open_files_limit | 2670 |

+——————+——-+

1 row in set (0.00 sec)

但是这个参数是OS限制的,所以我们设定的值并不一定总是生效。

如果OS限制MySQL不能修改这个值,那么置为0。

如果是专用的MySQL服务器上,这个值一般要设置的尽量大,就是设为没有报Too many open files错误的最大值,这样就能一劳永逸了。

当操作系统无法分配足够的文件描述符的时候,mysqld进程会在错误日志里记录警告信息。

相应的,有两个状态变量记录了当前和历史的文件打开信息:

mysql> show global status like &#39%open%file%'

+—————+——-+

| Variable_name | Value |

+—————+——-+

| Open_files | 0 |

| Opened_files | 76 |

+—————+——-+

2 rows in set (0.00 sec)

MySQL为每个连接分配线程来处理,可以通过threads_connected参数查看当前分配的线程数量:

mysql> show status like &#39%thread%'

+——————————————+——-+

| Variable_name | Value |

+——————————————+——-+

| Delayed_insert_threads | 0 |

| Performance_schema_thread_classes_lost | 0 |

| Performance_schema_thread_instances_lost | 0 |

| Slow_launch_threads | 0 |

| Threads_cached | 0 |

| Threads_connected | 1 |

| Threads_created | 1 |

| Threads_running | 1 |

+——————————————+——-+

8 rows in set (0.00 sec)

比较threads_connected参数和前面提到的max_connections参数,也可以作为目前的系统负载的参照,决定是否需要修改连接数。

查看每个线程的详细信息:mysql>show processlist;对影响系统运行的线程:kill connection|query threadid的命令杀死。

㈧ mysql 如何更新mysql的最大连接数max

mysql的最大连接数可以通过设置max_connections的值来更新,具体操作如下。

1、执行如下命令登录mysql。

mysql-uroot-p说明:-uroot指明登录用户为root,-p需要密码验证。

㈨ 如何修改mysql的最大连接数

1、查看最大连接数的代码:

show variables like '%max_connections%';

2、修改最大连接数的代码:

set GLOBAL max_connections = 200;

在命令行中查看和修改 MySQL 的最大连接数,具体代码如下:

>mysql -uuser -ppassword(命令行登录MySQL)

mysql>show variables like 'max_connections';(查可以看当前的最大连接数)

msyql>set global max_connections=1000;(设置最大连接数为1000,可以再次查看是否设置成功)

mysql>exit

(9)mysql最大连接数配置文件扩展阅读

MySQL的系统特性:

1、使用 C和 C++编写,并使用了多种编译器进行测试,保证了源代码的可移植性。

2、支持 AIX、FreeBSD、HP-UX、Linux、Mac OS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris、Windows等多种操作系统。

3、为多种编程语言提供了 API。这些编程语言包括 C、C++、Python、Java、Perl、PHP、Eiffel、Ruby,.NET和 Tcl 等。

4、支持多线程,充分利用 CPU 资源。

5、优化的 SQL查询算法,有效地提高查询速度。

6、既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中。

7、提供多语言支持,常见的编码如中文的 GB 2312、BIG5,日文的 Shift_JIS等都可以用作数据表名和数据列名。

8、提供 TCP/IP、ODBC 和 JDBC等多种数据库连接途径。

9、提供用于管理、检查、优化数据库操作的管理工具。

10、支持大型的数据库。可以处理拥有上千万条记录的大型数据库。

11、支持多种存储引擎。

12、MySQL 是开源的,所以你不需要支付额外的费用。

13、MySQL 使用标准的 SQL数据语言形式。

14、MySQL 对 PHP 有很好的支持,PHP是比较流行的 Web 开发语言。

15、MySQL是可以定制的,采用了 GPL协议,你可以修改源码来开发自己的 MySQL 系统。


赞 (0)