Kyte | Expert Oracle Database Architecture | E-Book | www.sack.de
E-Book

E-Book, Englisch, 832 Seiten

Kyte Expert Oracle Database Architecture

Oracle Database 9i, 10g, and 11g Programming Techniques and Solutions
2. ed
ISBN: 978-1-4302-2947-6
Verlag: Apress
Format: PDF
Kopierschutz: 1 - PDF Watermark

Oracle Database 9i, 10g, and 11g Programming Techniques and Solutions

E-Book, Englisch, 832 Seiten

ISBN: 978-1-4302-2947-6
Verlag: Apress
Format: PDF
Kopierschutz: 1 - PDF Watermark



Now in its second edition, this best-selling book by Tom Kyte of 'Ask Tom' fame continues to bring you some of the best thinking on how to apply Oracle Database to produce scalable applications that perform well and deliver correct results. Tom has a simple philosophy: you can treat Oracle as a black box and just stick data into it or you can understand how it works and exploit it as a powerful computing environment. If you choose the latter, then you'll find that there are few information management problems that you cannot solve quickly and elegantly. This fully revised second edition covers the developments up to Oracle Database 11g. Each feature is taught in a proof-by-example manner, not only discussing what it is, but also how it works, how to implement software using it, and the common pitfalls associated with it. Don't treat Oracle Database as a black-box. Get this book. Get under the hood. Turbo-charge your career. Fully revised to cover Oracle Database 11g Proof-by-example approach: Let the evidence be your guide Dives deeply into Oracle Database's most powerful features

Thomas Kyte is vice president of the Core Technologies Group at Oracle Corporation and has been with the company since version 7.0.9 was released in 1993. Kyte, however, has been working with Oracle since version 5.1.5c. At Oracle, Kyte works with the Oracle database, and more specifically, he helps clients who are using the Oracle database and works directly with them specifying and building their systems or rebuilding and tuning them. Prior to working at Oracle, Kyte was a systems integrator who built large-scale, heterogeneous databases and applications for military and government clients.Tom Kyte is the same 'Ask Tom' whose column appears in Oracle Magazine, where he answers questions about the Oracle database and tools that developers and database administrators struggle with every day.

Kyte Expert Oracle Database Architecture jetzt bestellen!

Autoren/Hrsg.


Weitere Infos & Material


