`
sskhnje
  • 浏览: 16958 次
  • 性别: Icon_minigender_1
  • 来自: 昆明
文章分类
社区版块
存档分类
最新评论

转:Mysql 查看连接数,状态

 
阅读更多

转:http://blog.csdn.net/starnight_cbj/article/details/4492555

 

命令: show processlist; 
如果是root帐号,你能看到所有用户的当前连接。如果是其它普通帐号,只能看到自己占用的连接。 
show processlist;只列出前100条,如果想全列出请使用show full processlist; 
mysql> show processlist;

 

命令: show status;

命令:show status like '%下面变量%';

Aborted_clients 由于客户没有正确关闭连接已经死掉,已经放弃的连接数量。 
Aborted_connects 尝试已经失败的MySQL服务器的连接的次数。 
Connections 试图连接MySQL服务器的次数。 
Created_tmp_tables 当执行语句时,已经被创造了的隐含临时表的数量。 
Delayed_insert_threads 正在使用的延迟插入处理器线程的数量。 
Delayed_writes 用INSERT DELAYED写入的行数。 
Delayed_errors 用INSERT DELAYED写入的发生某些错误(可能重复键值)的行数。 
Flush_commands 执行FLUSH命令的次数。 
Handler_delete 请求从一张表中删除行的次数。 
Handler_read_first 请求读入表中第一行的次数。 
Handler_read_key 请求数字基于键读行。 
Handler_read_next 请求读入基于一个键的一行的次数。 
Handler_read_rnd 请求读入基于一个固定位置的一行的次数。 
Handler_update 请求更新表中一行的次数。 
Handler_write 请求向表中插入一行的次数。 
Key_blocks_used 用于关键字缓存的块的数量。 
Key_read_requests 请求从缓存读入一个键值的次数。 
Key_reads 从磁盘物理读入一个键值的次数。 
Key_write_requests 请求将一个关键字块写入缓存次数。 
Key_writes 将一个键值块物理写入磁盘的次数。 
Max_used_connections 同时使用的连接的最大数目。 
Not_flushed_key_blocks 在键缓存中已经改变但是还没被清空到磁盘上的键块。 
Not_flushed_delayed_rows 在INSERT DELAY队列中等待写入的行的数量。 
Open_tables 打开表的数量。 
Open_files 打开文件的数量。 
Open_streams 打开流的数量(主要用于日志记载) 
Opened_tables 已经打开的表的数量。 
Questions 发往服务器的查询的数量。 
Slow_queries 要花超过long_query_time时间的查询数量。 
Threads_connected 当前打开的连接的数量。 
Threads_running 不在睡眠的线程数量。 
Uptime 服务器工作了多少秒。

 

 

 

My.ini配置 虚拟内存

 

 

 

 

innodb_buffer_pool_size=576M   ->128M InnoDB引擎缓冲区

query_cache_size=100M             ->32 查询缓存
tmp_table_size=102M                  ->32M 临时表大小
key_buffer_size=16m                  ->8M

 

设置max_connections

命令:show variables like '%max_connections%'
(这个办法在debian+mysql  Ver 12.22 Distrib 4.0.22, for pc-linux (i386)
里实验了)
设置办法是在my.cnf文件中,添加下面的最后红色的一行:

 


--------------------------------------------------------------------------------

 

[mysqld] 
port=3306 
#socket=MySQL 
skip-locking 
set-variable = key_buffer=16K 
set-variable = max_allowed_packet=1M 
set-variable = thread_stack=64K 
set-variable = table_cache=4 
set-variable = sort_buffer=64K 
set-variable = net_buffer_length=2K 
set-variable = max_connections=32000 
(在院里的DELL机器mysql4.0里的语法不同
max_connecionts=2000
直接这么写就好了

 

 

--------------------------------------------------------------------------------

 

修改完毕后,重启MySQL即可。当然,为了确保设置正确,应该查看一下max_connections。

注意: 
1、虽然这里写的32000。但实际MySQL服务器允许的最大连接数16384; 
2、除max_connections外,上述其他配置应该根据你们系统自身需要进行配置,不必拘泥; 
3、添加了最大允许连接数,对系统消耗增加不大。 
4、如果你的mysql用的是my.ini作配置文件,设置类似,但设置的格式要稍作变通。


 

用mysqld --help 可以查看到max_connections 变量。 
或者 mysql -uuser -p
后mysql>show variables;
也会看到max_connections 。
   

下面是修改张老师 的redhat9的方法:

先是mysql -uw01f -p
mysql>show variables;
看到max_connections 为100
mysql>exit;
vi /etc/my.cnf
    [mysqld]
set-variable=max_connections=250  #加入这些内容
:wq

/etc/init.d/mysqld restart
好了,行了。

 

下面的是抄的,我用不了
mysql的最大连接数默认是100, 这个数值对于并发连接很多的数据库应用是远远不够的,当连接请求大于默认连接数后,就会出现无法连接数据库的错误,因此我们需要把它适当调大一些, 有两种办法可以修改最大连接数,一种是修改safe_mysqld,另一种是直接修改原代码并重新编译。下面我们就分别介绍这两种方法:

1.修改safe_mysqld 
找到safe_mysqld编辑它,找到mysqld启动的那两行,在后面加上参数 :

-O max_connections=1000

例如 :(其中前面有---的是原来的内容,而+++是修改过以后的) 
--- safe_mysqld.orig Mon Sep 25 09:34:01 2000 
+++ safe_mysqld Sun Sep 24 16:56:46 2000 
@@ -109,10 +109,10 @@ 
if test "$#" -eq 0 
then 
nohup $ledir/mysqld --basedir=$MY_BASEDIR_VERSION --datadir=$DATADIR / 
- --skip-locking >> $err_log 2>&1 
+ --skip-locking -O max_connections=1000 >> $err_log 2>&1 
else 
nohup $ledir/mysqld --basedir=$MY_BASEDIR_VERSION --datadir=$DATADIR / 
- --skip-locking "$@" >> $err_log 2>&1 
+ --skip-locking "$@" -O max_connections=1000 >> $err_log 2>&1 
fi 
if test ! -f $pid_file # This is removed if normal shutdown 
then 
然后关闭mysql重启它,用 
/mysqladmin所在路径/mysqladmin -uroot -p variables 
输入root数据库账号的密码后可看到 
| max_connections | 1000 | 
即新改动已经生效。

2.修改原代码

解开MySQL的原代码,进入里面的sql目录修改mysqld.cc找到下面一行:

{ "max_connections", (long*) &max_connections,1000,1,16384,0,1},

把它改为:

{ "max_connections", (long*) &max_connections,1000,1,16384,0,1},

存盘退出,然后./configure ;make;make install可以获得同样的效果。

 

分享到:
评论

相关推荐

    修改MYSQL最大连接数的3种方法

    ### 修改MYSQL最大连接数的3种方法 在MySQL数据库服务器中,`max_connections` 参数用于控制同时能够连接到该数据库的最大客户端数量。当一个应用程序或系统需要处理大量并发连接时,调整这一参数变得尤为重要。...

    mysql的最大连接数修改方法_默认是100, 最大可以达到16384

    MySQL数据库在运行过程中可能会遇到“Too many connections”的错误,这表示当前系统已经达到其允许的最大连接数。默认情况下,MySQL的最大连接数是100,但根据需求,这个限制可以被调整到最高16384。理解如何修改这...

    mysql中status状态说明

    1、连接数  1.1 show variables like ‘max_connections’;  1.2、 show global status like ‘Max_used_connections’; 1.3、设置最大连接数值方法:    mysqld服务器维护两种变量: 全局变量影响服务器的全局...

    MySQL常用查询状态命令

    查看服务器状态可以帮助我们了解MySQL服务器的运行情况,包括但不限于运行时间、线程数、查询次数等。可以通过执行以下命令来实现: ```sql mysql> STATUS; ``` 这个命令返回的信息非常全面,其中包括了服务器的版本...

    mysql巡检报告.pdf

    * 检查点:检查 MySQL 数据库连接统计,包括打开的连接数、中止的连接数和中止的客户端数 * 检查方法:使用 show status 命令查看连接统计 * 结果解释:检查结果正常,Aborted_connects 0,Threads_connected 2,Max...

    mysql数据库连接参数

    7. `minIdle`: 连接池最小空闲连接数,确保系统随时有足够的连接供使用。 8. `initialSize`: 初始化时创建的连接数。 9. `testOnBorrow`: 在从池中借用连接时是否进行有效性检查。如果设置为`true`,可以确保每次...

    快速增加MYSQL数据库连接数负载能力的方法分享

    以下是一些提高MySQL数据库连接数负载能力的方法: 1. **调整InnoDB并发线程数**: 默认情况下,InnoDB存储引擎会根据系统资源自动管理线程并发数。你可以通过设置`innodb_thread_concurrency`参数来限制并发线程...

    mysql连接池

    MySQL连接池是数据库管理中的一个重要概念,主要用于优化数据库应用程序的性能和效率。它是一组预先建立的数据库连接,这些连接可以被多个用户或线程共享,而不是为每次数据库操作都创建新的连接。这样做的好处是...

    MySql状态查看方法 MySql如何查看连接数和状态?

    本篇文章将详细介绍如何查看MySQL的状态,包括连接数和各种关键性能指标。 首先,要进入MySQL的命令行界面,你需要找到MySQL的安装目录下的`bin`目录,并通过命令行导航到该目录。然后,你可以使用以下命令登录...

    CentOS 7中MySQL连接数被限制为214个的解决方法

    3. 监控数据库状态:定期检查数据库的连接数,及时发现并处理异常情况。 总的来说,解决MySQL在CentOS 7中的连接数限制问题,需要理解系统级限制和数据库配置之间的关系,以及如何有效地调整这些参数来平衡性能和...

    曹金成:mysql运行监控全解

    - **`SHOW STATUS`** 和 **`SHOW VARIABLES`**:查看MySQL服务器状态和配置信息。 - **`EXPLAIN`**:分析SQL查询执行计划,优化查询性能。 - **`pt-query-digest`** (Percona Toolkit):分析慢查询日志,找出性能...

    cacti模板一:mysql监控模板

    对于MySQL监控,Cacti可以收集如CPU使用率、内存使用、查询速率、连接数等关键指标。 安装Cacti后,你需要创建一个专门针对MySQL的模板。这个模板通常包含以下部分: 1. **数据源(Data Queries)**:这是Cacti...

    mysql语法文档

    * MYSQL *mysql_real_connect(MYSQL *mysql,const char *host,const char *user,const char *password,const char *db,unsigned int port,const char *unix_socket,unsigned int client_flag):建立mysql连接 ...

    MySQL_5.1_zh.rar_MYSQL_MySQL_5.1_zh_mysql 中文

    8. **更大的表和索引**:MySQL 5.1 增加了单表的最大记录数和索引长度,适应了大数据量的需求。 9. **XML 支持**:MySQL 5.1 提供了对 XML 文档的存储和检索功能,方便与 XML 应用程序集成。 10. **安全性和认证**...

    mysql连接池java源码

    - **PoolConfig**:配置参数,如最大连接数、最小连接数、超时时间等。 4. **Java连接池的工作流程** - **初始化**:根据配置参数预先创建一定数量的连接,并将它们添加到连接池中。 - **获取连接**:当应用需要...

    mysql 数据库连接池

    - 监控连接池状态,如当前连接数、等待队列长度等,以便调整参数。 - 定期进行性能测试,找出瓶颈并优化。 - 使用日志或专门的监控工具(如Spring Boot Actuator)收集和分析连接池的运行数据。 6. **事务管理**...

    mysqlproxool连接池

    - 连接池监控:提供监控工具,可以查看当前连接池状态,如活动连接数、等待连接数等。 - 断线检测:定期检查连接的有效性,防止因长时间未使用导致的无效连接占用资源。 3. **集成MyEclipse**: 在MyEclipse中,...

    mysql优化连接数防止访问量过高的方法

    MySQL数据库在面临高访问量时可能会遇到“ERROR 1040: Too many connections”的问题,这通常是由于并发连接数过多导致的。优化MySQL的连接数管理是解决此问题的关键,下面将详细介绍如何进行优化。 首先,理解...

    mysql修改最大连接数等优化mysql

    本文将详细介绍在Linux环境下对MySQL进行性能调优的方法,主要聚焦于修改最大连接数、线存缓存数等方面,以减少MySQL服务器的资源消耗并提升其整体性能。 #### 二、理解关键配置参数 在深入讨论具体的优化步骤之前...

Global site tag (gtag.js) - Google Analytics