可直接在 v$session视图中查询。
潞城网站建设公司创新互联,潞城网站设计制作,有大型网站制作公司丰富经验。已为潞城近千家提供企业网站建设服务。企业网站搭建\成都外贸网站建设公司要多少钱,请找那个售后服务好的潞城做网站的公司定做!
语句如:
select * from v$session where username='用户名';
其中用户名应为英文大写字母。
以下为视图各字段说明:
SADDR - session address
SID - session identifier 常用于链接其他列
SERIAL# - SID有可能会重复,当两个session的SID重复时,SERIAL#用来区别session(说白了某个session是由sid和serial#这两个值确定的)
AUDSID - audit session id。可以通过audsid查询当前session的sid。select sid from v$session where audsid=userenv('sessionid');
PADDR - process address,关联v$process的addr字段,通过这个可以查询到进程对应的session
USER# - 同于dba_users中的user_id,Oracle内部进程user#为0.
USERNAME - session's username。等于dba_users中的username。Oracle内部进程的username为空。
COMMAND - session正在执行的sql id,1代表create table,3代表select。
TADDR - 当前的transaction address。可以用来关联v$transaction中的addr字段。
LOCKWAIT - 可以通过这个字段查询出当前正在等待的锁的相关信息。sid + lockwait与v$loc中的sid + kaddr相对应。
STATUS - 用来判断session状态。Active:正执行SQL语句。inactive:等待操作。killed:被标注为杀死。
SERVER - 服务类型。
SCHEMA# - schema user id。Oracle内部进程的schema#为0。
SCHEMANAME - schema username。Oracle内部进程的为sys。
OSUSER - 客户端操作系统用户名。
PROCESS - 客户端process id。
MACHINE - 客户端machine name。
TERMINAL - 客户端执行的terminal name。
PROGRAM - 客户端应用程序。比如ORACLE.EXE或sqlplus.exe
TYPE - session类型。
SQL_ADDRESS,SQL_HASH_VALUE,SQL_ID,SQL_CHILD_NUMBER - session正在执行的sql状态,和v$sql中的address,hash_value,sql_id,child_number对应。
PREV_SQL_ADDR,PREV_HASH_VALUE,PREV_SQL_ID,PREV_CHILD_NUMBER - 上一次执行的sql状态。
MODULE,MODULE_HASH,ACTION,ACTION_HASH,CLIENT_INFO - 应用通过DBMS_APPLICATION_INFO设置的一些信息。
FIXED_TABLE_SEQUENCE - 当session完成一个user call后就会增加的一个数值,也就是说,如果session挂起,它就不会增加。因此可以根据这个字段来监控某个时间点以来的session性能情况。例如,一个小时前某个session的此字段数值为10000,而现在是20000,则表明一个小时内其user call较频繁,可以重点关注此session的performance statistics。
ROW_WAIT_OBJ# - 被锁定行所在table的object_id。和dba_object中的object_id关联可以得到被锁定的table name。
ROW_WAIT_FILE# - 被锁定行所在的datafile id。和v$datafile中的file#关联可以得到datafile name。
ROW_WAIT_BLOCK# - 同上,对应块。
ROW_WAIT_ROW# - session当前正在等待的被锁定的行。
LOGON_TIME - session logon time.
1、打开pl/sql客户端,登录oracle数据库;
2、编写sql,select * from user_tables t where table_name like 'TEST%' order by 1;即可查看该用户下所有的表;
3、编写sql,select * from all_tables t;即可查看该库下所有用户所有的表;
4、编写sql;select * from user_tab_cols t where table_name like 'TEST%' order by 1, column_id;即可查看该用户下所有表的字段信息;
1.
使用具有dba权限的帐号登录数据库
2.
执行命令"select
username
from
dba_users"
3.
官方文档对dba_users的定义:dba_users describes
all
users
of
the
database.因此可以如此查询。
假设oracle数据库默认数据实例为orcl,
那么使用pl/sql工具连接到些实例,执行以下命令:
select username from sys.all_users;
可以查询到该orcl下具体有哪些用户。
sys,system是创建oracle实例是的默认用户。
创建的每个实例都会有。
甲骨文公司,全称甲骨文股份有限公司(甲骨文软件系统有限公司),是全球最大的企业级软件公司,总部位于美国加利福尼亚州的红木滩。1989年正式进入中国市场。2013年,甲骨文已超越 IBM ,成为继 Microsoft 后全球第二大软件公司。
使用具有dba权限的帐号登录数据库 执行命令"select username from dba_users" 官方文档对dba_users的定义:DBA_USERS describes all users of the database.因此可以如此查询。
1.查看所有用户:
select * from dba_users;
select * from all_users;
select * from user_users;
2.查看用户或角色系统权限(直接赋值给用户或角色的系统权限):
select * from dba_sys_privs;
select * from user_sys_privs; (查看当前用户所拥有的权限)
3.查看角色(只能查看登陆用户拥有的角色)所包含的权限
sqlselect * from role_sys_privs;
4.查看用户对象权限:
select * from dba_tab_privs;
select * from all_tab_privs;
select * from user_tab_privs;
5.查看所有角色: select * from dba_roles;
6.查看用户或角色所拥有的角色:
select * from dba_role_privs;
select * from user_role_privs;
7.查看哪些用户有sysdba或sysoper系统权限(查询时需要相应权限)
select * from V$PWFILE_USERS