首页 > 数据库 >[20240818]测试21c下sqlplus show recyclebin的小问题2.txt

[20240818]测试21c下sqlplus show recyclebin的小问题2.txt

时间:2024-08-20 22:06:05浏览次数:7  
标签:NAME 16 08 show 2024 sqlplus 21c book01p

[20240818]测试21c下sqlplus show recyclebin的小问题2.txt

--//以前测试过,链接[20210722]sqlplus下show recycebin的小问题.txt
--//注:recycebin 拼写错误 应该是 recyclebin.
--//这个问题当时也是浪费了大量实际,我记忆遇到问题时是上午,执行show recyclebin ;[注空格+;],linux下sqlplus进程会直接崩溃.
--//当时手头有其他事情,第二天测试一切正常,好在我使用rlwrap会写.sqlplus_history,这才发现问题.
--//当时测试11g,看看21c情况如下.

1.环境:
SCOTT@book01p> @pr
==============================
PORT_STRING                   : x86_64/Linux 2.4.xx
VERSION                       : 21.0.0.0.0
BANNER                        : Oracle Database 21c Enterprise Edition Release 21.0.0.0.0 - Production
BANNER_FULL                   : Oracle Database 21c Enterprise Edition Release 21.0.0.0.0 - Production
Version 21.3.0.0.0
BANNER_LEGACY                 : Oracle Database 21c Enterprise Edition Release 21.0.0.0.0 - Production
CON_ID                        : 0
PL/SQL procedure successfully completed.

2.测试:
SCOTT@book01p> create table tx as select * from dept ;
Table created.

SCOTT@book01p> create table ty as select * from dept ;
Table created.

SCOTT@book01p> show recyclebin

SCOTT@book01p> drop table tx ;
Table dropped.

SCOTT@book01p> drop table ty ;
Table dropped.

SCOTT@book01p> show recyclebin
ORIGINAL NAME    RECYCLEBIN NAME                OBJECT TYPE  DROP TIME
---------------- ------------------------------ ------------ -------------------
TX               BIN$H8nC3h4CElHgY2U4qMBHSA==$0 TABLE        2024-08-16:16:29:43
TY               BIN$H8nC3h4DElHgY2U4qMBHSA==$0 TABLE        2024-08-16:16:29:46

--//但是后面测试出现的问题更加奇葩.

3.测试结果:
$ rlsql scott/book@book01p
SQL*Plus: Release 21.0.0.0.0 - Production on Sun Aug 18 09:37:20 2024
Version 21.3.0.0.0
Copyright (c) 1982, 2021, Oracle.  All rights reserved.
Last Successful login time: Sun Aug 18 2024 09:07:02 +08:00

Connected to:
Oracle Database 21c Enterprise Edition Release 21.0.0.0.0 - Production
Version 21.3.0.0.0

SCOTT@book01p> show linesize
linesize 269
SCOTT@book01p> show recyclebin    ;
SCOTT@book01p> @ hash

HASH_VALUE SQL_ID        CHILD_NUMBER KGL_BUCKET PLAN_HASH_VALUE HASH_HEX   SQL_EXEC_START      SQL_EXEC_ID
---------- ------------- ------------ ---------- --------------- ---------- ------------------- -----------
 551811298 b3vdwbwhf7y72            0     129250       360870971  20e3f8e2  2024-08-18 09:37:29    16777220

SCOTT@book01p> show recyclebin    ;
ORIGINAL NAME    RECYCLEBIN NAME                OBJECT TYPE  DROP TIME
---------------- ------------------------------ ------------ -------------------
TX               BIN$H8nC3h4CElHgY2U4qMBHSA==$0 TABLE        2024-08-16:16:29:43
TY               BIN$H8nC3h4DElHgY2U4qMBHSA==$0 TABLE        2024-08-16:16:29:46
SCOTT@book01p> @ hash

HASH_VALUE SQL_ID        CHILD_NUMBER KGL_BUCKET PLAN_HASH_VALUE HASH_HEX   SQL_EXEC_START      SQL_EXEC_ID
---------- ------------- ------------ ---------- --------------- ---------- ------------------- -----------
2786599706 c380v8fm1h8su            0       8986      1501318174  a618231a  2024-08-18 09:38:16    16777216

--//第1次显示没有输出,第2次显示有输出!!注意show recyclebin执行后面有空格+分号.
--//注意看每次执行的sql_id不同.

