今天在做 wrap 的测试实验的时候,出现一个很奇怪的现象,就是加密不成功。
具体表现为:1.加密后的文件大小为0kb。
2.加密后的文件仍然可视。
具体测试步骤如下:

D:\Just4work\someSQLs>wrap iname=test_oracle_warp.sql

PL/SQL Wrapper: Release 11.2.0.1.0- Production on 星期五 2月  21 15:26:40 2014

Copyright (c) 1993, 2009, Oracle.  All rights reserved.

Processing test_oracle_warp.sql to test_oracle_warp.plb

D:\Just4work\someSQLs>dir /s test_oracle*
驱动器 D 中的卷是 work
卷的序列号是 F4A9-7648 D:\Just4work\someSQLs 的目录 2014/02/21 15:26 0 test_oracle_warp.plb
2014/02/21 15:23 3,582 test_oracle_warp.sql
2 个文件 3,582 字节 所列文件总数:
2 个文件 3,582 字节
0 个目录 171,316,117,504 可用字节

在另一台装有完整数据库的机器上测试:

oracle@zen-VirtualBox:~$ ls -l | grep test
-rw-r----- 1 oracle oinstall 20987904 Feb 21 12:01 tab16ktest.dbf
-rw-r--r-- 1 oracle oinstall 1789 Feb 21 15:06 test_oracle_wrap2.plb
-rw-r--r-- 1 oracle oinstall 23316 Feb 21 15:03 test_oracle_wrap2.sql
-rw-r--r-- 1 oracle oinstall 3492 Feb 21 16:03 test_oracle_wrap3.sql
-rw-r--r-- 1 oracle oinstall 552 Feb 21 15:00 test_oracle_wrap.plb
-rw-r--r-- 1 oracle oinstall 692 Feb 21 14:59 test_oracle_wrap.sql
oracle@zen-VirtualBox:~$ wrap iname=test_oracle_wrap3.sql PL/SQL Wrapper: Release 11.2.0.1.0- 64bit Production on Fri Feb 21 16:04:30 2014 Copyright (c) 1993, 2009, Oracle. All rights reserved. Processing test_oracle_wrap3.sql to test_oracle_wrap3.plb
oracle@zen-VirtualBox:~$ ls -l | grep test
-rw-r----- 1 oracle oinstall 20987904 Feb 21 12:01 tab16ktest.dbf
-rw-r--r-- 1 oracle oinstall 1789 Feb 21 15:06 test_oracle_wrap2.plb
-rw-r--r-- 1 oracle oinstall 23316 Feb 21 15:03 test_oracle_wrap2.sql
-rw-r--r-- 1 oracle oinstall 1106 Feb 21 16:04 test_oracle_wrap3.plb
-rw-r--r-- 1 oracle oinstall 3492 Feb 21 16:03 test_oracle_wrap3.sql
-rw-r--r-- 1 oracle oinstall 552 Feb 21 15:00 test_oracle_wrap.plb
-rw-r--r-- 1 oracle oinstall 692 Feb 21 14:59 test_oracle_wrap.sql oracle@zen-VirtualBox:~$ cat test_oracle_wrap3.plb
CREATE OR REPLACE PROCEDURE zx_test_satisfy_analyse wrapped
a000000
354
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
7
8d4 3b0
UsqjIEQoNf3Spb35eItCneQalf4wgztc10rrfC+LbrB1BRsJw3mqYURRAFP0BQ3fLdYAPrrR
PBxvvb1SKRxU2x2mBt39ytx6iNUc1t7x6FJ4ogwCjSwFT8ETJPYbscWLoWutzzAgICDfxJ/H
EPjJTpL/h52YPxLEvgjPKKk7VmXH3k6JodXTL9MrWcYfWdAVYlY7iwxr8l85r8KFi3EHjdg1
QN84hfZQ90yTp8FxGyuFAvysKsbmDE1AxaUvePZqDbnd7aZGa4KHghEZIyvwLtq9td4vjaY7
Gl3ezWCijsfAaXvmcnKkmnGvnn5Cb82geJ/d2ZncUsb7bYZilav/9p9k9QL6NtMcCkb4V01C
YuLHHBUDL0CoWeYEB3yZOKusEmYWJvyQTQlJFAK9KQeeIXKNYAz91fPH9gSeA1S6w4UlCb6d
Az5GGwOoU2DYVMXT8debif2jwO3iWDauFZcHbLYl0Y1m7qJ1APzYFmpHFq2KaKQ9WaRQU15w
Jb4SM7/s3rDdVhZEdK5CXzKHYThIAoZ81S3FFJJqDitc8DNojlgPF6A7/44+p71jwSHnRe86
0H6MQHlPrAvXe2IpfdoUe0nw0HBWXUEDnusZs/8MuI7BTdDH9XbBU9DHz3bBGtDHwHbBkyzB
MVJu6yL/KQtXUlCqnOwLKI1yn5faDXI0pzwCK4hx0acp1qOnuJFmRNjLHImjxY9IOzvlYjFf
lN9+ILXQZnGchDsYdosevHvCYrEtl2U3zDE+M6TII5f6KaFd9e3NGXPBT52qz+210s2xnLs2
EuTFi63TmOp70TWoviCpvMKghAohkAPOZcXq+nqCp5LJh4+phxOe+nNqSrUI725nWpYubp+a
4YN4r6RI1XTF7UoLi+lFssDWilXvRsmTAsPh94DDpfyXZni0kW6hp/HD0l0o0BWImw== /
oracle@zen-VirtualBox:~$