1;Contents at a Glance;5
2;Table of Contents;6
3;Foreword;18
4;Foreword from the First Edition;19
5;About the Author;22
6;About the Technical Reviewers;23
7;Acknowledgments;24
8;Introduction;25
8.1;What This Book Is About;25
8.2;Who Should Read This Book;26
8.3;How This Book Is Structured;27
8.3.1;Chapter 1: Developing Successful Oracle Applications;27
8.3.2;Chapter 2: Architecture Overview;28
8.3.3;Chapter 3: Files;28
8.3.4;Chapter 4: Memory Structures;28
8.3.5;Chapter 5: Oracle Processes;28
8.3.6;Chapter 6: Locking and Latching;28
8.3.7;Chapter 7: Concurrency and Multi-versioning;29
8.3.8;Chapter 8: Transactions;29
8.3.9;Chapter 9: Redo and Undo;29
8.3.10;Chapter 10: Database Tables;29
8.3.11;Chapter 11: Indexes;29
8.3.12;Chapter 12: Datatypes;30
8.3.13;Chapter 13: Partitioning;30
8.3.14;Chapter 14: Parallel Execution;30
8.3.15;Chapter 15: Data Loading and Unloading;30
8.3.16;Chapter 16: Data Encryption;31
8.4;Source Code and Updates;31
8.5;Errata;31
9;Setting Up Your Environment;32
9.1;Setting up the SCOTT/TIGER Schema;32
9.1.1;Executing the Script;32
9.1.2;Creating the Schema without the Script;33
9.2;Setting Your Environment;34
9.3;Setting up Autotrace in SQL*Plus;35
9.3.1;Initial Setup;36
9.3.2;Controlling the Report;36
9.4;Setting up Statspack;36
9.5;Custom Scripts;37
9.5.1;Runstats;37
9.5.2;Mystat;43
9.5.3;Show_Space;44
9.5.4;Big_Table;48
9.6;Coding Conventions;49
10;CHAPTER 1 Developing Successful Oracle Applications;51
10.1;My Approach;52
10.2;The Black Box Approach;53
10.3;How (and How Not) to Develop Database Applications;61
10.3.1;Understanding Oracle Architecture;62
10.3.1.1;Use a Single Connection in Oracle;62
10.3.1.2;Use Bind Variables;63
10.3.2;Understanding Concurrency Control;71
10.3.2.1;Implementing Locking;72
10.3.2.2;Preventing Lost Updates;73
10.3.3;Multi-versioning;75
10.3.3.1;Flashback;76
10.3.3.2;Read Consistency and Non-Blocking Reads;79
10.3.4;Database Independence?;82
10.3.4.1;The Impact of Standards;84
10.3.4.2;Make Sure You Can Adapt;86
10.3.4.3;Layered Programming;89
10.3.4.4;Features and Functions;90
10.3.4.5;Knowing What’s Out There;91
10.3.4.6;Solving Problems Simply;93
10.3.4.7;Openness;95
10.3.5;How Do I Make It Run Faster?;96
10.3.6;The DBA-Developer Relationship;98
10.4;Summary;99
11;CHAPTER 2 Architecture Overview;101
11.1;Defining Database and Instance;102
11.1.1;The SGA and Background Processes;108
11.2;Connecting to Oracle;110
11.2.1;Dedicated Server;110
11.2.2;Shared Server;112
11.2.3;Mechanics of Connecting over TCP/IP;113
11.3;Summary;116
12;CHAPTER 3 Files;117
12.1;Parameter Files;118
12.1.1;What Are Parameters?;119
12.1.2;Legacy init.ora Parameter Files;123
12.2;Server Parameter Files (SPFILEs);124
12.2.1;Converting to SPFILEs;125
12.2.1.1;Setting Values in SPFILEs;127
12.2.1.2;Unsetting Values in SPFILEs;129
12.2.1.3;Creating PFILEs from SPFILEs;130
12.2.1.4;Fixing Corrupted SPFILEs;131
12.2.1.5;Parameter File Wrap-up;131
12.3;Trace Files;132
12.3.1;Requested Trace Files;133
12.3.1.1;File Locations;133
12.3.1.2;Naming Convention;136
12.3.1.3;Tagging Trace Files;137
12.3.2;Trace Files Generated in Response to Internal Errors;138
12.3.3;Trace File Wrap-up;143
12.4;Alert File;143
12.5;Data Files;146
12.5.1;A Brief Review of File System Mechanisms;146
12.5.2;The Storage Hierarchy in an Oracle Database;147
12.5.2.1;Segments;148
12.5.2.2;Extents;148
12.5.2.3;Blocks;148
12.5.2.4;Tablespaces;150
12.5.2.5;Storage Hierarchy Summary;151
12.5.3;Dictionary-Managed and Locally-Managed Tablespaces;151
12.6;Temp Files;153
12.7;Control Files;155
12.8;Redo Log Files;155
12.8.1;Online Redo Log;156
12.8.2;Archived Redo Log;158
12.9;Password Files;159
12.10;Change Tracking File;163
12.11;Flashback Logs;164
12.11.1;Flashback Database;164
12.11.2;Flash Recovery Area;165
12.12;DMP Files (EXP/IMP Files);166
12.13;Data Pump Files;167
12.14;Flat Files;170
12.15;Summary;170
13;CHAPTER 4 Memory Structures;171
13.1;The Process Global Area and User Global Area;172
13.1.1;Manual PGA Memory Management;173
13.1.2;Automatic PGA Memory Management;179
13.1.2.1;Determining How the Memory Is Allocated;181
13.1.2.2;Using PGA_AGGREGATE_TARGET to Control Memory Allocation;188
13.1.3;Choosing Between Manual and Auto Memory Management;190
13.1.4;PGA and UGA Wrap-up;192
13.2;The System Global Area;192
13.2.1;Fixed SGA;198
13.2.2;Redo Buffer;198
13.2.3;Block Buffer Cache;199
13.2.3.1;Managing Blocks in the Buffer Cache;200
13.2.3.2;Multiple Block Sizes;204
13.2.4;Shared Pool;206
13.2.5;Large Pool;209
13.2.6;Java Pool;210
13.2.7;Streams Pool;210
13.2.8;Automatic SGA Memory Management;211
13.2.9;Automatic Memory Management;212
13.3;Summary;214
14;CHAPTER 5 Oracle Processes;215
14.1;Server Processes;216
14.1.1;Dedicated Server Connections;216
14.1.2;Shared Server Connections;219
14.1.3;Database Resident Connection Pooling (DRCP);220
14.1.4;Connections vs. Sessions;220
14.1.5;Dedicated Server vs. Shared Server vs. DRCP;226
14.1.5.1;When to Use Dedicated Server;226
14.1.5.2;When to Use Shared Server;226
14.1.5.3;Potential Benefits of Shared Server;227
14.1.5.3.1;Reduces the Number of Operating System Processes/Threads;227
14.1.5.3.2;Artificially Limits the Degree of Concurrency;227
14.1.5.3.3;Reduces the Memory Needed on the System;229
14.1.5.4;DRCP;229
14.1.6;Dedicated/Shared Server Wrap-up;229
14.2;Background Processes;230
14.2.1;Focused Background Processes;231
14.2.1.1;PMON: The Process Monitor;234
14.2.1.2;SMON: The System Monitor;234
14.2.1.3;RECO: Distributed Database Recovery;235
14.2.1.4;CKPT: Checkpoint Process;236
14.2.1.5;DBWn: Database Block Writer;236
14.2.1.6;LGWR: Log Writer;237
14.2.1.7;ARCn: Archive Process;237
14.2.1.8;DIAG: Diagnosability Process;237
14.2.1.9;FBDA: Flashback Data Archiver Process;238
14.2.1.10;DBRM: Database ResourceManager Process;238
14.2.1.11;GEN0: General Task Execution Process;238
14.2.1.12;Remaining Common Focused Processes;238
14.2.2;Utility Background Processes;240
14.2.2.1;CJQ0 and Jnnn Processes: Job Queues;240
14.2.2.2;QMNC and Qnnn: Advanced Queues;241
14.2.2.3;EMNC: Event Monitor Processes;241
14.2.2.4;MMAN: Memory Manager;242
14.2.2.5;MMON, MMNL, and Mnnn: Manageability Monitors;242
14.2.2.6;CTWR: Change Tracking Processes;242
14.2.2.7;RVWR: Recovery Writer;242
14.2.2.8;DMnn/DWnn: Data Pump Master/Worker Processes;242
14.2.2.9;Remaining Utility Background Processes;242
14.3;Slave Processes;243
14.3.1;I/O Slaves;243
14.3.2;Pnnn: Parallel Query Execution Servers;243
14.4;Summary;244
15;CHAPTER 6 Locking and Latching;245
15.1;What Are Locks?;245
15.2;Locking Issues;248
15.2.1;Lost Updates;248
15.2.2;Pessimistic Locking;249
15.2.3;Optimistic Locking;251
15.2.3.1;Optimistic Locking Using a Version Column;252
15.2.3.2;Optimistic Locking Using a Checksum;254
15.2.4;Optimistic or Pessimistic Locking?;257
15.2.5;Blocking;258
15.2.5.1;Blocked Inserts;258
15.2.5.2;Blocked Merges, Updates, and Deletes;260
15.2.6;Deadlocks;261
15.2.7;Lock Escalation;265
15.3;Lock Types;266
15.3.1;DML Locks;266
15.3.1.1;TX (Transaction) Locks;266
15.3.1.2;TM (DML Enqueue) Locks;274
15.3.2;DDL Locks;275
15.3.3;Latches;280
15.3.3.1;Latch “Spinning”;281
15.3.3.2;Measuring the Cost of Latching a Shared Resource;282
15.3.3.2.1;Setting Up for the Test;283
15.3.3.2.2;Without Bind Variables;284
15.3.3.2.3;With Bind Variables;286
15.3.3.2.4;Performance/Scalability Comparison;289
15.3.4;Mutexes;290
15.3.5;Manual Locking and User-Defined Locks;290
15.3.5.1;Manual Locking;290
15.3.5.2;Creating Your Own Locks;291
15.4;Summary;291
16;CHAPTER 7 Concurrency and Multi-versioning;292
16.1;What Are Concurrency Controls?;292
16.2;Transaction Isolation Levels;293
16.2.1;READ UNCOMMITTED;295
16.2.2;READ COMMITTED;297
16.2.3;REPEATABLE READ;298
16.2.3.1;Getting a Consistent Answer;298
16.2.3.2;Lost Updates: Another Portability Issue;300
16.2.4;SERIALIZABLE;301
16.2.5;READ ONLY;303
16.3;Implications of Multi-version Read Consistency;304
16.3.1;A Common Data Warehousing Technique That Fails;304
16.3.2;An Explanation for Higher Than Expected I/O on Hot Tables;305
16.4;Write Consistency;308
16.4.1;Consistent Reads and Current Reads;308
16.4.2;Seeing a Restart;311
16.4.3;Why Is a Restart Important to Us?;313
16.5;Summary;314
17;CHAPTER 8 Transactions;316
17.1;Transaction Control Statements;316
17.2;Atomicity;318
17.2.1;Statement-Level Atomicity;318
17.2.2;Procedure-Level Atomicity;320
17.2.3;Transaction-Level Atomicity;324
17.2.4;DDL and Atomicity;324
17.3;Durability;324
17.3.1;WRITE Extensions to COMMIT;325
17.3.2;COMMITS in a Non-Distributed PL/SQL Block;326
17.4;Integrity Constraints and Transactions;328
17.4.1;IMMEDIATE Constraints;328
17.4.2;DEFERRABLE Constraints and Cascading Updates;329
17.5;Bad Transaction Habits;333
17.5.1;Committing in a Loop;333
17.5.1.1;Performance Implications;333
17.5.1.2;Snapshot Too Old Error;336
17.5.1.3;Restartable Processes Require Complex Logic;338
17.5.2;Using Autocommit;339
17.6;Distributed Transactions;340
17.7;Autonomous Transactions;342
17.7.1;How Autonomous Transactions Work;342
17.7.2;When to Use Autonomous Transactions;344
17.8;Summary;347
18;CHAPTER 9 Redo and Undo;348
18.1;What Is Redo?;349
18.2;What Is Undo?;349
18.3;How Redo and Undo Work Together;353
18.3.1;Example INSERT-UPDATE-DELETE Scenario;353
18.3.1.1;The INSERT;353
18.3.1.1.1;Hypothetical Scenario: The System Crashes Right Now;354
18.3.1.1.2;Hypothetical Scenario: The Buffer Cache Fills Up Right Now;354
18.3.1.2;The UPDATE;355
18.3.1.2.1;Hypothetical Scenario: The System Crashes Right Now;356
18.3.1.2.2;Hypothetical Scenario: The Application Rolls Back the Transaction;356
18.3.1.3;The DELETE;356
18.3.1.4;The COMMIT;357
18.4;Commit and Rollback Processing;357
18.4.1;What Does a COMMIT Do?;357
18.4.2;What Does a ROLLBACK Do?;364
18.5;Investigating Redo;365
18.5.1;Measuring Redo;365
18.5.2;Can I Turn Off Redo Log Generation?;367
18.5.2.1;Setting NOLOGGING in SQL;367
18.5.2.2;Setting NOLOGGING on an Index;369
18.5.2.3;NOLOGGING Wrap-up;370
18.5.3;Why Can’t I Allocate a New Log?;370
18.5.4;Block Cleanout;372
18.5.5;Log Contention;375
18.5.6;Temporary Tables and Redo/Undo;377
18.6;Investigating Undo;381
18.6.1;What Generates the Most and Least Undo?;381
18.6.2;ORA-01555: snapshot too old Error;383
18.6.2.1;Undo Segments Are in Fact Too Small;384
18.6.2.2;Delayed Block Cleanout;389
18.7;Summary;393
19;CHAPTER 10 Database Tables;394
19.1;Types of Tables;394
19.2;Terminology;396
19.2.1;Segment;396
19.2.2;Segment Space Management;399
19.2.3;High-water Mark;399
19.2.4;FREELISTS;401
19.2.5;PCTFREE and PCTUSED;405
19.2.5.1;Row Migration;405
19.2.5.2;Setting PCTFREE and PCTUSED Values;408
19.2.6;LOGGING and NOLOGGING;408
19.2.7;INITRANS and MAXTRANS;408
19.3;Heap Organized Tables;408
19.4;Index Organized Tables;412
19.4.1;Index Organized Tables Wrap-up;427
19.5;Index Clustered Tables;427
19.5.1;Index Clustered Tables Wrap-up;435
19.6;Hash Clustered Tables;435
19.6.1;Hash Clustered Tables Wrap-up;443
19.7;Sorted Hash Clustered Tables;444
19.8;Nested Tables;446
19.8.1;Nested Tables Syntax;447
19.8.2;Nested Table Storage;454
19.8.3;Nested Tables Wrap-up;457
19.9;Temporary Tables;458
19.9.1;Temporary Tables Wrap-up;464
19.10;Object Tables;465
19.10.1;Object Tables Wrap-up;472
19.11;Summary;472
20;CHAPTER 11 Indexes;474
20.1;An Overview of Oracle Indexes;474
20.2;B*Tree Indexes;476
20.2.1;Index Key Compression;479
20.2.2;Reverse Key Indexes;482
20.2.3;Descending Indexes;488
20.2.4;When Should You Use a B*Tree Index?;490
20.2.4.1;Physical Organization;493
20.2.4.2;The Clustering Factor;498
20.2.5;B*Trees Wrap-up;501
20.3;Bitmap Indexes;501
20.3.1;When Should You Use a Bitmap Index?;502
20.3.2;Bitmap Join Indexes;506
20.3.3;Bitmap Indexes Wrap-up;508
20.4;Function-Based Indexes;509
20.4.1;Important Implementation Details;509
20.4.2;A Simple Function-Based Index Example;510
20.4.3;Indexing Only Some of the Rows;519
20.4.4;Implementing Selective Uniqueness;521
20.4.5;Caveat Regarding ORA-01743;521
20.4.6;Function-Based Indexes Wrap-up;522
20.5;Application Domain Indexes;523
20.6;Frequently Asked Questions and Myths About Indexes;524
20.6.1;Do Indexes Work on Views?;524
20.6.2;Do Nulls and Indexes Work Together?;524
20.6.3;Should Foreign Keys Be Indexed?;526
20.6.4;Why Isn’t My Index Getting Used?;528
20.6.4.1;Case 1;528
20.6.4.2;Case 2;529
20.6.4.3;Case 3;529
20.6.4.4;Case 4;530
20.6.4.5;Case 5;532
20.6.4.6;Case 6;533
20.6.4.7;Index Case Summary;533
20.6.5;Myth: Space Is Never Reused in an Index;534
20.6.6;Myth: Most Discriminating Elements Should Be First;537
20.7;Summary;540
21;CHAPTER 12 Datatypes;541
21.1;An Overview of Oracle Datatypes;541
21.2;Character and Binary String Types;544
21.2.1;NLS Overview;544
21.2.2;Character Strings;547
21.2.2.1;Character String Syntax;550
21.2.2.2;Bytes or Characters;551
21.2.2.3;The “N” Variant;553
21.3;Binary Strings: RAW Types;554
21.4;Number Types;556
21.4.1;NUMBER Type Syntax and Usage;558
21.4.2;BINARY_FLOAT/BINARY_DOUBLE Type Syntax and Usage;561
21.4.3;Non-native Number Types;562
21.4.4;Performance Considerations;562
21.5;Long Types;564
21.5.1;Restrictions on LONG and LONG RAW Types;564
21.5.2;Coping with Legacy LONG Types;566
21.6;Dates, Timestamps, and Interval Types;571
21.6.1;Formats;571
21.6.2;DATE Type;573
21.6.2.1;Adding or Subtracting Time from a DATE;575
21.6.2.2;Getting the Difference Between Two DATEs;578
21.6.3;TIMESTAMP Type;579
21.6.3.1;TIMEST579
21.6.3.2;Adding or Subtracting Time from a TIMEST580
21.6.3.3;Getting the Difference Between Two TIMESTAMPs;581
21.6.3.4;TIMESTAMP WITH TIME ZONE Type;582
21.6.3.5;TIMESTAMP WITH LOCAL TIME ZONE Type;584
21.6.4;INTERVAL Type;586
21.6.4.1;INTERVAL YEAR TO MONTH;587
21.6.4.2;INTERVAL DAY TO SECOND;588
21.7;LOB Types;589
21.7.1;Internal LOBs;589
21.7.1.1;LOB Tablespace;592
21.7.1.2;IN ROW Clause;593
21.7.1.3;CHUNK Clause;597
21.7.1.4;RETENTION Clause;597
21.7.1.5;CACHE Clause;599
21.7.1.6;LOB STORAGE Clause;600
21.7.2;BFILEs;600
21.8;ROWID/UROWID Types;602
21.9;Summary;603
22;CHAPTER 13 Partitioning;604
22.1;Partitioning Overview;604
22.1.1;Increased Availability;605
22.1.2;Reduced Administrative Burden;607
22.1.3;Enhanced Statement Performance;611
22.1.3.1;Parallel DML;611
22.1.3.2;Query Performance;611
22.1.3.2.1;OLTP Systems;612
22.1.3.2.2;Data Warehouse Systems;612
22.2;Table Partitioning Schemes;613
22.2.1;Range Partitioning;614
22.2.2;Hash Partitioning;616
22.2.2.1;How Hash Partitioning Works;616
22.2.2.2;Hash Partition Using Powers of Two;618
22.2.3;List Partitioning;621
22.2.4;Interval Partitioning;622
22.2.5;Reference Partitioning;628
22.2.6;Composite Partitioning;633
22.2.7;Row Movement;635
22.2.8;Table Partitioning Schemes Wrap-up;637
22.3;Partitioning Indexes;638
22.3.1;Local Indexes vs. Global Indexes;639
22.3.2;Local Indexes;640
22.3.2.1;Partition Elimination Behavior;640
22.3.2.2;Local Indexes and Unique Constraints;644
22.3.3;Global Indexes;646
22.3.3.1;Data Warehousing and Global Indexes;647
22.3.3.2;Sliding Windows and Indexes;648
22.3.3.3;“Live” Global Index Maintenance;652
22.3.3.4;OLTP and Global Indexes;654
22.4;Partitioning and Performance, Revisited;659
22.5;Auditing and Segment Space Compression;665
22.6;Summary;666
23;CHAPTER 14 Parallel Execution;667
23.1;When to Use Parallel Execution;668
23.1.1;A Parallel Processing Analogy;669
23.1.1.1;One-Page Summary;669
23.1.1.2;Ten-Chapter Report;669
23.2;Oracle Exadata;670
23.3;Parallel Query;670
23.4;Parallel DML;676
23.5;Parallel DDL;679
23.5.1;Parallel DDL and Data Loading Using External Tables;680
23.5.2;Parallel DDL and Extent Trimming;682
23.5.2.1;Extent Trimming and Dictionary-Managed Tablespaces;683
23.5.2.2;Extent Trimming and Locally-Managed Tablespaces;683
23.5.2.3;Setting Up for Locally-Managed Tablespaces;683
23.5.2.4;Extent Trimming with UNIFORM vs. AUTOALLOCATE Locally-Managed Tablespaces;686
23.6;Parallel Recovery;691
23.7;Procedural Parallelism;691
23.7.1;Parallel Pipelined Functions;692
23.7.2;Do-It-Yourself Parallelism;695
23.7.3;Old School Do-It-Yourself Parallelism;698
23.8;Summary;702
24;CHAPTER 15 Data Loading and Unloading;703
24.1;SQL*Loader;703
24.1.1;Loading Data with SQLLDR FAQs;707
24.1.1.1;Why do I receive “exceeds maximum length” in my log file?;707
24.1.1.2;How Do I Load Delimited Data?;708
24.1.1.3;How Do I Load Fixed Format Data?;711
24.1.1.4;How Do I Load Dates?;713
24.1.1.5;How Do I Load Data Using Functions?;713
24.1.1.6;How Do I Load Data with Embedded Newlines?;717
24.1.1.6.1;Use a Character Other Than a Newline;717
24.1.1.6.2;Use the FIX Attribute;718
24.1.1.6.3;Use the VAR Attribute;720
24.1.1.6.4;Use the STR Attribute;721
24.1.1.6.5;Embedded Newlines Wrap-up;722
24.1.1.7;How Do I Load LOBs?;722
24.1.1.7.1;Loading a LOB via PL/SQL;722
24.1.1.7.2;Loading LOB Data via SQLLDR;726
24.1.1.7.2.1;Loading LOB Data That Is Inline;726
24.1.1.7.2.2;Loading LOB Data That Is Out of Line;727
24.1.1.7.2.3;Loading LOB Data into Object Columns;729
24.1.1.8;How Do I Call SQLLDR from a Stored Procedure?;731
24.1.2;SQLLDR Caveats;732
24.1.2.1;TRUNCATE Appears to Work Differently;732
24.1.2.2;SQLLDR Defaults to CHAR(255);732
24.1.2.3;Command Line Overrides Control File;732
24.1.3;SQLLDR Summary;732
24.2;External Tables;732
24.2.1;Setting Up External Tables;733
24.2.2;Dealing with Errors;739
24.2.3;Using an External Table to Load Different Files;742
24.2.4;Multiuser Issues;742
24.2.5;External Tables Summary;743
24.3;Flat File Unload;744
24.4;Data Pump Unload;752
24.5;Summary;754
25;CHAPTER 16 Data Encryption;755
25.1;Types of Encryption;755
25.1.1;Data in Motion;755
25.1.2;Data at Rest;756
25.1.3;Manual Application Encryption;759
25.1.4;The Oracle Wallet;760
25.1.4.1;Understanding the Wallet;760
25.1.4.2;Setting up the Oracle Wallet;761
25.1.5;Transparent Column Level Encryption;763
25.1.6;Transparent Tablespace Encryption;765
25.2;What Encryption Is Not About;768
25.3;Implementing Manual Application Encryption;769
25.3.1;Reasons to Avoid the Manual Approach;769
25.3.2;Performance Implications of the Manual Approach;770
25.3.3;When to Use the Manual Approach;775
25.4;Implementing Column Level Encryption;775
25.4.1;How to Use Column Encryption;775
25.4.2;Data Storage with Column Encryption;776
25.4.2.1;Increased Storage with Column Encryption;776
25.4.2.2;Storage in the SGA;779
25.4.3;Measuring the Performance Impact of Column Encryption;780
25.4.4;Influences on the Magnitude;780
25.4.4.1;Understanding What You Measure;781
25.4.4.2;Impact of Encryption;781
25.4.4.3;Cost of Data Retrieval;784
25.4.4.4;Statistics on Encrypted Columns;785
25.4.5;Limitations of Column Encryption;786
25.5;Implementing Tablespace Encryption;787
25.5.1;How to Use Tablespace Encryption;787
25.5.2;Data Storage with Tablespace Encryption;787
25.5.2.1;Storage on Disk;788
25.5.2.2;Storage in the SGA;788
25.5.3;Measuring the Performance Impact of Tablespace Encryption;789
25.6;Deciding on an Encryption Technique;794
25.7;Summary;795
26;Index;797



Ihre Fragen, Wünsche oder Anmerkungen
Vorname*
Nachname*
Ihre E-Mail-Adresse*
Kundennr.
Ihre Nachricht*
Lediglich mit * gekennzeichnete Felder sind Pflichtfelder.
Wenn Sie die im Kontaktformular eingegebenen Daten durch Klick auf den nachfolgenden Button übersenden, erklären Sie sich damit einverstanden, dass wir Ihr Angaben für die Beantwortung Ihrer Anfrage verwenden. Selbstverständlich werden Ihre Daten vertraulich behandelt und nicht an Dritte weitergegeben. Sie können der Verwendung Ihrer Daten jederzeit widersprechen. Das Datenhandling bei Sack Fachmedien erklären wir Ihnen in unserer Datenschutzerklärung.