Access/MSSQL/Oracle/MySql获取当前用户连接数(downmoon收集)

本文介绍了在MS SQL Server、Oracle、Access、MySQL等不同数据库系统中如何查询和管理数据库连接的方法,包括获取当前连接数、并发连接数及最大连接数。

一、MSSQL中可以用sp_Who获取连接的用户名信息,

二、Oracle也有类似的系统函数

ContractedBlock.gifExpandedBlockStart.gifCode
SQL> select count(*from v$session  #连接数
SQL
> Select count(*from v$session where status='ACTIVE' #并发连接数
SQL
> show parameter processes  #最大连接
SQL
> alter system set processes = value scope = spfile;重启数据库  #修改连接 

三、Access下有以下几种思路:

  第一:直接看ldb文件,有几行就有几个连接
格式基本上是

    hostname    workgroupUserId

  第二: 用vbscript

    有两段代码可以参考:

    Microsoft:

ContractedBlock.gifExpandedBlockStart.gifVBScript
Sub ShowUserRosterMultipleUsers()
Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim i, j As Long

Set cn = CurrentProject.Connection

' The user roster is exposed as a provider-specific schema rowset
'
 in the Jet 4.0 OLE DB provider.  You have to use a GUID to
'
 reference the schema, as provider-specific schemas are not
'
 listed in ADO's type library for schema rowsets

Set rs = cn.OpenSchema(adSchemaProviderSpecific, _
"{947bb102-5d43-11d1-bdbf-00c04fb92675}")

'Output the list of all users in the current database.

Debug.Print rs.Fields(
0).Name, "", rs.Fields(1).Name, _

While Not rs.EOF
Debug.Print rs.Fields(
0), rs.Fields(1), _
rs.Fields (
2), rs.Fields(3)
rs.MoveNext
Wend

End Sub

 

    Access Web:

ContractedBlock.gifExpandedBlockStart.gifVBScriptCode
' This code was originally written by Dev Ashish.
'
 It is not to be altered or distributed,
'
 except as part of an application.
'
 You are free to use it in any application,
'
 provided the copyright notice is left unchanged.
'
'
 Code Courtesy of
'
 Dev Ashish
'
Private Declare Function apiGetUserName Lib "advapi32.dll" Alias _

Function fOSUserName() As String
' Returns the network login name
Dim lngLen As Long, lngX As Long
Dim strUserName As String
strUserName 
= String$(2540)
lngLen 
= 255
lngX 
= apiGetUserName(strUserName, lngLen)
If (lngX > 0Then
fOSUserName 
= Left$(strUserName, lngLen - 1)
Else
fOSUserName 
= vbNullString
End If

End Function
'******************** Code End **************************

 

四、MySql

mysql>   show   processlist; 

 或

ContractedBlock.gifExpandedBlockStart.gifCode
./mysqladmin   processlist  
   
  例:  

  C:\Documents   and   Settings\administrator>mysqladmin   processlist  

更详细的,查看当前所有连接的详细资料:

./mysqladmin -uadmin -p -h10.140.1.1 processlist

只查看当前连接数(Threads就是连接数.):
./mysqladmin  -uadmin -p -h10.140.1.1 status

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值