只是装了11g的客户端的机器上测试不成功,生成的文件只有0字节;安装整个数据库的机器上测试成功,没找到确切的原因。
继续测试:
修改文件的开头

oracle@zen-VirtualBox:~$ cat test_oracle_wrap3.sql > test_oracle_wrap4.sql
oracle@zen-VirtualBox:~$ vim test_oracle_wrap4.sql
oracle@zen-VirtualBox:~$ cat test_oracle_wrap4.sql
EATE OR REPLACE PROCEDURE zx_test_satisfy_analyse
(
av_task_plan_id IN VARCHAR2,
an_region_id IN NUMBER,
av_stat_date IN VARCHAR2,
av_append_info IN VARCHAR2,
av_return OUT VARCHAR2,
av_syserr OUT VARCHAR2
) IS
/*
*author: zen
*created date :20130812
*/
v_date VARCHAR2(8);
v_channel NUMBER; -- 1 10000,2 114,3 wap net,6 实体渠道,8 装移 BEGIN
v_date := av_stat_date;
v_channel := av_append_info; --即时测评满意度分析:总体满意度分析
DELETE FROM report_service_satisfy_total t
WHERE t.acct_day = v_date
AND decode(t.channel_type, 9, 1, 4, 3, 7, 6, t.channel_type) = v_channel;
COMMIT; av_return := '';
av_syserr := '执行成功'; EXCEPTION
WHEN OTHERS THEN
ROLLBACK;
dbms_output.put_line(av_task_plan_id || ' , ' || an_region_id || ' , ' ||
av_append_info);
av_return := SQLCODE;
av_syserr := SQLERRM;
RETURN;
END zx_test_satisfy_analyse;
/ oracle@zen-VirtualBox:~$ wrap iname=test_oracle_wrap4.sql PL/SQL Wrapper: Release 11.2.0.1.0- 64bit Production on Fri Feb 21 16:09:53 2014 Copyright (c) 1993, 2009, Oracle. All rights reserved. Processing test_oracle_wrap4.sql to test_oracle_wrap4.plb
oracle@zen-VirtualBox:~$ ls -l | grep test_oracle_wrap
-rw-r--r-- 1 oracle oinstall 1789 Feb 21 15:06 test_oracle_wrap2.plb
-rw-r--r-- 1 oracle oinstall 23316 Feb 21 15:03 test_oracle_wrap2.sql
-rw-r--r-- 1 oracle oinstall 1106 Feb 21 16:04 test_oracle_wrap3.plb
-rw-r--r-- 1 oracle oinstall 3492 Feb 21 16:03 test_oracle_wrap3.sql
-rw-r--r-- 1 oracle oinstall 2727 Feb 21 16:09 test_oracle_wrap4.plb
-rw-r--r-- 1 oracle oinstall 3490 Feb 21 16:08 test_oracle_wrap4.sql
-rw-r--r-- 1 oracle oinstall 552 Feb 21 15:00 test_oracle_wrap.plb
-rw-r--r-- 1 oracle oinstall 692 Feb 21 14:59 test_oracle_wrap.sql
oracle@zen-VirtualBox:~$ cat test_oracle_wrap4.plb
EATE OR REPLACE PROCEDURE zx_test_satisfy_analyse
(
av_task_plan_id IN VARCHAR2,
an_region_id IN NUMBER,
av_stat_date IN VARCHAR2,
av_append_info IN VARCHAR2,
av_return OUT VARCHAR2,
av_syserr OUT VARCHAR2
) IS
/*
*author: zen
*created date :20130812
*/
v_date VARCHAR2(8);
v_channel NUMBER; -- 1 10000,2 114,3 wap net,6 实体渠道,8 装移
BEGIN
v_date := av_stat_date;
v_channel := av_append_info; WHERE t.acct_day = v_date
AND decode(t.channel_type, 9, 1, 4, 3, 7, 6, t.channel_type) = v_channel; av_return := '';
av_syserr := '执行成功'; EXCEPTION
WHEN OTHERS THEN
ROLLBACK;
dbms_output.put_line(av_task_plan_id || ' , ' || an_region_id || ' , ' ||
av_append_info);
av_return := SQLCODE;
av_syserr := SQLERRM;
RETURN;
END zx_test_satisfy_analyse;
/ oracle@zen-VirtualBox:~$ cat test_oracle_wrap5.sql
DELETE FROM report_service_satisfy_total t
WHERE t.acct_day = v_date
AND decode(t.channel_type, 9, 1, 4, 3, 7, 6, t.channel_type) = v_channel; COMMIT; oracle@zen-VirtualBox:~$ wrap iname=test_oracle_wrap5.sql PL/SQL Wrapper: Release 11.2.0.1.0- 64bit Production on Fri Feb 21 16:24:24 2014 Copyright (c) 1993, 2009, Oracle. All rights reserved. Processing test_oracle_wrap5.sql to test_oracle_wrap5.plb
oracle@zen-VirtualBox:~$ ls -l | grep test_oracle_wrap
-rw-r--r-- 1 oracle oinstall 1789 Feb 21 15:06 test_oracle_wrap2.plb
-rw-r--r-- 1 oracle oinstall 23316 Feb 21 15:03 test_oracle_wrap2.sql
-rw-r--r-- 1 oracle oinstall 1106 Feb 21 16:04 test_oracle_wrap3.plb
-rw-r--r-- 1 oracle oinstall 3492 Feb 21 16:03 test_oracle_wrap3.sql
-rw-r--r-- 1 oracle oinstall 2727 Feb 21 16:09 test_oracle_wrap4.plb
-rw-r--r-- 1 oracle oinstall 3490 Feb 21 16:08 test_oracle_wrap4.sql
-rw-r--r-- 1 oracle oinstall 163 Feb 21 16:24 test_oracle_wrap5.plb
-rw-r--r-- 1 oracle oinstall 167 Feb 21 16:23 test_oracle_wrap5.sql
-rw-r--r-- 1 oracle oinstall 552 Feb 21 15:00 test_oracle_wrap.plb
-rw-r--r-- 1 oracle oinstall 692 Feb 21 14:59 test_oracle_wrap.sql
oracle@zen-VirtualBox:~$ cat test_oracle_wrap5.plb
DELETE FROM report_service_satisfy_total t
WHERE t.acct_day = v_date
AND decode(t.channel_type, 9, 1, 4, 3, 7, 6, t.channel_type) = v_channel;
COMMIT; oracle@zen-VirtualBox:~$ cat test_oracle_wrap6.sql
DELETE FROM report_service_satisfy_total t
WHERE t.acct_day = v_date
AND decode(t.channel_type, 9, 1, 4, 3, 7, 6, t.channel_type) = v_channel;
COMMIT; CREATE OR REPLACE PROCEDURE zx_test_satisfy_analyse
(
av_task_plan_id IN VARCHAR2,
an_region_id IN NUMBER,
av_stat_date IN VARCHAR2,
av_append_info IN VARCHAR2,
av_return OUT VARCHAR2,
av_syserr OUT VARCHAR2
) IS
/*
*author: zen
*created date :20130812
*/
v_date VARCHAR2(8);
v_channel NUMBER; -- 1 10000,2 114,3 wap net,6 实体渠道,8 装移 BEGIN
v_date := av_stat_date;
v_channel := av_append_info; --即时测评满意度分析:总体满意度分析
DELETE FROM report_service_satisfy_total t
WHERE t.acct_day = v_date
AND decode(t.channel_type, 9, 1, 4, 3, 7, 6, t.channel_type) = v_channel; COMMIT; av_return := '';
av_syserr := '执行成功'; EXCEPTION
WHEN OTHERS THEN
ROLLBACK;
dbms_output.put_line(av_task_plan_id || ' , ' || an_region_id || ' , ' ||
av_append_info);
av_return := SQLCODE;
av_syserr := SQLERRM;
RETURN;
END zx_test_satisfy_analyse;
/ oracle@zen-VirtualBox:~$ wrap iname=test_oracle_wrap6.sql PL/SQL Wrapper: Release 11.2.0.1.0- 64bit Production on Fri Feb 21 16:43:38 2014 Copyright (c) 1993, 2009, Oracle. All rights reserved. Processing test_oracle_wrap6.sql to test_oracle_wrap6.plb
oracle@zen-VirtualBox:~$ ls -l | grep test_oracle
-rw-r--r-- 1 oracle oinstall 1789 Feb 21 15:06 test_oracle_wrap2.plb
-rw-r--r-- 1 oracle oinstall 23316 Feb 21 15:03 test_oracle_wrap2.sql
-rw-r--r-- 1 oracle oinstall 1106 Feb 21 16:04 test_oracle_wrap3.plb
-rw-r--r-- 1 oracle oinstall 3492 Feb 21 16:03 test_oracle_wrap3.sql
-rw-r--r-- 1 oracle oinstall 2727 Feb 21 16:09 test_oracle_wrap4.plb
-rw-r--r-- 1 oracle oinstall 3490 Feb 21 16:08 test_oracle_wrap4.sql
-rw-r--r-- 1 oracle oinstall 163 Feb 21 16:24 test_oracle_wrap5.plb
-rw-r--r-- 1 oracle oinstall 167 Feb 21 16:23 test_oracle_wrap5.sql
-rw-r--r-- 1 oracle oinstall 1267 Feb 21 16:43 test_oracle_wrap6.plb
-rw-r--r-- 1 oracle oinstall 3655 Feb 21 16:42 test_oracle_wrap6.sql
-rw-r--r-- 1 oracle oinstall 552 Feb 21 15:00 test_oracle_wrap.plb
-rw-r--r-- 1 oracle oinstall 692 Feb 21 14:59 test_oracle_wrap.sql
oracle@zen-VirtualBox:~$ cat test_oracle_wrap6.plb
DELETE FROM report_service_satisfy_total t
WHERE t.acct_day = v_date
AND decode(t.channel_type, 9, 1, 4, 3, 7, 6, t.channel_type) = v_channel;
COMMIT;
CREATE OR REPLACE PROCEDURE zx_test_satisfy_analyse wrapped
a000000
354
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
7
8d4 3b0
UsqjIEQoNf3Spb35eItCneQalf4wgztc10rrfC+LbrB1BRsJw3mqYURRAFP0BQ3fLdYAPrrR
PBxvvb1SKRxU2x2mBt39ytx6iNUc1t7x6FJ4ogwCjSwFT8ETJPYbscWLoWutzzAgICDfxJ/H
EPjJTpL/h52YPxLEvgjPKKk7VmXH3k6JodXTL9MrWcYfWdAVYlY7iwxr8l85r8KFi3EHjdg1
QN84hfZQ90yTp8FxGyuFAvysKsbmDE1AxaUvePZqDbnd7aZGa4KHghEZIyvwLtq9td4vjaY7
Gl3ezWCijsfAaXvmcnKkmnGvnn5Cb82geJ/d2ZncUsb7bYZilav/9p9k9QL6NtMcCkb4V01C
YuLHHBUDL0CoWeYEB3yZOKusEmYWJvyQTQlJFAK9KQeeIXKNYAz91fPH9gSeA1S6w4UlCb6d
Az5GGwOoU2DYVMXT8debif2jwO3iWDauFZcHbLYl0Y1m7qJ1APzYFmpHFq2KaKQ9WaRQU15w
Jb4SM7/s3rDdVhZEdK5CXzKHYThIAoZ81S3FFJJqDitc8DNojlgPF6A7/44+p71jwSHnRe86
0H6MQHlPrAvXe2IpfdoUe0nw0HBWXUEDnusZs/8MuI7BTdDH9XbBU9DHz3bBGtDHwHbBkyzB
MVJu6yL/KQtXUlCqnOwLKI1yn5faDXI0pzwCK4hx0acp1qOnuJFmRNjLHImjxY9IOzvlYjFf
lN9+ILXQZnGchDsYdosevHvCYrEtl2U3zDE+M6TII5f6KaFd9e3NGXPBT52qz+210s2xnLs2
EuTFi63TmOp70TWoviCpvMKghAohkAPOZcXq+nqCp5LJh4+phxOe+nNqSrUI725nWpYubp+a
4YN4r6RI1XTF7UoLi+lFssDWilXvRsmTAsPh94DDpfyXZni0kW6hp/HD0l0o0BWImw== /

