连接数

MySql主要性能指标说明

我怕爱的太早我们不能终老 提交于 2020-01-24 18:33:54
在项目当中数据库一般都会成为主要的性能与负载瓶颈,那么针对数据库各项性能指标的监控与对应的优化是开发与运维人员需要面对的主要工作,而且这部分的工作会贯穿项目从开发到运行的整个周期里。 这篇文章中我们对MySql数据库中的几个主要的性能指标的计算与统计进行下说明与总结。 在MySql中通过show global status可以得到很多的性能指标项,从中我们可以可以抽取需要关注的指标项: 1、CPU、内存使用率、磁盘占用空间 CPU、内存、磁盘这三项是我们能够看到的最直观的指标,也是MySql运行状态的整体体现,一旦我们的数据库服务器这三项出现不正常的波动,必然会影响项目的稳定与性能,从而就需要我们对项目与MySql进行合理配置与优化。 2 、创建的连接数、连接的连接数、连接缓存数、连接活跃数 Threads_created: 通过show global status like "Threads_created"可以查看已经创建的连接数,这个顾名思义就是MySql已经创建的总连接数; Threads_connectd: 通过show global status like "Threads_connectd"可以查看已经连接的连接数,这个值等于show processlist; Threads_catched: 通过show global status like "Threads

MySQL数据库出现too many connections问题时如何解决

ⅰ亾dé卋堺 提交于 2020-01-24 05:12:28
报错 当要连接mysql数据库时,发现连接不上并报出 “Can not connect to MySQL server. Too many connections”-mysql 1040 错误 这是因为访问mysql且还未释放的连接数目已经达到mysql的上限 如何解决 首先查看当前数据库最大连接数 show variables like ‘max_connections’; 可以看到当前的最大连接数是2000 查看当前所有用户的连接概况 _show processlist; _ 如果是root帐号,你能看到所有用户的当前连接。如果是其它普通帐号,只能看到自己占用的连接 只列出前100条,如果想全列出请使用 show full processlist; 可以看到当前的所有用户的总连接数,如何你出现了too many connections的问题,会发现目前的总连接数非常接近最大连接数 修改最大连接数 set GLOBAL max_connections = 5000; 如果服务器可以的话,将最大连接数修改大,修改之后,再查询一次最大连接数,会发现max_connections已经变成改大之后的数值 修改mysql配置文件my.cnf 上述完成的操作只是临时修改了mysql数据库的最大连接数,一旦数据库重启就会失效,因为mysql启动后会从其配置文件中读取数据的

阿里云centos7.3学生机安装jdk、mariadb、tomcat

放肆的年华 提交于 2020-01-23 21:25:31
一、安装jdk (1)下载解压安装包 由于1.8版本适用范围最广,这里安装jdk1.8版本,先下载安装包。 附百度云下载链接 链接:https://pan.baidu.com/s/1_A1pCLXvCMs5SxmpHPPYfg 提取码:4e9h 在/usr/local/目录下创建一名为java的文件夹,将安装包移入该文件夹。 先转到需要解压的目录下 cd /usr/local/java 解压安装包 tar -zxvf jdk-8u231-linux-x64.tar.gz (2)添加环境变量 打开配置文件 vim /etc/profile 输入i进行编辑 在末尾加入 export JAVA_HOME=/usr/local/java/jdk1.8.0_231 export JRE_HOME=${JAVA_HOME}/jre export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin export PATH=$PATH:${JAVA_PATH} 编辑完毕后ctrl+c,输入:wq!回车退出 使配置文件生效 source /etc/profile (3)查看是否配置成功 分别输入java -version和$JAVA_HOME

完美解决 mysql too many connections(亲测有效)

一个人想着一个人 提交于 2020-01-23 07:06:48
———— 1 start 1. 错误 too many connections 如下 (1)首先我们知道出现这种情况使用 mysql -u root -p 的方式进行登录连接数据库是不行的 2.因此我们先使用如下方式里连接上数据库 (1)首先初始化mysql,发现 /var/lib/mysql / 这个目标路径已经存在 /var/lib/mysql/ ,导致无法初始化。 (2)解决步骤如下 首先进入local目录下,使用 cd /usr/local 然后删除 /var/lib/mysql 文件夹, 使用 rm -rf /var/lib/mysql 最后重启数据库mysql ,使用 service mysqld restart 这里需要注意的是,用户的登录密码也会初始化,这里如果初始化密码不记得了可以直接 重新设置密码,重置密码不懂的,可以看我的另一篇博客 传送门-> 腾讯云服务器重置mysql密码-亲测有效 3. 之后就可以使用 mysql -u root -p 登录连接mysql了 ————1 end ### 接下来就直接使用set 一顿操作 ————2 start 4.设置mysql的连接属性值 1、 mysql -u root -p 回车输入密码进入mysql 2、 show processlist; 查看连接数,可以发现有很多连接处于sleep状态,这些其实是暂时没有用的

Mycat占用mysql连接数过多

