oracle解锁】的更多相关文章

Oracle解锁,解决“ora00054:资源正忙”错误 一.处理步骤:--1.获取被锁对象的session_idSELECT session_id FROM v$locked_object; --2.通过session_id获取v$session的sid和serial#SELECT sid, serial#, username, osuser FROM v$session where sid = session_id; --3.终止相关进程.ALTER SYSTEM KILL SESSION…
--查询数据库锁表记录 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, v$process p where ao.object_id = lo.object_id and lo.session_id = sess.sid -- and…
SQL*Plus: Release 9.2.0.4.0 - Production on Tue Jul 14 18:12:38 2009   Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.   SQL> conn sys/sys as sysdba   Connected.   SQL> show user   USER is "SYS"   SQL> desc dba_users…
在操作ORACLE数据库的时候,由于执行完,没有COMMIT,直接把PL/SQL关闭掉,后来导致那张表被锁住,当编辑时就会出现这个信息,record is locked by another user! 当出现这种情况的时候,只要操作下面几个步骤就可以解锁了. 1.查看锁 select t2.username,t2.sid,t2.serial#,t2.logon_time from v$locked_object t1,v$session t2 where t1.session_id=t2.si…
安装oracle数据库的时候忘了解锁账户,再加上一直配置不成功,链接不上,最后终于配置好了,发现没账户可用,oracle好难. oracle版本是 Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production With the Partitioning, 原因:安装的时候没有将自带的4个系统账户解锁导致测试的时候没有账户可用. 解决: (1)conn sys/sys as sysdba;//以DBA的身份…
在安装Oracle的最后一步,有一个口令管理的操作,当时忘了给scott账号解锁了(Oracle为程序测试提供的一个普通账户,口令管理中可以对数据库用户设置密码,默认是锁定的).现在想给scott这个账户解锁,操作如下: 一.我使用的是pl/sql工具,以dba身份登录(system账户+自己安装时设置的密码),也可以登录SQL Plus进行以下操作:二.打开sql窗口,然后使用命令"alter user scott account unlock;"来解锁.三.解完以后,可以使用下面的…
Oracle安装完成之后scott账户默认是锁定的,登录的时候会提示账户已经被锁定: C:\Users\CC11001100>sqlplus scott/toor SQL*Plus: Release 10.2.0.1.0 - Production on 星期四 6月 8 22:21:27 2017 Copyright (c) 1982, 2005, Oracle. All rights reserved. ERROR: ORA-28000: the account is locked 请输入用户…
oracle中存在一个默认的用户scott,密码为tiger,当在安装oracle时,若未给该账户解锁,则登录该用户时, 会提示被锁定. 如何通过sqlplus命令为scott解锁: 1.C:> sqlplus  请输入用户名:sys  输入口令:sys as sysdba //注意:在口令这里输入的密码后面必须要跟上 as sysdba 才可以. 2.SQL> alter user scott account unlock;   将scott用户解锁,会提示用户已更改. 3.SQL>…
当某个数据库用户在数据库中插入.更新.删除一个表的数据,或者增加一个表的主键时或者表的索引时,常常会出现ora-00054:resource busy and acquire with nowait specified这样的错误. 主要是因为有事务正在执行(或者事务已经被锁),所有导致执行不成功. 1.用dba权限的用户查看数据库都有哪些锁 select t2.username,t2.sid,t2.serial#,t2.logon_time from v$locked_object t1,v$s…
1.查询被锁的对象: select object_name,machine,s.sid,s.serial# from v$locked_object l,dba_objects o ,v$session s where l.object_id = o.object_id and l.session_id=s.sid; 2.下面的语句用来杀死一个进程,其中a,b分别是上面查询出的sid,serial: alter system kill session 'a,b'; 3.如果利用上面的命令杀死一个…
解决: (1)conn sys/sys as sysdba;//以DBA的身份登录 (2)alter user scott account unlock;// 然后解锁 (3)conn scott/tiger //弹出一个修改密码的对话框,修改一下密码就可以了 具体操作步骤如下: C:> sqlplus 请输入用户名:sys 输入口令:sys as sysdba //注意:在口令这里输入的密码后面必须要跟上 as sysdba 才可以. SQL> alter user scott accoun…
最近开发的时候遇到一个小问题,执行一段sql之后发现 表被锁了 显示错误为:ora-00054:resource busy and acquire with nowait specified 百度之后发现是session进程卡住了,可以说是表的某些资源被锁定了 可以采用如下方法解锁: select t2.username,t2.sid,t2.serial#,t2.logon_timefrom v$locked_object t1,v$session t2where t1.session_id=t…
--以下几个为相关表SELECT * FROM v$lock;SELECT * FROM v$sqlarea;SELECT * FROM v$session;SELECT * FROM v$process ;SELECT * FROM v$locked_object;SELECT * FROM all_objects;SELECT * FROM v$session_wait; --查看被锁的表 select b.owner,b.object_name,a.session_id,a.locked_…
最近在工作中同事们经常遇到锁表.误删表和程序覆盖的情况,现总结下遇到这三种情况的解决方案: 1.暴力删除锁表 当表被某些语句占用无法停止,或者出现事物阻塞的情况下,需要手动删除锁(万不得已的情况下用): --首先查询锁(需要管理员权限) SELECT OBJECT_NAME AS 对象名称,       S.SID,       S.SERIAL#,       P.SPID    AS 系统进程号,       S.MACHINE  FROM V$LOCKED_OBJECT L, DBA_OB…
解决方法如下: 1:查V$DB_OBJECT_CACHE SELECT * FROM V$DB_OBJECT_CACHE WHERE name='CRM_LASTCHGINFO_DAY' AND LOCKS!='0'; 注意:CRM_LASTCHGINFO_DAY为存储过程的名称. 发现locks=2, 2:按对象查出sid的值 select /*+ rule*/  SID from V$ACCESS WHERE object='CRM_LASTCHGINFO_DAY'; 注意:CRM_LAST…
//查询锁表id select session_id from v$locked_object; //查询该ID的serial# SELECT sid, serial#, username, osuser FROM v$session where sid = 152; //杀死该进程 alter system kill session '12,748'…
select b.owner,b.object_name,a.session_id,a.locked_mode,c.serial#,c.sid||','||c.serial# from v$locked_object a,dba_objects b ,v$session c where b.object_id = a.object_id And a.session_id = c.sid   alter system kill session '1161,4464' immediate;…
--查看锁表情况 select distinct a.sid, to_char(a.logon_time, 'YYYY-MM-DD HH24:mi:ss') loginTime, a.serial#, a.USERNAME, a.OSUSER, a.MACHINE, a.STATUS, d.sql_text, 'ALTER SYSTEM KILL SESSION ''' || a.sid || ',' || a.SERIAL# || ',@' || a.inst_id || ''';' from…
打开VMware 选择稍后安装 自定义安装 小生安装的是64位的Centos 给虚拟机设置名称和安装位置 设置虚拟机打处理器并分配内存(oracle12G我建议内存为2G以上) 网络类型选择仅主机模式 按推荐来,创建新的虚拟磁盘 磁盘大小设为40G,不要太小,会有错误.指定磁盘文件路径 选择自定义硬件,将Centos ISO镜像文件挂载上 启动虚拟机,进入Centos安装界面 跳过检测 选择英文 键盘格式为英文 选择YES,清空数据 点击Configure Network 设置System et…
执行begin backup之后,oracle会把将要备份的数据文件都标记为hot-backup-in-progress,锁定所要备份的datafile header的scn,例如此时scn=100,同时redolog中会记住这个scn,其他数据文件正常使用,scn会继续增长.之后在备份所要备份的数据文件过程中,数据文件是允许写入和checkpoint,而且可能不止一次checkpoint,而这个过程中的所有操作和checkpoint也会正常记录到redolog与archivelog中. ora…
ORACLE EBS操作某一个FORM界面,或者后台数据库操作某一个表时发现一直出于"假死"状态,可能是该表被某一用户锁定,导致其他用户无法继续操作 复制代码 代码如下: --锁表查询 SQL 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…
摘自:https://www.cnblogs.com/xuke/p/4053396.html http://blog.itpub.net/30036720/viewspace-2121034/ oracle表被锁(delete或update一直处于执行状态)的处理办法. 1 --首先查看有哪些锁 2 select /*+ rule */ s.username, 3 decode(l.type,'TM','TABLE LOCK','TX','ROW LOCK',null) lock_level,…
MySql解锁方式 1 # 1. 查看当前数据库锁表的情况 2 SELECT * FROM information_schema.INNODB_TRX; 3 # 2. 杀掉查询结果中锁表的trx_mysql_thread_id 4 kill trx_mysql_thread_id Oracle解锁方式 1 # 查看被锁的表 2 select b.owner, b.object_name, a.session_id, a.locked_mode from v$locked_object a, db…
ORACLE 锁表的解决方法及查找引起锁表SQL语句方法  1. ORACLE中查看当前系统中锁表情况 select * from v$locked_object 可以通过查询v$locked_object拿到sid和objectid,然后用sid和v$session链表查询是哪里锁的表,用v$session中的objectid字段和dba_objects的id字段关联,查询详细的锁表情况. 查询SQL如下: select sess.sid,        sess.serial#,      …
一.建设新闻资料库 例如,下面的脚本代码:(正在使用mysql5.0 数据库) SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; SET time_zone = "+00:00"; -- Database: `newsdemo` -- 表的结构 `news` CREATE TABLE IF NOT EXISTS `news` ( `id` int(10) NOT NULL AUTO_INCREMENT, `title` text NOT…
Oracle的表锁死以及解锁 oracle 查看锁死的表,锁死的进程. 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.…
注意:必须有Oracle DBA 权限才能操作一下SQL语句: ---查询锁定的会话 select * from v$session t where t.SID in (select t2.session_id from v$locked_object t2); ---查询锁定的对象 select * from all_objects t1 join v$locked_object t2 on t1.object_id = t2.OBJECT_ID; ---解锁 alter system kil…
下午代码迁移,更新数据库记录时for update语句无法执行,数据库被锁,KILL掉几个进程搞定. Oracle数据库操作中,我们有时会用到锁表查询以及解锁和kill进程等操作,那么这些操作是怎么实现的呢?简要介绍一下. 锁表查询的代码有以下的形式: select count(*) from v$locked_object; select * from v$locked_object; 查看哪个表被锁 select b.owner,b.object_name,a.session_id,a.lo…
转:http://database.51cto.com/art/200910/158576.htm 在DBA的日常工作中,经常遇到为Oracle用户解锁的操作:这篇文章给出在命令行下进行Oracle用户解锁的操作方法,通过几条简单的解锁语句就能完成此项工作.下面是具体的过程: 默认的scott用户是被锁定的,先解锁就能登陆上了. 使用下面的语句解锁scott: alter user scott account unlock; 解锁之后可能会要求你该密码: alter user scott ide…
解除oracle用户的锁定状态,例如oracle数据库建立测试实例时默认建立的scott用户,一开始是处于locked状态的,现在我们需要将其解锁,步骤如下: (1)在cmd中登录sqlplus,例如我的本机测试数据库SID=local,sys密码为123456: C:\>sqlplus /nolog C:\@local AS SYSDBA; (2)使用sys用户为scott用户解锁,如下: C:\>ALTER USER scott ACCOUNT UNLOCK; (3)重新使用scott用户…