oracle 如何查询当前连接的用户名

oracle 如何查询当前连接的用户名,第1张

oracle查看当前有哪些用户连接,可以执行以下语句:

select username,serial#, sid from v$session; ---查询用户会话

alter system kill session 'serial#, sid ';---删除相关用户会话

建议以后台登陆删除用户会话

1、查询oracle的连接数

select count() from v$session;

2、查询oracle的并发连接数

select count() from v$session where status='ACTIVE';

3、查看不同用户的连接数

select username,count(username) from v$session where username is not null group by username;

4、查看所有用户:

select from all_users;

5、查看用户或角色系统权限(直接赋值给用户或角色的系统权限):

select from dba_sys_privs;

select from user_sys_privs;

1、查询每台机器的连接数

select tMACHINE,count() from v$session t group by tMACHINE

这里所说的每台机器是指每个连接oracle数据库的服务器,每个服务器都有配置连接数据库的连接数,以websphere为例,在数据源中,每个数据源都有配置其最大/最小连接数。

执行SQL后,可以看到每个服务器连接oracle数据库的连接数,若某个服务器的连接数非常大,或者已经达到其最大连接数,那么这台服务器上的应用可能有问题导致其连接不能正常释放。

2、查询每个连接数的sql_text

v$session表里存在的连接不是一直都在执行 *** 作,如果sql_hash_value为空或者0,则该连接是空闲的,可以查询哪些连接非空闲, web3 是机器名,就是WebSphere Application Server 的主机名。

select tsql_hash_value,t from v$session t where tMACHINE='web3' and tsql_hash_value!=0

这个SQL查询出来的结果不能看到具体的SQL语句,需要看具体SQL语句的执行下面的方法。

1)点击Net Configuration Assistant

2) 在d出的对话框中选择本地Net服务名配置,点下一步

3) 在服务名配置对话框中选择添加,点下一步

4)在如下对话框中填写要访问的oralce数据库的服务名,该服务名可以通过oralce登录用户名进入环境,在cshrc中,环境变量ORACLE_SID对应的值便是这个服务名,也可以在oracle用户环境下执行grep | env ORACLE_SID查找。

点击下一步

5)选择TCP协议,点下一步

6)主机名中填写要访问的oracle数据库服务器,使用标准端口号1521,点下一步

7)选中“是,进行测试”,点下一步

8) 点更改登录,填写要访问的数据库用户名和密码,确保其正确。此处主要是验证前面配置是否正确,如正确这里的测试就可以成功。

如果不正确请检查服务名、ip地址、用户名、密码中是否有写错,并改之,就可以成功了。

测试成功后点下一步

9)在下图中填写网络服务名,此处的网络服务名可以随意取名,点下一步,后面配置数据源的时候用的就是这个网络服务名

方法一用起来有点小复杂,不过可以了解数据库的配置步骤,方法二相对来说简单很多

找到本机oracle数据库安装的如下路径,如:

F:\app\Administrator\product\1110\client_1\network\admin,在该路径下有个文件tnsnamesora,打开文件会发现里面有很多连接配置,直接拷贝一个修改如下红色字

SYSDB_102 = //对应的就是上面方法一提到的网络服务名

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = 104124102)(PORT = 1521)) //访问数据库的ip

)

(CONNECT_DATA =

(SERVICE_NAME = sysdb) //数据库服务名

)

)

当配置好后,就可以用PLSQL访问数据库了

select count() from v$process --当前的连接数\x0d\select value from v$parameter where name = 'processes--数据库允许的最大连接数\x0d\修改最大连接数:\x0d\alter system set processes = 300 scope = spfile;\x0d\重启数据库:\x0d\shutdown immediate;\x0d\startup;

以上就是关于oracle 如何查询当前连接的用户名全部的内容,包括:oracle 如何查询当前连接的用户名、怎样查看oracle高可用性方案、如何用plsql查看数据库连接等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/10049264.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-04
下一篇2023-05-04

发表评论

登录后才能评论

评论列表(0条)

    保存