血红的双手。 提交于 2020-01-22 23:14:25
背景:mariadb,mycat中间件。 问题:DB连接数过多;开发使用程序使用连接池连mycat; DB待优化项: interactive_timeout,wait_timeout 都是8小时默认值。 mycat配置:100个分片库,和其他业务库。现在分片库用到16分片,后面尚未使用。 当前DB最大连接数:3000 mycat 版本:当前线上的mycat版本是1.5.8版本,推荐以后线上使用最稳定的 mycat1.6.5版本。 经DB和开发碰面了解 这两个timeout时间不能缩短,所以常规的优化手段不能使用: 正常DB连接数1000,数据库两个timeout为300--500,参数可以全局动态生效。 公司线上DB前段时间建总出现连接数过多问题,正常来说连接数1000,已经能够满足大部分需求。 正常手段无法使用的时候,那么就要找到DB为啥连接数过多。 1. 审计日志 DB上部署过审计日志,审计日志部署请移步: 审计日志部署 ,审计日志中可以查看到做坏事的坏小子是谁! 因为时间关系,未保存。但是从审计日志中发现大量访问连接sql就是'select 1' ,也是mycat连接mysql的连接。 且该链接连的是大量尚未使用的物理库。 至此审计日志只能判断到这里。 2. DB层面 mariadb物理库 information_schema 中processlist表记录连接相关信息,比如

dbcp的基本配置

牧云@^-^@ 提交于 2020-01-22 15:51:43
initialSize :连接池启动时创建的初始化连接数量(默认值为0) maxActive :连接池中可同时连接的最大的连接数(默认值为8,调整为20,高峰单机器在20并发左右,自己根据应用场景定) maxIdle:连接池中最大的空闲的连接数,超过的空闲连接将被释放,如果设置为负数表示不限制(默认为8个,maxIdle不能设置太小,因为假如在高负载的情况下,连接的打开时间比关闭的时间快,会引起连接池中idle的个数 上升超过maxIdle,而造成频繁的连接销毁和创建,类似于jvm参数中的Xmx设置) minIdle:连接池中最小的空闲的连接数,低于这个数量会被创建新的连接(默认为0,调整为5,该参数越接近maxIdle,性能越好,因为连接的创建和销毁,都是需要消耗资源的;但是不能太大,因为在机器很空闲的时候,也会创建低于minidle个数的连接,类似于jvm参数中的Xmn设置) maxWait :最大等待时间,当没有可用连接时,连接池等待连接释放的最大时间,超过该时间限制会抛出异常,如果设置-1表示无限等待(默认为无限,调整为60000ms,避免因线程池不够用,而导致请求被无限制挂起) poolPreparedStatements:开启池的prepared(默认是false,未调整,经过测试,开启后的性能没有关闭的好。) maxOpenPreparedStatements

SSM报错java.sql.SQLException: Access denied for user 'Administrator'@'localhost' (using password: YES)

孤街醉人 提交于 2020-01-22 06:59:34
错误日志 错误代码 applicationContext.xml(只有数据库连接那部分代码): <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd http://www.springframework.org/schema/context http://www

查看数据库连接数

这一生的挚爱 提交于 2020-01-19 15:14:36
查看当前的数据库连接数 select count(*) from v$process ; --当前的数据库连接数 数据库允许的最大连接数 select value from v$parameter where name ='processes'; --数据库允许的最大连接数 修改数据库最大连接数 alter system set processes = 300 scope = spfile; --修改最大连接数: 关闭/重启数据库 shutdown immediate; --关闭数据库 startup; --重启数据库 查看当前有哪些用户正在使用数据 select osuser, a.username, cpu_time/executions/1000000||'s', b.sql_text, machine from v$session a, v$sqlarea b where a.sql_address =b.address order by cpu_time/executions desc; --查看当前有哪些用户正在使用数据 --当前的session连接数 select count(*) from v$session --当前的session连接数 当前并发连接数 select count(*) from v$session where status='ACTIVE'; -

查看linux中的TCP连接数

两盒软妹~` 提交于 2020-01-18 03:49:04
一、查看哪些IP连接本机 netstat -an 二、查看TCP连接数 1)统计80端口连接数 netstat -nat|grep -i "80"|wc -l 2)统计httpd协议连接数 ps -ef|grep httpd|wc -l 3)、统计已连接上的,状态为“established netstat -na|grep ESTABLISHED|wc -l 4)、查出哪个IP地址连接最多,将其封了. netstat -na|grep ESTABLISHED|awk {print $5}|awk -F: {print $1}|sort|uniq -c|sort -r +0n netstat -na|grep SYN|awk {print $5}|awk -F: {print $1}|sort|uniq -c|sort -r +0n --------------------------------------------------------------------------------------------- 1、查看apache当前并发访问数: netstat -an | grep ESTABLISHED | wc -l 对比httpd.conf中MaxClients的数字差距多少。 2、查看有多少个进程数: ps aux|grep httpd|wc -l 3

PHP - MongoDB连接攻略

邮差的信 提交于 2020-01-17 19:05:17
http://blog.163.com/lgh_2002/blog/static/44017526201261111044608/ 使用PHP的Mongo扩展连接MongoDB。通过new Mongo对象建立数据库连接。 class Mongo { public function __construct( $servers , $options = array ()); } 参数$server是PHP-MongoDB-Driver标准连接字符串格式 mongodb://[username:password@]host1[:port1][,host2[:port2:],…]/database 参数$options是一个数组。不同于标准MongoDB连接字符串,PHP-Mongo-Driver不将options拼接到连接字串中。 参数$options默认值: $options = array ( 'connect' => true ); 可选配置: $options = array ( 'connect' => true, // true表示Mongo构造函数中建立连接。 'timeout' =>xxxx, // 配置建立连接超时时间,单位是ms 'replicaSet' => 'name' , // 配置replicaSet名称 'username' => '' , // 覆盖