印证了Oracle官方文档的说法
Wrapping PL/SQL Code with wrap Utility
The wrap utility processes an input SQL file and wraps only the PL/SQL units in the file,
such as a package specification, package body, function, procedure, type specification, or type body.
It does not wrap PL/SQL content in anonymous blocks or triggers or non-PL/SQL code.

我想是通过在文件中查找开始位置的CREATE OR REPLACE PROCEDURE(function,package body,type)来判断加密开始和结束的位置

Oracle wrap 测试的一些细节问题的更多相关文章

  1. Oracle DG测试failover和后续恢复报告

    Oracle DG测试failover和后续恢复报告 一.概述 二.验证过程: 2.1 A库异常关闭 2.2 B库进行failover切换为新主库 2.3 要求C库成为新主库的备库 2.4 要求A库成 ...

  2. loadrunner 脚本开发-调用java jar文件远程操作Oracle数据库测试

    调用java jar文件远程操作Oracle数据库测试 by:授客 QQ:1033553122 测试环境 数据库:linux 下Oracle_11g_R2 Loadrunner:11 备注:想学ora ...

  3. Oracle数据库测试和优化最佳实践: OTest介绍 (转)

    当前Oracle数据库最佳测试工具OTest *  Otest是用于Oracle数据库测试.优化.监控软件. *  Otest是免费提供给Oracle客户和广大DBA工程师使用的软件.由原厂技术专家王 ...

  4. 使用Oracle Wrap工具加密你的代码

    Oracle提供Wrap工具,可以用于加密你的Package等.不过需要注意的是,加密后的代码无法解密,你需要保管好你的源代码. 以下是个例子: 1.源代码 create or replace fun ...

  5. Oracle wrap 和 unwrap( 加密与解密) 说明

    一. Wrap 说明 官网的说明如下: A PL/SQL Source Text Wrapping http://download.oracle.com/docs/cd/E11882_01/appde ...

  6. 使用Apache JMeter对SQL Server、Mysql、Oracle压力测试(四)

    这篇文章是对前面三篇的一个总结: 1.从测试结果来看,原生的数据库性能分别是:SQL Server(4587)>Oracle(271)>Mysql(145),测试数据量分别为5W.50W. ...

  7. 使用Apache JMeter对SQL Server、Mysql、Oracle压力测试(三)

    接第二篇写 第四步,测试Oracle数据库的性能. a.加载JDBC Oracle驱动,添加线程组和线程属性和前面两部一样,如果有需要可以往前翻看. b.设置JDBC Connection Oracl ...

  8. Oracle 11g 测试ogg中断之后,重新同步操作

    测试ogg中断之后,重新同步操作 2018-06-07 17:11 779 1 原创 GoldenGate 本文链接:https://www.cndba.cn/leo1990/article/2839 ...

  9. oracle 压力测试工具benchmarksql

    TPC-C测试 TPC-C 于 1992 年 7 月 23 日认可为新的基准测试.TPC(Transaction Processing Performance Council,事务处理性能委员会)-C ...

