ORACLE账户解锁定的方法
Oracle锁处理、解锁方法
Oracle锁处理、解锁⽅法1、查询锁情况select sid,serial#,event,BLOCKING_SESSION from v$session where event like '%TX%';2、根据SID查询具体信息(可忽略)select sid,serial#,username,machine,blocking_session from v$session where sid=<SID>;3、杀掉会话#根据1和2中查到的SID和SERIAL# 定位会话,并杀掉ALTER SYSTEM DISCONNECT SESSION '<SID>,<SERIAL>' IMMEDIATE;或ALTER SYSTEM KILL SESSION '<SID>,<SERIAL>';附件:#查询阻塞脚本col waiting_session for a20col lock_type for a15col mode_requested for a10col mode_held for a10col lock_id1 for a10col lock_id2 for a10set linesize 120set pagesize 999with dba_locks_cust as(SELECT inst_id||'_'||sid session_id,DECODE (TYPE,'MR', 'Media Recovery','RT', 'Redo Thread','UN', 'User Name','TX', 'Transaction','TM', 'DML','UL', 'PL/SQL User Lock','DX', 'Distributed Xaction','CF', 'Control File','IS', 'Instance State','FS', 'File Set','IR', 'Instance Recovery','ST', 'Disk Space Transaction','TS', 'Temp Segment','IV', 'Library Cache Invalidation','LS', 'Log Start or Switch','RW', 'Row Wait','SQ', 'Sequence Number','TE', 'Extend Table','TT', 'Temp Table',TYPE)lock_type,DECODE (lmode,0, 'None', /* Mon Lock equivalent */1, 'Null', /* N */2, 'Row-S (SS)', /* L */3, 'Row-X (SX)', /* R */4, 'Share', /* S */5, 'S/Row-X (SSX)', /* C */6, 'Exclusive', /* X */TO_CHAR (lmode))mode_held,DECODE (request,0, 'None', /* Mon Lock equivalent */1, 'Null', /* N */2, 'Row-S (SS)', /* L */3, 'Row-X (SX)', /* R */4, 'Share', /* S */5, 'S/Row-X (SSX)', /* C */6, 'Exclusive', /* X */TO_CHAR (request))mode_requested,TO_CHAR (id1) lock_id1,TO_CHAR (id2) lock_id2,ctime last_convert,DECODE (block,0, 'Not Blocking', /* Not blocking any other processes */1, 'Blocking', /* This lock blocks other processes */2, 'Global', /* This lock is global, so we can't tell */TO_CHAR (block))blocking_othersFROM gv$lock),lock_temp as(select * from dba_locks_cust),lock_holder as(select w.session_id waiting_session,h.session_id holding_session,w.lock_type,h.mode_held,w.mode_requested,w.lock_id1,w.lock_id2from lock_temp w, lock_temp hwhere h.blocking_others in ('Blocking','Global')and h.mode_held != 'None'and h.mode_held != 'Null'and w.mode_requested != 'None'and w.lock_type = h.lock_typeand w.lock_id1 = h.lock_id1and w.lock_id2 = h.lock_id2),lock_holders as(select waiting_session,holding_session,lock_type,mode_held,mode_requested,lock_id1,lock_id2from lock_holderunion allselect holding_session, null, 'None', null, null, null, nullfrom lock_holderminusselect waiting_session, null, 'None', null, null, null, nullfrom lock_holder)select lpad(' ',3*(level-1)) || waiting_session waiting_session,lock_type,mode_requested,mode_held,lock_id1,lock_id2from lock_holdersconnect by prior waiting_session = holding_sessionstart with holding_session is null;总结以上所述是⼩编给⼤家介绍的Oracle锁处理、解锁⽅法,希望对⼤家有所帮助,如果⼤家有任何疑问请给我留⾔,⼩编会及时回复⼤家的。
oracle加锁方式,oracle中加锁与解锁
oracle加锁⽅式,oracle中加锁与解锁oracle中的数据在并发操作时,为了防⽌错误的发⽣可以进⾏记录或者数据库表的加锁操作。
当锁操作完成时可以进⾏解锁操作。
数据库中加锁有两种⽅式,独占模式和共享模式。
1.独占模式,不允许其他会话以任何⽅式共享锁定资源,当进⾏数据库数据修改时可以使⽤这种模式。
2.共享模式,允许在数据访问时,并发共同访问,但是当修改数据时上升为独占模式。
锁分为⾏级锁和表级锁,⾏级锁是锁定某些⾏记录,表级锁是锁定整张表。
1.⾏级锁。
insert update delete (隐式加⾏锁) select...for update(显⽰加⾏锁,共享模式) select * from emp where deptno=30 for update select * from A where id=2 for update skip locked update emp set ename='Joke' where empno=7499;在释放锁之前其他⽤户只能对进⾏数据查询,不能对数据进⾏insert、delete和update。
假如有其他⽤户要锁定同⼀资源:可以使⽤wait ⼦句对锁的等待时间控制如:在另⼀⽤户中:select * from emp where deptno=30 for update wait 2 (等待2秒如2秒钟还未释放资源,系统将会给出提⽰信息。
2.表级锁。
共享模式(in share mode) 共享更新模式(in share update mode) 排他锁模式锁定表的通⽤语法: lock table 表名 in ;1) 共享模式 不允许其他⽤户插⼊,更新和删除⾏,多个⽤户可以同时在同⼀表上设置共享锁,这样设置锁的多个⽤户都只能执⾏查询 lock table emp in share mode;2)共享更新模式(in share update mode) 允许多个⽤户同时锁定表的不同⾏, 允许其他⽤户进⾏DML(insert update delete select)操作 , 除了已锁定的⾏ 如: lock table emp in share update mode; select * from emp where deptno=30 for update //锁定的⾏其他⽤户不能delete ,update 部门30的雇员信息 其他⽤户可以查看锁定的⾏: select * from emp where deptno=303)排他锁模式(限制性强) 不允许其他⽤户插⼊,更新和删除⾏, 允许查看数据,但只有⼀个⽤户可以在表中放置排他锁 lock table emp in exclusive mode;解锁:(1)锁表查询的代码有以下的形式: select count(*) from v$locked_object; select * from v$locked_object;(2)查看哪个表被锁 select b.owner,b.object_name,a.session_id,a.locked_mode from v$locked_object a,dba_objects b where b.object_id = a.object_id; (3)查看是哪个session引起的 select ername,b.sid,b.serial#,logon_time from v$locked_object a,v$session b where a.session_id = b.sid order by b.logon_time;(4)杀掉对应进程 执⾏命令:alter system kill session'1025,41'; 其中1025为sid,41为serial#.。
Oracle查询死锁并解锁的终极处理方法
Oracle查询死锁并解锁的终极处理⽅法⼀些ORACLE中的进程被杀掉后,状态被置为"killed",但是锁定的资源很长时间不释放,有时实在没办法,只好重启数据库。
现在提供⼀种⽅法解决这种问题,那就是在ORACLE中杀不掉的,在OS⼀级再杀。
1.下⾯的语句⽤来查询哪些对象被锁:复制代码代码如下:select object_name,machine,s.sid,s.serial#from v$locked_object l,dba_objects o ,v$session swhere l.object_id = o.object_id and l.session_id=s.sid;2.下⾯的语句⽤来杀死⼀个进程:复制代码代码如下:alter system kill session '24,111';(其中24,111分别是上⾯查询出的sid,serial#)【注】以上两步,可以通过Oracle的管理控制台来执⾏。
3.如果利⽤上⾯的命令杀死⼀个进程后,进程状态被置为"killed",但是锁定的资源很长时间没有被释放,那么可以在os⼀级再杀死相应的进程(线程),⾸先执⾏下⾯的语句获得进程(线程)号:复制代码代码如下:select spid, osuser, s.programfrom v$session s,v$process pwhere s.paddr=p.addr and s.sid=24(24是上⾯的sid)4.在OS上杀死这个进程(线程):1)在unix上,⽤root⾝份执⾏命令:#kill -9 12345(即第3步查询出的spid)2)在windows(unix也适⽤)⽤orakill杀死线程,orakill是oracle提供的⼀个可执⾏命令,语法为:orakill sid thread其中:sid:表⽰要杀死的进程属于的实例名thread:是要杀掉的线程号,即第3步查询出的spid。
oracle解锁账户语句
oracle解锁账户语句
Oracle数据库中,账户被锁定时,用户无法登录该账户。
这种情况下,可以通过解锁账户来恢复用户的登录权限。
解锁账户的语句如下:
ALTER USER <用户名> ACCOUNT UNLOCK;
其中,<用户名>为被锁定的账户的用户名。
执行该语句后,账户将被解锁,用户可以重新登录该账户。
需要注意的是,如果账户被锁定的原因是由于密码错误次数过多导致的,则需要先重置该账户的密码,然后再执行解锁账户的语句。
具体操作如下:
1.使用sys用户登录Oracle数据库
2.执行以下语句,将被锁定账户的密码重置为新密码:
ALTER USER <用户名> IDENTIFIED BY <新密码>;
3.执行以下语句,解锁该账户:
ALTER USER <用户名> ACCOUNT UNLOCK;
以上就是Oracle解锁账户的语句及操作步骤。
在实际使用中,需要根据实际情况进行操作。
- 1 -。
Oracle修改System密码并解锁
Oracle修改System密码并解锁
修改System密码:
1. 进⼊cmd命令界⾯(快捷键是win+R)。
2.
修改管理员⽤户密码(⼀):在命令界⾯输⼊sqlplus “/as sysdba”即可以管理员⾝份链接成功。
3.
修改管理员⽤户密码(⼆):在SQL命令界⾯输⼊
alter user system identified by 123456;
此命令的意思是将管理员⽤户system的密码设为123456.
4.
修改普通⽤户密码(⼀):需要以管理员⽤户先链接成功,在命令界⾯输⼊sqlplus “/as sysdba”以管理员⾝份链接成功。
5.
修改普通⽤户密码(⼆):在SQL命令界⾯输⼊
alter user username identified by 123456;
此命令的意思是将管理员⽤户username(之前创建过username这个⽤户)的密码设为123456.
1.
此时便可以通过管理员⽤户和普通⽤户链接数据库了。
重新打开cmd命令,在命令界⾯输⼊sqlplus,提⽰输⼊⽤户名,然后再输⼊修改好的⼝令密码即可。
解锁
1. 我们在做Oracle监听程序测试时,发现帐户已经被锁定。
2. 在数据库安装电脑上,运⾏窗⼝中输⼊cmd,调出命令提⽰
3. 在命令提⽰符下⾯,⽤管理员⾝份登⼊到数据库
sqlplus / as sysdba
4. 输⼊解锁命令后回车
alter user Scott account unlock;
5. 看见⽤户已更改的字样,表⽰我们的命令已成功执⾏。
oracle解锁数据的方法
oracle解锁数据的方法
在Oracle数据库中,解锁数据的方法取决于锁定的类型和锁定的来源。
下面是一些常见的解锁数据的方法:
1. 手动提交或回滚事务:如果数据被锁定是因为当前事务没有完成,则可以手动提交或回滚事务,以释放锁定的数据。
可以使用以下命令提交事务:
```
COMMIT;
```
或者使用以下命令回滚事务:
```
ROLLBACK;
```
2. 等待其他事务完成:如果数据被其他事务锁定,则可以等待其他事务完成并释放锁定的数据。
3. 杀死会话进程:如果无法等待其他事务完成或无法识别锁定的来源,可以使用以下命令杀死锁定会话进程:
```
ALTER SYSTEM KILL SESSION 'sid, serial#';
```
其中'sid'和'serial#'是锁定会话的标识符,在V$SESSION视图中可以找到。
4. 重启数据库实例:如果数据长时间被锁定或无法解锁,可以考虑重启整个数据库实例来释放锁定的数据。
但是,这种解锁方法应该在其他方法失败后才使用,并且需要小心处理,避免数据丢失或影响其他正在进行的操作。
需要注意的是,解锁数据可能会引起数据一致性问题,必须谨慎使用。
在进行任何解锁操作之前,建议先备份数据以防止意外情况发生。
oracle解锁用户
oracle解 锁 用 户
பைடு நூலகம்1、通常我们遇到oracle用户密码输入多次错误,那么改用户就会变锁定,那么解决方法很简单,如下: 使用plsql工具sys用户登录(亦可dos命令输入:sqlplus / as sysdba ) 解锁 ALTER USER 用户名 ACCOUNT UNLOCK; 2、那么遇到这种用户会被锁的情况,我们可以设置用户密码无限次尝试登录,而该用户不会被锁定: ALTER PROFILE DEFAULT LIMIT FAILED_LOGIN_ATTEMPTS UNLIMITED; 3、另外,做项目运维的小伙伴经常遇到数据库用户密码过期的情况,要定期去修改密码很麻烦,那么我们可以设置用户密码不过期: ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
oracle account is locked-的解决办法
ORA-28000: the account is locked-的解决办法ORA-28000: the account is locked第一步:使用PL/SQL,登录名为system,数据库名称不变,选择类型的时候把Normal修改为Sysdba; 第二步:选择myjob,查看users;第三步:选择system,右击点击“编辑”;第四步:修改密码,把“帐户被锁住”的勾去掉;第五步:点击“应用”再点击“关闭”;第六步:重新登录就可以通过验证了;第二种ALTER USER username ACCOUNT UNLOCK;第三种在plsql developer中要是以scott/tiger登录时提示ora-28000 the account is locked。
解决办法:新装完Oracle10g后,用scott/tiger测试,会出现以下错误提示:oracle10g the account is lockedoracle10g the password has expired原因:默认Oracle10g的scott不能登陆。
解决:(1)conn sys/sys as sysdba; //以DBA的身份登录(2)alter user scott account unlock;// 然后解锁(3)conn scott/tiger //弹出一个修改密码的对话框,修改一下密码就可以了在运行里面输入cmd在DOS模式下输入sqlplus,以system用户名登录,密码是刚装oracle时自己填写的密码orcl,登录进去以后。
SQL> conn sys/sys as sysdba; (分号是必须的但是我是以system登录的所在这不应该写connsys/sys as sysdba应该写conn system/orcl as sysdba;)Connected.SQL> alter user scott account unlock;User altered.SQL> commit;Commit complete.SQL> conn scott/tiger//请输入新密码,并确认后OKPassword changedConnected.这时再到plsql developer里面以scott/tiger登录就可以了。
oracle 解除账户锁定规则
标题:Oracle 解除账户锁定规则一、背景介绍Oracle数据库作为一种重要的关系型数据库管理系统,广泛应用于各行各业的信息管理和数据存储中。
在使用Oracle数据库的过程中,经常会碰到账户被锁定的情况,这给数据库管理人员带来了一定的困扰。
为了解决这一问题,Oracle提供了一定的解除账户锁定规则。
二、账户锁定的原因1. 输入错误超过一定次数2. 管理员手动锁定账户3. 其他未知原因导致的账户锁定三、账户锁定的解除规则1. 通过重置密码解除锁定当账户因为密码输入错误次数过多被锁定时,可以通过重置密码解除锁定。
具体操作步骤如下:(1)使用管理员账户登入Oracle数据库;(2)执行ALTER USER username ACCOUNT UNLOCK语句,将被锁定的账户解锁;(3)执行ALTER USER username IDENTIFIED BY new_password语句,重置该账户的密码。
2. 等待一定时间自动解锁当账户被锁定时,可以选择等待一定时间让系统自动解锁账户。
Oracle默认的自动解锁时间为30分钟,当超过这个时间后,系统会自动解锁账户。
3. 通过SYS用户解锁在特殊情况下,可以使用SYS用户来解锁被锁定的账户。
操作步骤如下:(1)使用SYS用户登入Oracle数据库;(2)执行ALTER USER username ACCOUNT UNLOCK语句,将被锁定的账户解锁。
四、账户锁定规则的设置和管理1. 设置账户锁定策略为了保障数据库的安全性,可以设置账户锁定策略,限制密码错误次数并设置账户锁定时间。
可以通过以下SQL语句设置账户锁定策略:ALTER PROFILE profile_name LIMIT F本人LED_LOGIN_ATTEMPTS n;ALTER PROFILE profile_name LIMIT PASSWORD_LOCK_TIME t;2. 监控账户锁定情况数据库管理员应当定期查看和监控数据库中账户的锁定情况,及时发现并处理异常情况,保障数据库的正常运行。
oracle锁表查询和解锁方法
oracle锁表查询和解锁方法Oracle数据库提供了多种锁表查询和解锁方法,主要包括以下几种:1.查询锁表的方法:-查询数据库中的锁表信息:可以使用`V$LOCKED_OBJECT`视图来查询数据库中当前被锁定的对象和会话信息。
-查看表的锁信息:可以使用`DBA_LOCK`视图来查看指定表被锁定的信息,包括锁定的用户、锁定的模式、锁定的操作等。
-查看表上的锁信息:可以使用`DBA_OBJECTS`视图来查询指定表上的锁信息,包括锁定的用户、锁定的模式、锁定的操作等。
2.解锁表的方法:- 杀死会话:使用`ALTER SYSTEM KILL SESSION 'sid,serial#' IMMEDIATE;`语句可以立即终止指定会话。
其中,`sid`和`serial#`是要终止会话的标识符。
- 释放表锁:使用`ALTER TABLE table_name ENABLE TABLE LOCK`语句可以释放指定表的锁。
其中,`table_name`是要释放锁的表名。
- 修改会话状态:使用`UPDATE V$SESSION SET STATUS = 'KILLED' WHERE SID = sid AND SERIAL# = serial#;`语句可以将指定会话的状态修改为`KILLED`,从而间接释放表锁。
其中,`sid`和`serial#`是要释放锁的会话的标识符。
3.避免锁表的方法:-尽量使用短事务:短事务可以减少对资源的占用时间,从而降低锁表的风险。
-尽量使用较小的粒度锁:使用较小的粒度锁可以减少锁表的范围,提高并发性能。
-合理调整事务隔离级别:使用合适的事务隔离级别可以在保证数据一致性的前提下减少锁表的发生。
-分表、分区表:将大表进行分表或分区,可以减少锁表的范围,提高并发性能。
4.监控锁表情况:- 监控锁表的工具:可以使用Oracle提供的监控工具,如AWR Report、ASH Report、Enterprise Manager等,来实时监控锁表情况。
暴力,破解oracle数据库。
要连接远程的Oracle 数据库,需要知道SID,用户名,密码,当然还有最重要的IP 地址。
SID 如果被管理员修改的话,可以利用sidguess 来进行破解,速度非常的快,至于成功与否,就要看你的字典配置了。
破解效果如图1。
图1Oracle 不同的版本有大量的默认帐户密码。
可是有些情况下,Oracle 数据库管理员把默认的密码给修改了,我们就要选择暴力破解了。
如果帐户破解成功,登录上去,是DBA 权限的话最好,不是的话,也可以利用Oracle 的一些漏洞进行提权到DBA。
进入数据库后,我一般选择的是抓取其他用户的密码哈希值,然后本地Rainbow 破解。
如果同网段还有其他的Oracle 数据库,可以抓包等待其他用户的Oracle 登录验证,取出敏感信息,然后破解。
进一步扩大战果。
下面我就分别讲讲这三种破解方法及相关工具的使用。
Quotation有关Oracle 密码的基础知识1、标准的Oracle 密码可以由英文字母,数字,#,下划线(_),美元字符($)构成,密码的最大长度为30 字符;Oracle 密码不能以"$","#","_"或任何数字开头;密码不能包含像"SELECT","DELETE","CREA TE"这类的Oracle/SQL 关键字。
2、Oracle 的弱算法加密机制:两个相同的用户名和密码在两台不同的Oracle 数据库机器中,将具有相同的哈希值。
这些哈希值存储在ER$表中。
可以通过像DBA_USERS 这类的视图来访问。
3、Oracle 默认配置下,每个帐户如果有10 次的失败登录,此帐户将会被锁定。
但是SYS 帐户在Oracle 数据库中具有最高权限,能够做任何事情,包括启动/关闭Oracle 数据库。
即使SYS 被锁定,也依然能够访问数据库。
一、远程暴力破解由前面的基础知识3,可以得知选择远程破解Oracle 的最好帐户是SYS,因为此帐户永远有效。
Oracle修改用户密码错误次数及解锁用户
Oracle修改⽤户密码错误次数及解锁⽤户ORACLE11g错误密码登录默认是10次,10次错误后⽤户将被锁定,如下:SQL> conn test/123456ERROR: ORA-28000: the account is locked1.查看被锁定的⽤户SQL> select LOCK_DATE,username from dba_users where username='GXGAT';LOCK_DATE USERNAME--------- ------------------------------16-JUN-20 TESTLOCK_DATE为空说明没有锁定,⾮空为锁定。
或SELECT ERNAME,DECODE(L.TYPE, 'TM', 'TABLE LOCK', 'TX', 'ROW LOCK', NULL) LOCK_LEVEL,O.OWNER,O.OBJECT_NAME,O.OBJECT_TYPE,S.SID,S.SERIAL#,S.TERMINAL,S.MACHINE,S.PROGRAM,S.OSUSERFROM V$SESSION S, V$LOCK L, DBA_OBJECTS OWHERE S.SID = L.SIDAND O.OBJECT_ID = L.ID1AND ERNAME IS NOT NULL;2.解锁⽤户⽅式:登陆sys⽤户,执⾏解锁命令SQL> alter user test account unlock;User altered.SQL> conn test/passwordConnected.3.现在我们来查看下默认连接错误锁定次数SQL> select * from dba_profiles where resource_name like 'FAILED_LOGIN_ATTEMPTS%';PROFILE RESOURCE_NAME RESOURCE LIMIT-------------------------------------------------------------------------------------------------------------------------------- -------------------------------- -------- ---------------------------------------------------------------------------------------------------------------COM INH IMP--- --- ---DEFAULT FAILED_LOGIN_ATTEMPTS PASSWORD 10NO NO NO4.修改默认的错误登录次数,为不限制(为安全起见,不建议使⽤)SQL> alter profile DEFAULT limit FAILED_LOGIN_ATTEMPTS UNLIMITED; SQL>alter profile default limit failed_login_attempts 20; //修改为20次。
oracle数据库用户解锁语句
oracle数据库用户解锁语句Oracle数据库用户解锁是指将被锁定的用户账号恢复为可正常使用的状态。
用户账号被锁定可以是由于输入错误的密码次数超过了系统限制,或者是由于管理员手动锁定了该用户账号。
下面列举了10个解锁Oracle数据库用户的语句。
1. ALTER USER语句ALTER USER语句是最常用的解锁用户账号的方法之一。
可以使用以下语法将用户账号解锁:```ALTER USER <username> ACCOUNT UNLOCK;```其中,`<username>`是要解锁的用户账号名称。
执行这条语句后,用户账号将被解锁并可以正常使用。
2. UNLOCK USER语句UNLOCK USER语句也可以用来解锁用户账号,语法如下:```UNLOCK USER <username>;```同样,`<username>`是要解锁的用户账号名称。
执行这条语句后,用户账号将被解锁。
3. 使用ADMIN命令解锁用户账号在Oracle数据库中,可以使用ADMIN命令解锁用户账号。
具体步骤如下:a. 使用sysdba权限登录到数据库:```sqlplus / as sysdba```b. 执行ADMIN命令解锁用户账号:```ADMIN UNLOCK USER <username>;```4. 使用ALTER SYSTEM命令解锁用户账号另一种解锁用户账号的方法是使用ALTER SYSTEM命令。
具体步骤如下:a. 使用sysdba权限登录到数据库:```sqlplus / as sysdba```b. 执行ALTER SYSTEM命令解锁用户账号:```ALTER SYSTEM UNLOCK USER '<username>';```5. 使用DBMS_LOCK.SLEEP函数解锁用户账号DBMS_LOCK.SLEEP函数可以用来解锁用户账号,具体步骤如下:a. 使用sysdba权限登录到数据库:```sqlplus / as sysdba```b. 执行DBMS_LOCK.SLEEP函数解锁用户账号:```BEGINDBMS_LOCK.SLEEP(1);EXECUTE IMMEDIATE 'ALTER USER <username> ACCOUNTUNLOCK';END;/```6. 使用DBMS_SYS_SQL解锁用户账号DBMS_SYS_SQL包中的EXECUTE_AND_FETCH函数可以用来执行动态SQL语句,从而解锁用户账号。
oracle锁表查询和解锁方法
oracle锁表查询和解锁方法## Oracle 锁表查询和解锁方法Oracle数据库是当今最流行的关系型数据库系统,其中有一种十分重要的特性就是它可以锁定数据库表,防止别人修改该表的内容,又被称为并发控制。
下面我们分别来看看Oracle中查询和解锁表的方法:### 一、Oracle中查询锁表方法1. 使用系统内置函数查询锁表- 以DBA权限登录,使用“select * from v$lock;”查询锁表状态;- 使用“SELECT l.sid, l.type, l.mode, l.id1,ername, s.osuser, s.machine FROM v$lock l,v$session s WHERE l.sid=s.sid;”查询出锁表具体信息,以便确定锁表的具体情况和引起表锁定的原因。
2. 使用dba_dml_locks视图查看锁表- 以DBA账号登录,使用“select * fromdba_dml_locks;”命令查看锁表的状态;- 使用“select * f rom dba_dml_locks where name='表名' and mode_held='锁定模式';”命令查看表名称以及表上锁定的模式。
### 二、Oracle中解锁表方法1. 强制执行表解锁:- 使用“ALTER SYSTEM KILL SESSION'sid,serial#' IMMEDIATE;”命令强制杀死会话占用表的会话,以释放表上的锁定;- 使用“select * from v$lock;”命令查询是否成功释放表的锁定。
2. 将表上锁定的模式转换- 使用Oracle的“alter system 的 kill session 命令”可以将表上的锁定模式转换,将表上的某个类型的锁定模式被另外一种更安全的锁定模式替换; - 使用“Select * from v$lock;” 命令查询是否转换成功。
Oracle锁定和解锁用户的命令
Oracle锁定和解锁⽤户的命令
转:/art/200910/158576.htm
在DBA的⽇常⼯作中,经常遇到为Oracle⽤户解锁的操作;这篇⽂章给出在命令⾏下进⾏Oracle⽤户解锁的操作⽅法,通过⼏条简单的解锁语句就能完成此项⼯作。
下⾯是具体的过程:
默认的scott⽤户是被锁定的,先解锁就能登陆上了。
使⽤下⾯的语句解锁scott:
alter user scott account unlock;
解锁之后可能会要求你该密码:
alter user scott identified by tiger;
再登陆:
sqlplus scott/tiger
就能登陆了
Oracle锁定和解锁⽤户的命令
SQL> conn /as sysdba
已连接。
//scott ⽤户在没有设定tieger默认密码时,登陆不上
锁定⽤户的⽅法:
SQL> alter user test account lock;
⽤户已更改。
-------test⽤户登陆数据库,失败了。
C:\>sqlplus test/test
ERROR:
ORA-28000: the account is locked
Oracle⽤户解锁的⽅法:
SQL> conn /as sysdba
SQL> alter user test account unlock;
⽤户已更改。
这样就完成了Oracle的⽤户解锁操作。
oracle11g用户被锁定the account is locked的解决办法
Oracle11g用户被锁定the account is locked的解决办法用SQL Plus登录时输入:conn scott/tiger给出提示:ERROR:ORA-28000: the account is locked解决方法:解决:(1)以DBA的身份登录另一个用户,输入:c:> sqlplus sys/test1234 as sysdba(2)为scott解锁,输入:alter user scott account unlock;给出提示:用户已更改。
SQL> conn scott/tigerERROR:ORA-28001: the password has expired更改scott 的口令新口令:(3)输入新的密码.测试、运行程序时,一般使用服务器上的oracle服务,2010年春节后第一天来上班,服务器整体down掉了,所以只好使用本机的oracle服务,是两年装的,连system的密码都不记得了。
首先,开启本地的oracle服务,开始-->设置-->按制面板-->管理工具-->服务按字母“O”很快找到oracle 相关的九个服务,OracleOraDb10g_home1TNSListener 服务一般是开着的,因为开发人员一般都要在自己的机子上使用客户端连接远程的数据库服务器,如果大家没有开就开一下吧。
OracleServiceORCL 服务,准确的说应该是OracleServiceSID服务,我的SID是的oracle默认的ORCL,所以就是OracleServiceORCL ,也开启,OK了。
其次,在NET Manager 中配置一个服务命名,记得以前在NET Manager中是会自动配置一个本地的服务命名的,好像是叫LOCAL,但是在oracle 10中没有,应该不会是我两年前删除了!那就自己配置吧,就那么几步,很简单了,到了最后测试,默认使用scott /tiger 进行测试,出现ora-280000 the account is locked 提示,换system /manager 也是ora-280000 the account is locked ,账号也锁定,看来得解决这个问题。
ORA-28000 the account is locked-的解决办法
ORA-28000: the account is locked-的解决办法ORA-28000: the account is locked第一步:使用PL/SQL,登录名为system,数据库名称不变,选择类型的时候把Normal修改为Sysdba;第二步:选择myjob,查看users;第三步:选择system,右击点击“编辑”;第四步:修改密码,把“帐户被锁住”的勾去掉;第五步:点击“应用”再点击“关闭”;第六步:重新登录就可以通过验证了;第二种ALTER USER username ACCOUNT UNLOCK;第三种在plsql developer中要是以scott/tiger登录时提示ora-28000 the account is locked。
解决办法:新装完Oracle10g后,用scott/tiger测试,会出现以下错误提示:oracle10g the account is lockedoracle10g the password has expired原因:默认Oracle10g的scott不能登陆。
解决:(1)conn sys/sys as sysdba; //以DBA的身份登录(2)alter user scott account unlock;// 然后解锁(3)conn scott/tiger //弹出一个修改密码的对话框,修改一下密码就可以了在运行里面输入cmd在DOS模式下输入sqlplus,以system用户名登录,密码是刚装oracle时自己填写的密码orcl,登录进去以后。
SQL> conn sys/sys as sysdba; (分号是必须的但是我是以system登录的所在这不应该写conn sys/sys as sysdba应该写conn system/orcl as sysdba;)Connected.SQL> alter user scott account unlock;User altered.SQL> commit;Commit complete.SQL> conn scott/tiger//请输入新密码,并确认后OKPassword changedConnected.这时再到plsql developer里面以scott/tiger登录就可以了。
oracletheaccountislocked的解决方法
oracle theaccou nt is lock ed 的解决方法收藏第一种ORA-28000: th e acc ountis lo cked第一步:使用PL/S QL,登录名为sys tem,数据库名称不变,选择类型的时候把Norma l修改为S ysdba;第二步:选择my objec t,查看u sers;第三步:选择sys tem,右击点击“编辑”;第四步:修改密码,把“帐户被锁住”的勾去掉;第五步:点击“应用”再点击“关闭”;第六步:重新登录就可以通过验证了;第二种A LTERUSERusern ame A CCOUN T UNL OCK;第三种在plsq l dev elope r中要是以scott/tige r登录时提示ora-28000 theaccou nt is lock ed。
解决办法:新装完Oracl e10g后,用sco tt/ti ger测试,会出现以下错误提示:oracl e10gthe a ccoun t islocke doracl e10gthe p asswo rd ha s exp ired原因:默认Oracl e10g的scott不能登陆。
解决:(1)co nn sy s/sys as s ysdba; //以DBA的身份登录(2)alt er us er sc ott a ccoun t unl ock;// 然后解锁(3)connscott/tige r //弹出一个修改密码的对话框,修改一下密码就可以了在运行里面输入cmd在DOS模式下输入sq lplus,以sys tem用户名登录,密码是刚装o racle时自己填写的密码or cl,登录进去以后。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ORACLE账户锁定解决办法如果数据库中某个账户登录时,提示被锁定
则如果想使用此账户登录时,解决办法参考下文。
●操作系统版本为:
Microsoft Windows[版本5.2.3790]
(C) 版权所有1985-2003 Microsoft Corp.
●解决方法:
C:\Documents and Settings\Administrator>sqlplus /nolog
SQL*Plus: Release 10.2.0.1.0 - Production on 星期三6月24 10:43:39 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
SQL> conn /as sysdba
已连接。
SQL> alter user system account unlock;
用户已更改。
SQL> exit
从OracleDatabase 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options 断开
C:\Documents and Settings\Administrator>sqlplus
SQL*Plus: Release 10.2.0.1.0 - Production on 星期三6月24 10:45:26 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
请输入用户名: system
输入口令:
连接到:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
SQL>
至此账户解锁成功。
另外一种方法:
同理,如果想锁定此用户的话:
在系统账户下,及sys账户下,
Sqlplus / as sysdba
SQL>ALTER USER scott ACCOUNT LOCK;
用户已更改。