10g sqlplus的一個bug
今天測試一個儲存過程的時候無意發現了一個10g sqlplus 的bug.
資料庫版本資訊:
SQL> select * from v$version;
BANNER
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bi
PL/SQL Release 10.2.0.1.0 - Production
CORE 10.2.0.1.0 Production
TNS for Linux: Version 10.2.0.1.0 - Production
NLSRTL Version 10.2.0.1.0 - Production
先建立一個過程,證明許可權是沒問題的:
SQL> create or replace procedure p_test is
2 begin
null;
3 4 end;
5 /
Procedure created.
--開啟autotrace,執行後關閉autotrace
SQL> set autotrace trace
SQL> select 1 from dual;
Execution Plan
----------------------------------------------------------
Plan hash value: 1388734953
-----------------------------------------------------------------
| Id | Operation | Name | Rows | Cost (%CPU)| Time |
-----------------------------------------------------------------
| 0 | SELECT STATEMENT | | 1 | 2 (0)| 00:00:01 |
| 1 | FAST DUAL | | 1 | 2 (0)| 00:00:01 |
-----------------------------------------------------------------
Statistics
----------------------------------------------------------
0 recursive calls
0 db block gets
0 consistent gets
0 physical reads
0 redo size
508 bytes sent via SQL*Net to client
468 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
1 rows processed
SQL> set autotrace off
--此時再次建立過程會提示許可權不足
SQL> create or replace procedure p_test is
2 begin
3 null;
4 null;
5 end;
6 /
create or replace procedure p_test is
*
ERROR at line 1:
ORA-01031: insufficient privileges
遇到這種情況,只能重新連線,否則執行什麼都會報許可權不足。
--查了一下,後來修改的過程並沒有成功
SQL> select text from user_source where name='P_TEST';
TEXT
--------------------------------------------------------------------------------
procedure p_test is
begin
null;
end;
SQL> show user
USER is "SYS"
簡單總結一下出發這個bug的條件:
1、以sys使用者登入
2、在開啟、並關閉autotrace開關後執行SQL
3、資料庫版本是10g(只在10201測試過)
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/231499/viewspace-63857/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 10G SQLPLUS CLEAR SCREEN BUGSQL
- 遇著個oracle 10g bugOracle 10g
- solaris 10安裝oracle 10g到86%時一個BUGOracle 10g
- oracle的一個bugOracle
- Sqlplus for Solaris上SPOOL OUT的bugSQL
- 一個排序引發的BUG排序
- 一個關於recyclerView的bugView
- Hive partition prune的一個BugHive
- Android assets的一個bugAndroid
- 關於UIInterfaceOrientation的一個bugUI
- 圖靈社群的一個BUG圖靈
- oracle 10.2.0.2.0的一個BUGOracle
- Oracle 10G 新特性--SQLPLUS的改進Oracle 10gSQL
- 10g bug 偵聽掛起 兩個偵聽程式
- 一個bug造就的經典遊戲....遊戲
- 發現Mapstruct的一個bugStruct
- Oracle關於nvl的一個BugOracle
- FluentData Mysql分頁的一個BUGMySql
- 一個oracle查詢引起的bugOracle
- 今天遇到一個VERITAS NBU的BUG
- [BUG反饋]AdminController類的一個小bugController
- 記一個RxJava使用bugRxJava
- 10g Sqlplus工具登陸小改進SQL
- 10G中SQLPLUS的PAGESIZE與HEAD的關係SQL
- NDK clang編譯器的一個bug編譯
- onethink安裝時的一個bug
- java log4j 的一個bugJava
- 找到Intel手冊裡的一個bugIntel
- 一個oracle bug的簡單驗證Oracle
- Oracle 10g Logminer clob bugOracle 10g
- oracle 10g clusterware 在redhat as 5上的bugOracle 10gRedhat
- oracle 10g clusterware 在redhat as 5上的bugOracle 10gRedhat
- SpringBoot讀取yml的一個bugSpring Boot
- 這不會又是一個Go的BUG吧?Go
- 我好像發現了一個Go的Bug?Go
- 一個停下車來處理 BUG 的 IT 男……
- jdk 原始碼的一個BUG,大家來看看JDK原始碼
- 一個有點深度的shell BUG除錯除錯