SCOTT@book01p> @ sql_id b3vdwbwhf7y72
--SQL_ID = b3vdwbwhf7y72
SELECT ORIGINAL_NAME ORIGNAME_PLUS_SHOW_RECYC,
       OBJECT_NAME OBJECTNAME_PLUS_SHOW_RECYC,TYPE OBJTYPE_PLUS_SHOW_RECYC,
       DROPTIME DROPTIME_PLUS_SHOW_RECYC
  FROM USER_RECYCLEBIN
 WHERE CAN_UNDROP    = 'YES'
   AND ORIGINAL_NAME = UPPER(:NMBIND_SHOW_OBJ)
   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 ORDER BY ORIGINAL_NAME,DROPTIME DESC,OBJECT_NAME;

SCOTT@book01p> @ sql_id c380v8fm1h8su
--SQL_ID = c380v8fm1h8su
SELECT ORIGINAL_NAME ORIGNAME_PLUS_SHOW_RECYC,
       OBJECT_NAME OBJECTNAME_PLUS_SHOW_RECYC,TYPE OBJTYPE_PLUS_SHOW_RECYC,
       DROPTIME DROPTIME_PLUS_SHOW_RECYC
  FROM USER_RECYCLEBIN
 WHERE CAN_UNDROP = 'YES'
 ORDER BY ORIGINAL_NAME,DROPTIME DESC,OBJECT_NAME;

--//注意看下划线,第1次有带入参数:NMBIND_SHOW_OBJ,而第2次没有带入参数.

SCOTT@book01p> @ bind_cap b3vdwbwhf7y72 ''
SQL_ID        CHILD_NUMBER WAS NAME                             POSITION MAX_LENGTH LAST_CAPTURED       DATATYPE_STRING VALUE_STRING INST_ID
------------- ------------ --- ------------------------------ ---------- ---------- ------------------- --------------- ------------ -------
b3vdwbwhf7y72            0 YES :NMBIND_SHOW_OBJ                        1         32 2024-08-18 09:37:29 VARCHAR2(32)    С?                1
--//注意看带入的值存在一个乱码.查询肯定没有这个表,自然第1次查询没有输出,而第2次没有带入参数.自然是全部输出.
--//如果以前在11g是crash的化,21c问题视乎更严重,第1次不知道那里取了值,第2次不知道为什么选择没有参数的执行.

SCOTT@book01p> show recyclebin  ;
SCOTT@book01p> show recyclebin  ;
ORIGINAL NAME    RECYCLEBIN NAME                OBJECT TYPE  DROP TIME
---------------- ------------------------------ ------------ -------------------
TX               BIN$H8nC3h4CElHgY2U4qMBHSA==$0 TABLE        2024-08-16:16:29:43
TY               BIN$H8nC3h4DElHgY2U4qMBHSA==$0 TABLE        2024-08-16:16:29:46
SCOTT@book01p> show recyclebin  ;
ORIGINAL NAME    RECYCLEBIN NAME                OBJECT TYPE  DROP TIME
---------------- ------------------------------ ------------ -------------------
TX               BIN$H8nC3h4CElHgY2U4qMBHSA==$0 TABLE        2024-08-16:16:29:43
TY               BIN$H8nC3h4DElHgY2U4qMBHSA==$0 TABLE        2024-08-16:16:29:46
SCOTT@book01p> show recyclebin  ;
ORIGINAL NAME    RECYCLEBIN NAME                OBJECT TYPE  DROP TIME
---------------- ------------------------------ ------------ -------------------
TX               BIN$H8nC3h4CElHgY2U4qMBHSA==$0 TABLE        2024-08-16:16:29:43
TY               BIN$H8nC3h4DElHgY2U4qMBHSA==$0 TABLE        2024-08-16:16:29:46
SCOTT@book01p> show recyclebin  ;
--//测试时有时候正常有时候异常,相同的执行方法结果可以完成不同.
--//真是见鬼了.放弃探究.
--//我使用windows 21c的sqlplus客户端测试:

[email protected]:1521/book01p> show recyclebin ;
--//每次都是没有输出!!
[email protected]:1521/book01p> @ hash
HASH_VALUE SQL_ID        CHILD_NUMBER KGL_BUCKET PL
---------- ------------- ------------ ---------- --------------- ---------- ------------------- -----------
 551811298 b3vdwbwhf7y72            0     129250       360870971  20e3f8e2  2024-08-18 11:38:39    16777220

[email protected]:1521/book01p> @ bind_cap b3vdwbwhf7y72 ''
SQL_ID        CHILD_NUMBER WAS NAME                             POSITION MAX_LENGTH LAST_CAPTURED       DATATYPE_STRING VALUE_STRING INST_ID
------------- ------------ --- ------------------------------ ---------- ---------- ------------------- --------------- ------------ -------
b3vdwbwhf7y72            0 YES :NMBIND_SHOW_OBJ                        1         32 2024-08-18 11:36:25 VARCHAR2(32)    ||to_char          1
--//但是抓取的绑定变量值明显存在问题.

