因为明摆着的缘故,10.2引出的TDE效能对列加密以后,招致相干目录丧失了对不等式的判断能力。
如次:
ENCRYPTIONDEMO@fmw//scripts> create table tde_table(id number encrypt no salt,na
me varchar二(30))
二 ;
Table created.
Elapsed: 00:00:00.11
ENCRYPTIONDEMO@fmw//scripts> begin
二 for i in 1..20000 loop
三 insert into tde_table values (i,i);
四 end loop;
五 commit;
六 end;
七 /
PL/SQL procedure successfully completed.
ENCRYPTIONDEMO@fmw//scripts> create unique index tde_idx on tde_table(id);
Index created.
等式判断当然没受到影响。
ENCRYPTIONDEMO@fmw//scripts> select * from tde_table where id=九;
Elapsed: 00:00:00.00
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time
| 零 | SELECT STATEMENT | | 一 | 64 | 一 (零)| 00:00:01 |
| 一 | TABLE ACCESS BY INDEX ROWID| TDE_TABLE | 一 | 64 | 一 (零)| 00:00:01 |
|* 二 | INDEX UNIQUE SCAN | TDE_IDX | 一 | | 一 (零)| 00:00:01 |
不等式就窘迫了。
ENCRYPTIONDEMO@fmw//scripts> select * from tde_table where id<二;
Elapsed: 00:00:00.06
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
-------------------------------------------------------------------------------
| 零 | SELECT STATEMENT | | 三 | 192 | 69 (二)| 00:00:01 |
|* 一 | TABLE ACCESS FULL| TDE_TABLE | 三 | 192 | 69 (二)| 00:00:01 |
好玩儿的是11g提供了一个新功能: 表空间加密。 规格上说是可以对保留在内中的全部数据加密,实则,不但如此,目录也具备不等式判断能力。
如次:
创设一个加密的表空间
SYS@fmw//scripts> create tablespace securets datafile 'D:APPDBORACLE11GORADATAFMWSECURETS01.DBF' size 20M autoextend off encryption
using 'AES128' default storage (encrypt);
Tablespace created.
ENCRYPTIONDEMO@fmw//scripts> create table st (id number,name varchar二(30)) tablespace securets;
Table created.
Elapsed: 00:00:00.04
ENCRYPTIONDEMO@fmw//scripts> begin
二 for i in 1..20000 loop
三 insert into st values (i,i);
四 end loop;
五 commit;
六 end;
七 /
PL/SQL procedure successfully completed.
Elapsed: 00:00:01.07
ENCRYPTIONDEMO@fmw//scripts> create unique index st_idx on st (id) tablespace securets;
Index created.
Elapsed: 00:00:00.10
不等式下目录照常工作。
ENCRYPTIONDEMO@fmw//scripts> select * from st where id<二;
Elapsed: 00:00:00.01
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time
| 零 | SELECT STATEMENT | | 一 | 30 | 三 (零)| 00:00:01 |
| 一 | TABLE ACCESS BY INDEX ROWID| ST | 一 | 30 | 三 (零)| 00:00:01 |
|* 二 | INDEX RANGE SCAN | ST_IDX | 一 | | 二 (零)| 00:00:01 |
Todd
本文来源:
我的异常网
Java Exception
Dotnet Exception
Oracle Exception
- 1350 - System.InvalidOperationException: Timeout expired
- 1351 - 目录不可写或者空间不足
- 1352 - ora-20003
- 1353 - ORA-02063
- 1354 - ORA-06552: PL SQL: Compilation unit analysis terminated
- 1355 - Failed to commit: Missing IN or OUT parameter at index:: 1
- 1356 - ORA-13011: 值超出范围
- 1357 - ora-28009:connection as sys should be as sysdba or sysoper
- 1358 - 01017:invalid username password
- 1359 - ORA-01403
- 1360 - ORA-01423:检查实际读取的多余行时出错
- 1361 - 修改服务器端ORACLE当前字符集
- 1362 - plsql查询
- 1363 - ORA-00933: SQL command not properly ended
- 1364 - 错误1053:服务没有及时响应启动或控制请求
- 1365 - PLS-00103: 出现符号
- 1366 - Enterprisemanager configuration failed due to the following error
- 1367 - Exception捕捉异常处理
- 1368 - PETCH ryline INTO ryhang 的错误
- 1369 - Connect2DB Microsoft OLE DB Provider for Oracle -214767259