随机推荐

  1. pomelo组件..

    1.pomelo会加载lib/components目录下的组件.并设置为属性..和存储在Pomelo.components中..注意这里其实存储的是对象的构造函数.. function load() ...

  2. UNIX标准化及实现之功能测试宏

    在头文件中定义了很多POSIX.1和XSI的符号.但是除了POSIX.1和XSI的定义之外,大多数实现在这些头文件中也加上了它们自己的定义.如果在编译一个程序时,希望它只使用POSIX定义而不使用任何 ...

  3. C#_MVC3之使用Authorize简单的验证登录(一)

    第一步,自定义 AuthorizeAttribute. public class CustomAuthorizeAttribute : AuthorizeAttribute { public over ...

  4. Android利用Looper在子线程中改变UI

    MainActivity如下: package cn.testlooper; import android.app.Activity; import android.os.Bundle; import ...

  5. iOS之文本属性Attributes的使用

    1.NSKernAttributeName: @10 调整字句 kerning 字句调整 2.NSFontAttributeName : [UIFont systemFontOfSize:_fontS ...

  6. ADS1.2 集成开发环境的使用

    连风大神都没用过这个ADS1.2,什么破玩意儿啊,好像板子里面的资料也没有找到有这个软件,但是网上有滴,ADS1.2 集成开发环境的使用还是要会的,,, ARM ADS 全称为ARM Develope ...

  7. JSDOM之节点

    javascript-节点属性详解 根据 DOM,HTML 文档中的每个成分都是一个节点. DOM 是这样规定的: 整个文档是一个文档节点 每个 HTML 标签是一个元素节点 包含在 HTML 元素中 ...

  8. 解决某些手机RadioGroup中的RadioButton不居中的问题

    问题:RadioButton中使用android:gravity="center"使其图片文字居中,在我的华为荣耀7手机上居中显示了,但在HUAWEI G606-T00却显示在右侧 ...

  9. 使用c#生成Identicon图片

    Identicon是什么 我们在站点注册的时候通常系统会在我们没有提供自定义头像时为我们指定一个默认的头像,不过,样子千篇一律很是难看.聪明的程序员想了很多办法来解决这个问题,比如你能在这里看到很漂亮 ...

  10. Google 常用镜像收集

    1`下面列出几个目前常用的 公共DNS 服务器地址: 名称 DNS 服务器 IP 地址 OpenerDNS 42.120.21.30   百度 DuDNS 180.76.76.76   阿里 AliD ...