mysql查看session连接数和session状态命令: showprocesslist;
如果是root帐号,你能看到所有⽤户的当前连接。如果是其它普通帐号,只能看到⾃⼰占⽤的连接。showprocesslist;只列出前100条,如果想全列出请使⽤showfull processlist;
mysql> show processlist;
命令: showstatus;
命令:show status like'%下⾯变量%';
Aborted_clients由于客户没有正确关闭连接已经死掉,已经放弃的连接数量。
Aborted_connects 尝试已经失败的MySQL服务器的连接的次数。
Connections 试图连接MySQL服务器的次数。
Created_tmp_tables 当执⾏语句时,已经被创造了的隐含临时表的数量。
Delayed_insert_threads 正在使⽤的延迟插⼊处理器线程的数量。
Delayed_writes ⽤INSERT DELAYED写⼊的⾏数。
Delayed_errors ⽤INSERTDELAYED写⼊的发⽣某些错误(可能重复键值)的⾏数。
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 从磁盘物理读⼊⼀个键值的次数。mysql无法连接到服务器
Key_write_requests 请求将⼀个关键字块写⼊缓存次数。
Key_writes 将⼀个键值块物理写⼊磁盘的次数。
Max_used_connections 同时使⽤的连接的最⼤数⽬。
Not_flushed_key_blocks在键缓存中已经改变但是还没被清空到磁盘上的键块。
Not_flushed_delayed_rows 在INSERTDELAY队列中等待写⼊的⾏的数量。
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
命令:showvariables like'%max_connections%'
(这个办法在debian+mysql Ver 12.22 Distrib 4.0.22, for pc-linux (i386)
⾥实验了)
设置办法是在myf⽂件中,添加下⾯的最后红⾊的⼀⾏:
--------------------------------------------------------------------------------
[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;
rank函数怎么用2010也会看到max_connections。
下⾯是修改张⽼师的redhat9的⽅法:
先是mysql -uw01f -p
mysql>show variables;
看到max_connections 为100
mysql>exit;
vi /etc/myf
[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
例如:(其中前⾯有---的是原来的内容,⽽+++是修改过以后的)
--- ig Mon Sep 25 09:34:012000
+++ 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_log2>&1
+ --skip-locking -O max_connections=1000>> $err_log2>&1
else
nohup $ledir/mysqld --basedir=$MY_BASEDIR_VERSION--datadir=$DATADIR /
- --skip-locking "$@" >> $err_log2>&1
+ --skip-locking "$@" -O max_connections=1000>> $err_log2>&1
fi
if test ! -f $pid_file # This is removed if normalshutdown
then
然后关闭mysql重启它,⽤
/mysqladmin所在路径/mysqladmin -uroot -pvariables
猛犸象capacity什么意思
输⼊root数据库账号的密码后可看到
| max_connections | 1000 |
即新改动已经⽣效。
2.修改原代码
解开MySQL的原代码,进⼊⾥⾯的sql⽬录修改到下⾯⼀⾏:
{ "max_connections", (long*)&max_connections,1000,1,16384,0,1},
把它改为:
{ "max_connections", (long*)&max_connections,1000,1,16384,0,1},存盘退出,然后./configure ;make;make install可以获得同样的效果。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论