oracle中表记录被另一个用户锁住】的更多相关文章

应用场景 在查询oracle表时,提示表记录被另一个用户锁住了 有可能是在使用了pl/sql工具后修改某个表记录时,加锁,或者发生故障异常退出,下次登录进去修改不了 查询锁 --查看数据库的锁的来源.类型等 select t.object_id, t.session_id, t.locked_mode from v$locked_object ; 查询锁与session连接 --查询 锁与session连接 用户名.serial#.时间select s.username, s.sid, s.se…
oracle数据中删除数据时提示“记录被另一个用户锁住” 解决方法: 1.查看数据库锁,诊断锁的来源及类型: select object_id,session_id,locked_mode from v$locked_object; 或者用以下命令: select b.owner,b.object_name,l.session_id,l.locked_mode from v$locked_object l, dba_objects b where b.object_id=l.object_id…
原因:PL/SQL里面执行语句执行了很久都没有结果,于是中断执行,于是就直接在上面改字段,在点打钩(记入改变)的时候提示,记录被另一个用户锁住. 解决方法: 第一步:(只是用于查看哪些表被锁住,真正有用的是第二.第三步) select b.owner,b.object_name,l.session_id,l.locked_modefrom v$locked_object l, dba_objects bwhere b.object_id=l.object_id 显示如下: OWNER    OB…
1.查看数据库锁,诊断锁的来源及类型: select object_id,session_id,locked_mode from v$locked_object; 或者用以下命令: select b.owner,b.object_name,l.session_id,l.locked_mode from v$locked_object l, dba_objects b where b.object_id=l.object_id SELECT lpad(' ',decode(l.xidusn ,0,…
1.查看数据库锁,诊断锁的来源及类型: select object_id,session_id,locked_mode from v$locked_object; 或者用以下命令: select b.owner,b.object_name,l.session_id,l.locked_mode from v$locked_object l, dba_objects b where b.object_id=l.object_id SELECT lpad(' ',decode(l.xidusn ,0,…
第一步:查询处用户,被锁表名,sessionID select b.owner,b.object_name,l.session_id,l.locked_modefrom v$locked_object l, dba_objects bwhere b.object_id=l.object_id 第二部:查询处username,session_id,serial#等 select t2.username,t2.sid,t2.serial#,t2.logon_timefrom v$locked_obj…
相关资料: 1.http://blog.csdn.net/jarniyy/article/details/51133214 1.查看数据库锁,诊断锁的来源及类型:select object_id,session_id,locked_mode from v$locked_object;或者用以下命令: select b.owner,b.object_name,l.session_id,l.locked_mode from v$locked_object l, dba_objects b where…
1.查看数据库锁,诊断锁的来源及类型: select object_id,session_id,locked_mode from v$locked_object; 或者用以下命令: select b.owner,b.object_name,l.session_id,l.locked_mode from v$locked_object l, dba_objects b where b.object_id=l.object_id 2.找出数据库的serial#,以备杀死: select t2.use…
出现的原因是有人对某一条数据进行了修改,oracle会通过这个事务记住这条数据,若修改的人没有进行提交或进行回滚记录,oracle是不允许对这条数据在此进行修改的,在这种情况下你要进行修改数据,则会被阻止,提示"记录被另外一个用户锁定". 现在就需要对其锁进行删除,以便达到修改数据的目的. 1.查看数据库锁,诊断锁的来源及其类型: select object_id,session_id,locked_mode from v$locked_object; 2.找到数据库的serial#,…
原因 当一个用户对数据进行修改时,若没有进行提交或者回滚,Oracle不允许其他用户修改该条数据,在这种情况下修改,就会出现:"记录被另外一个用户锁定"错误. 解决 查询用户.数据库锁.以及类型等 select object_id,session_id,locked_mode from v$locked_object; 或者 select t2.owner,t2.object_name,t1.session_id,t1.locked_mode from v$locked_object…
SELECT object_name, machine, s.sid, s.serial# FROM gv$locked_object l, dba_objects o, gv$session s WHERE l.object_id = o.object_id AND l.session_id = s.sid; --释放SESSION SQL: --alter system kill session 'sid, serial#'; ALTER system kill session '963,…
打开cmd: 执行 sqlplus /nolog 执行conn / as sysdba 执行 ALTER USER  username  ACCOUNT UNLOCK;…
SELECT object_name, machine, s.sid, s.serial# FROM gv$locked_object l, dba_objects o, gv$session s WHERE l.object_id = o.object_id AND l.session_id = s.sid;…
于是我就直接在上面改字段,在点打钩(记入改变)的时候提示,记录被另一个用户锁住,一开始还以为整个表被锁住了,后来发现,仅仅是这个字段不能改变,其他的字段可以. 网上找了资料,发现是:当多个用户并发地存取数据时,在数据库中就会产生多个事务同时存取同一数据的情况造成的.网上也给出了答案: 1.查看数据库锁,诊断锁的来源及类型: select object_id,session_id,locked_mode from v\(locked_object; 或者用以下命令: select b.owner,…
假设一个用户登录连续失败三次.两日,锁定用户,两天后再次登录的用户的能力. 创建profile文件: 更新账户: 三次登录失败后用户就会被锁定: 用户锁住之后要怎么给他解锁: 解锁之后就能够正常登录了. 假设不须要时能够删除profile文件 drop profile myprofile1; 这时profile作用在其它用户上的效果就会消失. $(function () { $('pre.prettyprint code').each(function () { var lines = $(th…
最近因为要把以前做的一个项目数据库从MSSQL2005转移到Oracle上,所以开始接触Oracle,通过本篇随笔简单记录一些ASP.NET结合Oralce的操作: 因为微软未来不再支持 System.Data.OracleClient 这个 Data Provider 的研发,从 .NET 4 以后的版本,会将该类库移除.所以决定采用Oracle 自家的解决方案 ODP.NET; 目前ODP.NET最新版本为12.1.0.1.0(开发跟部署机器都要安装);下载地址[http://www.ora…
如果一个用户连续三次登录失败,则锁定该用户两天,两天之后该用户才能重新登录. 创建profile文件: 更新账户: 三次登录失败后用户就会被锁定: 用户锁住之后要怎么给他解锁: 解锁之后就可以正常登录了. 版权声明:本文为博主原创文章,未经博主允许不得转载.…
原文地址:http://blog.csdn.net/shmiloy001/article/details/6287317 首先,授权给指定用户. 一个用户的默认表空间只能有一个,但是你可以试下用下面的语句为其授权在别的表空间中创建对像: alter user  username quota unlimited on tablespace_name; 再者,创造表的命令. 一个用户可以拥有多个表空间在创建表时: create table TABLE_NAME () tablespace TABLE…
首先,授权给指定用户. 一个用户的默认表空间只能有一个,但是你可以试下用下面的语句为其授权在别的表空间中创建对像: alter user  username quota 0||unlimited on tablespace_name; 再者,创造表的命令. 一个用户可以拥有多个表空间在创建表时: create table TABLE_NAME () tablespace TABLESPACE_NAME;这样你所创建的表便在指定的空间下了. 最后,至于查询,插入等这些你是懂的………
起因 为什么会有这篇文章呢? 因为最近在做项目的时候遇到一个问题...实际生产环境中程序datasource登陆的Oracle数据库用户user1不是我们创建的.这个用户没有访问我们业务表的权限(因为和其他公司合作,用user1去访问它们的数据)....我们开发中用到的用户user2是我们自己创建的有相关业务表的权限,而这个用户user2在实际生产环境中也是有的... 所以我要做的事情就是把我们user2的相关表的查询权限赋值给user1就行了...实际解决那个问题的时候我是手动写SQL赋权限的…
在登陆时被告知test用户被锁 1.用dba角色的用户登陆,进行解锁,先设置具体时间格式,以便查看具体时间 SQL> alter session set nls_date_format=’yyyy-mm-dd hh24:mi:ss’; Session altered. 2.查看具体的被锁时间 SQL> select username,lock_date from dba_users where username=’TEST’; USERNAME LOCK_DATE --------------…
-- 创建一个用户并分配表空间和分配权限 -- 以sysdba登录 oracle@sha-col-oracle-2:~> sqlplus / as sysdba SQL*Plus: Release 12.1.0.2.0 Production on Mon Mar 7 18:48:59 2016 Copyright (c) 1982, 2014, Oracle. All rights reserved. Connected to: Oracle Database 12c Enterprise Ed…
1.两个用户是在不同的库,需要建立dblink 2.属于同一个库的不同用户 1)方法一:使用"用户名."的方式访问 例如:要从USER1账号访问USER2中的表TABLE2 A. 需要在USER2中将TABLE2 GRANT给USER1,USER1才有权限访问,访问的时候用SELECT * FROM USER2.TABLE2语句 B.也可以直接给用户USER1赋予dba权限,待使用完后再取出dba,不过很危险就是了. 2)方法二:和查询当前用户的方法一样,查询另一个用户的表信息 如果不…
一般数据库默认是10次尝试失败后锁住用户 1.查看FAILED_LOGIN_ATTEMPTS的值select * from dba_profiles: 2.修改为无限次(为安全起见,不建议使用)alter profile default limit FAILED_LOGIN_ATTEMPTS unlimited; 解锁:alter user user_name account unlock;…
① 查看用户锁表 select sess.sid, sess.serial#, lo.oracle_username, lo.os_user_name, ao.object_name, lo.locked_mode from v$locked_object lo, dba_objects ao, v$session sess where ao.object_id = lo.object_id and lo.session_id = sess.sid ② 解锁语句 alter system kil…
//lock_date是被锁住时间,如果为空证明这个用户没有被锁住 select username,lock_date from dba_users where username='GFMIS';  //GFMIS是数据库的用户 //给用户解锁 ALTER USER gfmis ACCOUNT UNLOCK;…
Oracle user,role,profile常规操作--用户,权限,角色,配置文件 1 权限查询 1查看所有用户 SQL> select username,account_status,lock_date,expiry_date,default_tablespace from dba_users; SQL> select * from all_users;--3 columns SQL> select * from user_users; 2查看用户系统权限 SQL> sele…
在编译的一个存储过程的时候,对象可能由于被锁住而处于假的卡死状态,这个时候有的是因为,这个过程正在运行中,所以无法编译: 上次我遇到一次,我很清楚的确定这个过程没有运行,可以我就是无法编译,对象一直被锁.我纠结了好久,终于找到的解决的办法. select * FROM dba_ddl_locks where name = upper('p_sys_job_crtpartition_c10'); 先从dba_ddl_locks中查询对象被哪些进程锁住,得到他们的SESSION_ID:--alter…
目录 (一)起因 (二)混合自旋锁 (三)q3.h 与 RingBuffer (四)RingQueue(上) 自旋锁 (五)RingQueue(中) 休眠的艺术 (六)RingQueue(中) 休眠的艺术 [续] 开篇 这几天研究了一下 disruptor .Net版,由于.Net版跟进不及时,网上只有 v2.10 版.没仔细研究,但可以肯定的是跟最新的Java版 disruptor 3.30 是有不少区别的.我也用这个 2.10 的.Net版本写了跟我们的问题相似的测试程序,得到的结果跟 Ja…
本文转自:http://blog.csdn.net/deepsea_allen/article/details/53900284 第三章   创建一个分组报表 1.     建立数据模型 数据模型用于定义一个报表中使用的数据及数据结构,这些数据可以是数据库表中的原始数据,也可以是经过加工后的数据,如工资的总和等.从数据库中检索出的数据是否在报表输出中显示,也是在数据模型中定义的. 数据模型由五部分对象组成:查询(Queries).组(Groups).列(Columns).连接(Links)和参数…