5.总结:
--//不想在上面在浪费时间,怎么感觉oracel的bug也太多了.
--//总之规避的方法就是在结尾写分号之前不要留空格.
--//或者干脆不写分号,实际上对于这类语句写分号是多余的.

标签:NAME,16,08,show,2024,sqlplus,21c,book01p
From: https://www.cnblogs.com/lfree/p/18370409

相关文章

  • show processlist查看Mysql当前正在运行的线程
    showprocesslistshowprocesslist;--或者SELECTid,db,user,host,command,time,state,infofrominformation_schema.PROCESSLISTWHERE1=1--andcommand!='Sleep'ANDHOSTLIKE'%localhost%'orderbytimedescID定义:每个连......
  • Centos7使用RPM包安装Oracle21c数据库(EE)
    Centos7使用RPM包安装Oracle21c数据库(EE)官方下载链接21c标准版安装包信息:文件名:LINUX.X64_213000_db_home.zip(64-bit)(3,109,225,519bytes)(sha256sum-c05d5c32a72b9bf84ab6babb49aee99cbb403930406aabe3cf2f94f1d35e0916)21cxe版安装包信息:文件名:oracle-data......
  • Oracle21c数据库安装问题记录
    Oracle21c数据库安装问题记录1.安装问题1.1Oracle监听器配置错误:为该监听程序提供的信息正由此计算机上的其他软件使用转载链接:https://blog.itpub.net/23557469/viewspace-1117140/在Linux上安装好Oracle10g,配置监听器,却得到:为该监听程序提供的信息正由此计算机上的其......
  • Centos7使用RPM包安装Oracle21c数据库(XE)
    Centos7使用RPM包安装Oracle21c数据库(XE)官方下载链接21c标准版安装包信息:文件名:LINUX.X64_213000_db_home.zip(64-bit)(3,109,225,519bytes)(sha256sum-c05d5c32a72b9bf84ab6babb49aee99cbb403930406aabe3cf2f94f1d35e0916)21cxe版安装包信息:文件名:oracle-data......
  • ctfshow-web入门-sql注入(web224-web230)文件类型注入、routines存储过程与函数状态、ha
    目录1、web2242、web2253、web2264、web2275、web2286、web2297、web2301、web224登录页面测了下没发现注入点存在robots.txt访问/pwdreset.php  ,是管理员密码重置的页面直接重置密码,这里以123456为例使用admin/123456登录 来到一个文件生成界......
  • v-show指令
    v-show表示是否显示和v-if用法一样但是v-if为false时,是不会加载div的。v-show为true是会加载div的,但是会加上display:none的属性。<divid="app"><!--用于根据条件展示元素的选项是v-show指令,用法和v-if一致.--><!--v-showv-if用法类似,实现效果类似,......
  • 【CTF刷题4】ctfshow刷题web部分wp(3)
    题目来源:ctfshow菜狗杯算力超群考点:抓包,eval()函数利用,漏洞利用打开发现是个计算器。一般碰到计算器就很容易和命令执行扯到一块。随便计算下然后抓个包发现是get方法,改参数让它报错。发现eval()函数。python语言,用危险函数eval()进行运算。这里我们使用沙......
  • [20240815]oracle21c环境变量ORACLE_PATH与SQLPATH(windows).txt
    [20240815]oracle21c环境变量ORACLE_PATH与SQLPATH(windows).txt--//我记忆以前测试过这个问题,当时是家里的笔记本,安装oracle12.2cforwindows.OS:windows7,发现无法访问SQLPATH或者--//ORACLE_PATH环境变量定义的路径下login.sql文件.我当时解决办法就是登录手工执行init.sq......
  • [20240816]oracle21c环境变量ORACLE_PATH与SQLPATH(linux).txt
    [20240816]oracle21c环境变量ORACLE_PATH与SQLPATH(linux).txt--//我记忆以前测试过这个问题,当时是家里的笔记本,安装oracle12.2cforwindows.OS:windows7,发现无法访问SQLPATH或者--//ORACLE_PATH环境变量定义的路径下login.sql文件.我当时解决办法就是登录手工执行init.sql......
  • [20240813]跟踪sqlplus登录执行了什么5(21c).txt
    [20240813]跟踪sqlplus登录执行了什么5(21c).txt--//跟踪看看sqlplus21c版本访问数据库21c时,在执行用户调用命令前执行一些什么sql语句。1.环境:[email protected]:1521/book>@prxx==============================PORT_STRING                  :x86_64/L......