mysql处理字符串的两个绝招:substring_index,concat

本文介绍MySQL中处理字符串的有效方法,如使用substring_index精确切割字符串及concat进行字符串拼接,并提供了查看MySQL连接状态的方法。
mysql处理字符串的两个绝招:substring_index,concat

[b]1、substring_index(str,delim,count)
   str:要处理的字符串
   delim:分隔符
   count:计数[/b]

例子:str='www.google.com'
  substring_index(str,'.',1)
  结果是:www
  substring_index(str,'.',2)
  结果是:www.google
  也就是说,如果count是正数,那么就是从左往右数,第N个分隔符的左边的全部内容
  相反,如果是负数,那么就是从右边开始数,第N个分隔符右边的所有内容,如:
  substring_index(str,'.',-2)
  结果为:google.com

有人会问,如果我要中间的的google怎么办?
  很简单的,两个方向:
  1、从右数第二个分隔符的右边全部,再从左数的第一个分隔符的左边:
  substring_index(substring_index(str,'.',-2),‘.’,1);

2、[b]concat是连接几个字符串,可以多个哦[/b]
  concat('wo','lin','xue','bin')
  结果就是wolinxuebin


Mysql查看连接数、状态

show processlist
如果是root帐号,你能看到所有用户的当前连接,如果是其它普通帐号,只能看到自己占用的连接
[b][color=red]show processlist只能列出前100条;如果想全列出请使用show full processlist[/color][/b]

show status like ‘%变量%’

Aborted_clients 由于客户没有正确关闭连接已经死掉,已经放弃的连接数量
Aborted_connects 尝试已经失败的连接MYSQL服务器的次数

Connections 试图连接MYSQL服务器的次数
Flush_commands 执行FLUSH命令的次数

Max_used_connections 同时使用的连接的最大数目
Threads_connected 当前打开的连接的数量

Threads_running 不在睡眠的线程数量
Uptime 服务器工作时间

要统计数据库的连接数,我们通常情况下是统计总数,没有细分到每个IP上。现在要监控每个IP的连接数,实现方式如下:

[color=darkred][b]select SUBSTRING_INDEX(host,':',1) as ip , count(*) from information_schema.processlist group by ip;[/b][/color]

set-variable=[color=brown][b]max_user_connections=30 这个就是单用户的连接数[/b][/color]
set-variable=[color=brown][b]max_connections=800 这个是全局的限制连接数[/b][/color]

如果进程过多,就把进程打印下来,然后查看
mysql -h 127.0.0.1 -P 24806 -uroot -e 'show full processlist;'> myLog.log

将进程信息输出到myLog.log文件中
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值