日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

linux怎么锁定test用户,用户被锁定不影响JOB的运行

發布時間:2024/4/14 48 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux怎么锁定test用户,用户被锁定不影响JOB的运行 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

今天在維護用戶的帳號狀態的時候碰到這個問題。和同事討論這個問題的時候,我認為即使用戶的帳號被鎖定,JOB也可以運行。

用一個建立例子來說明這個問題:

SQL> conn / as sysdba

Connected.

SQL> create user u_test identified by u_test default tablespace ndmain;

User created.

SQL> grant connect, resource to u_test;

Grant succeeded.

SQL> conn u_test/u_test

Connected.

SQL> create table t (time date);

Table created.

SQL> alter session set nls_date_format = 'yyyy-mm-dd hh24:mi:ss';

Session altered.

SQL> declare

2? v_job number;

3? begin

4? dbms_job.submit(v_job, 'begin insert into t values (sysdate); end;', to_date('2009-8-26 11:0:0'));

5? commit;

6? end;

7? /

PL/SQL procedure successfully completed.

SQL> col what format a45

SQL> select job, what, next_date from user_jobs;

JOB WHAT????????????????????????????????????????? NEXT_DATE

---------- --------------------------------------------- -------------------

50 begin insert into t values (sysdate); end;??? 2009-08-26 11:00:00

SQL> select sysdate from dual;

SYSDATE

-------------------

2009-08-26 10:44:22

建立一個U_TEST用戶,授權必要的權限,然后建立一張測試表,并設定一個JOB,在11點的時候向測試表中插入系統時間。

現在的時間是10點44分,下面鎖住U_TEST用戶:

SQL> conn / as sysdba

Connected.

SQL> alter user u_test account lock;

User altered.

SQL> select username, account_status

2? from dba_users

3? where username = 'U_TEST';

USERNAME?????????????????????? ACCOUNT_STATUS

------------------------------ --------------------------------

U_TEST???????????????????????? LOCKED

SQL> alter session set nls_date_format = 'yyyy-mm-dd hh24:mi:ss';

Session altered.

SQL> select sysdate from dual;

SYSDATE

-------------------

2009-08-26 10:45:59

SQL> select * from u_test.t;

no rows selected

鎖定用戶后,目前的時間是10點46分左右,U_TEST用戶下的T表還沒有記錄,等待一段時間后:

SQL> select sysdate from dual;

SYSDATE

-------------------

2009-08-26 10:59:18

SQL> select sysdate from dual;

SYSDATE

-------------------

2009-08-26 11:00:50

SQL> select * from u_test.t;

TIME

-------------------

2009-08-26 11:00:01

SQL> select username, account_status, lock_date

2? from dba_users

3? where username = 'U_TEST';

USERNAME?????????????????????? ACCOUNT_STATUS?????????????????? LOCK_DATE

------------------------------ -------------------------------- -------------------

U_TEST???????????????????????? LOCKED?????????????????????????? 2009-08-26 10:44:52

可以看到,在11點的時候JOB運行,向測試表中插入了JOB運行時的系統時間。而檢查U_TEST用戶可以發現,從10點44分起,這個用戶一直處于鎖定狀態。

這說明JOB的運行和用戶是否被鎖定無關,因為JOB的運行并不需要登陸操作。以前碰到過的一個問題從另一方面說明了這一點:JOB自動執行出錯,但手工執行正常——淺談job和database link的一個特點:

總結

以上是生活随笔為你收集整理的linux怎么锁定test用户,用户被锁定不影响JOB的运行的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。