| Introduction |
|
xix | |
| Part I What Multitenant Means |
|
|
1 Introduction to Multitenant |
|
|
3 | (32) |
|
History Lesson: A New Era in IT |
|
|
4 | (6) |
|
|
|
5 | (1) |
|
|
|
6 | (3) |
|
|
|
9 | (1) |
|
|
|
9 | (1) |
|
|
|
10 | (1) |
|
Multiple Databases Managed by One Instance |
|
|
10 | (1) |
|
Summary of Consolidation Strategies |
|
|
10 | (1) |
|
The System Dictionary and Multitenant Architecture |
|
|
11 | (16) |
|
|
|
11 | (3) |
|
|
|
14 | (2) |
|
|
|
16 | (4) |
|
|
|
20 | (7) |
|
What Is Consolidated at CDB Level |
|
|
27 | (6) |
|
Data and Metadata at CDB Level |
|
|
30 | (3) |
|
|
|
33 | (2) |
|
|
|
35 | (36) |
|
Creating a Container Database (CDB) |
|
|
36 | (19) |
|
|
|
36 | (2) |
|
|
|
38 | (17) |
|
Creating a Pluggable Database |
|
|
55 | (12) |
|
Create a New PDB from PDB$SEED |
|
|
56 | (3) |
|
Create a New PDB Using the Local Clone Method |
|
|
59 | (1) |
|
Create a PDB Using SQL Developer |
|
|
60 | (5) |
|
Create a PDB Using the DBCA |
|
|
65 | (1) |
|
Create a PDB Using Cloud Control |
|
|
66 | (1) |
|
Using the catcon.pl Script |
|
|
67 | (2) |
|
|
|
69 | (2) |
|
3 Single-Tenant, Multitenant, and Application Containers |
|
|
71 | (16) |
|
Multitenant Architecture Is Not an Option |
|
|
72 | (2) |
|
|
|
72 | (1) |
|
|
|
73 | (1) |
|
Single-Tenant in Standard Edition |
|
|
74 | (3) |
|
|
|
75 | (1) |
|
|
|
75 | (1) |
|
Consolidation with Standard Edition 2 |
|
|
76 | (1) |
|
Single-Tenant in Enterprise Edition |
|
|
77 | (2) |
|
|
|
77 | (1) |
|
|
|
78 | (1) |
|
Using the Multitenant Option |
|
|
79 | (5) |
|
|
|
80 | (3) |
|
Consolidation with Multitenant Option |
|
|
83 | (1) |
|
|
|
84 | (3) |
| Part II Multitenant Administration |
|
|
|
|
87 | (32) |
|
Choosing a Container to Work With |
|
|
88 | (1) |
|
|
|
89 | (3) |
|
|
|
90 | (1) |
|
Database Startup and Shutdown |
|
|
90 | (1) |
|
|
|
90 | (1) |
|
|
|
91 | (1) |
|
|
|
92 | (1) |
|
|
|
92 | (8) |
|
|
|
92 | (1) |
|
|
|
93 | (4) |
|
|
|
97 | (1) |
|
View PDB Operation History |
|
|
97 | (1) |
|
|
|
97 | (1) |
|
|
|
98 | (1) |
|
|
|
99 | (1) |
|
|
|
100 | (13) |
|
|
|
101 | (10) |
|
|
|
111 | (1) |
|
|
|
112 | (1) |
|
Using CDB-Level vs. PDB-Level Parameters |
|
|
113 | (5) |
|
|
|
114 | (1) |
|
|
|
114 | (2) |
|
|
|
116 | (1) |
|
|
|
116 | (1) |
|
|
|
116 | (1) |
|
|
|
116 | (1) |
|
|
|
117 | (1) |
|
|
|
118 | (1) |
|
5 Networking and Services |
|
|
119 | (20) |
|
|
|
120 | (1) |
|
|
|
120 | (1) |
|
|
|
121 | (2) |
|
Networking: Multithreaded and Multitenant |
|
|
123 | (2) |
|
|
|
125 | (9) |
|
Default Services and Connecting to PDBs |
|
|
125 | (4) |
|
|
|
129 | (5) |
|
Create a Dedicated Listener for a PDB |
|
|
134 | (3) |
|
|
|
137 | (2) |
|
|
|
139 | (30) |
|
Users, Roles, and Permissions |
|
|
140 | (15) |
|
|
|
140 | (1) |
|
|
|
141 | (1) |
|
|
|
142 | (2) |
|
|
|
144 | (2) |
|
|
|
146 | (1) |
|
|
|
147 | (1) |
|
|
|
148 | (2) |
|
|
|
150 | (1) |
|
|
|
151 | (2) |
|
|
|
153 | (1) |
|
|
|
153 | (2) |
|
|
|
155 | (3) |
|
|
|
155 | (1) |
|
|
|
156 | (2) |
|
|
|
158 | (1) |
|
|
|
158 | (1) |
|
|
|
158 | (1) |
|
|
|
158 | (1) |
|
|
|
159 | (1) |
|
Transparent Data Encryption |
|
|
159 | (6) |
|
|
|
159 | (5) |
|
|
|
164 | (1) |
|
|
|
165 | (1) |
|
|
|
165 | (4) |
| Part III Backup, Recovery, and Database Movement |
|
|
|
|
169 | (30) |
|
|
|
170 | (5) |
|
|
|
170 | (3) |
|
RMAN: The Default Configuration |
|
|
173 | (1) |
|
|
|
174 | (1) |
|
|
|
174 | (1) |
|
|
|
175 | (8) |
|
|
|
176 | (4) |
|
|
|
180 | (3) |
|
Do Not Forget Archive Logs! |
|
|
183 | (1) |
|
|
|
183 | (6) |
|
|
|
184 | (1) |
|
Restore and Recover a CDB |
|
|
184 | (3) |
|
Restore and Recover a PDB |
|
|
187 | (2) |
|
RMAN Optimization Considerations |
|
|
189 | (4) |
|
The Data Recovery Advisor |
|
|
193 | (1) |
|
|
|
193 | (1) |
|
Using Cloud Control for Backups |
|
|
194 | (3) |
|
|
|
195 | (2) |
|
|
|
197 | (2) |
|
8 Flashback and Point-in-time Recovery |
|
|
199 | (28) |
|
Pluggable Database Point-in-Time |
|
|
200 | (6) |
|
|
|
201 | (3) |
|
|
|
204 | (1) |
|
|
|
205 | (1) |
|
|
|
206 | (5) |
|
|
|
207 | (1) |
|
|
|
207 | (1) |
|
|
|
208 | (1) |
|
|
|
209 | (2) |
|
|
|
211 | (1) |
|
PDB Point-in-Time Recovery in 12.2 |
|
|
211 | (2) |
|
PDBPITR in Shared UNDO Mode |
|
|
211 | (1) |
|
PDBPITR in Local UNDO Mode |
|
|
212 | (1) |
|
|
|
213 | (8) |
|
|
|
213 | (2) |
|
Flashback with Local UNDO |
|
|
215 | (1) |
|
|
|
216 | (1) |
|
Restore Points at the CDB and PDB Levels |
|
|
216 | (3) |
|
|
|
219 | (2) |
|
|
|
221 | (1) |
|
|
|
222 | (3) |
|
When Do You Need PITR or Flashback? |
|
|
222 | (1) |
|
Impact on the Standby Database |
|
|
223 | (2) |
|
Auxiliary Instance Cleanup |
|
|
225 | (1) |
|
|
|
225 | (2) |
|
|
|
227 | (32) |
|
Grappling with PDB File Locations |
|
|
228 | (1) |
|
Plugging In and Unplugging |
|
|
229 | (10) |
|
|
|
230 | (1) |
|
An Unplugged Database Stays in the Source |
|
|
231 | (1) |
|
What Exactly Is in the XML File? |
|
|
232 | (3) |
|
Check Compatibility for Plug-In |
|
|
235 | (2) |
|
|
|
237 | (1) |
|
|
|
238 | (1) |
|
|
|
239 | (8) |
|
|
|
240 | (2) |
|
|
|
242 | (5) |
|
Application Container Considerations |
|
|
247 | (1) |
|
Converting Non-CDB Database |
|
|
247 | (4) |
|
|
|
248 | (2) |
|
|
|
250 | (1) |
|
|
|
251 | (1) |
|
Triggers on PDB Operations |
|
|
252 | (1) |
|
Full Transportable Export/Import |
|
|
253 | (2) |
|
Transportable Tablespaces |
|
|
255 | (1) |
|
|
|
256 | (3) |
| Part IV Advanced Multitenant |
|
|
10 Oracle Database Resource Manager |
|
|
259 | (30) |
|
|
|
260 | (5) |
|
Key Resource Manager Terminologies |
|
|
261 | (2) |
|
Resource Manager Requirements |
|
|
263 | (1) |
|
|
|
264 | (1) |
|
|
|
265 | (12) |
|
Resource Allocation and Utilization Limits |
|
|
265 | (2) |
|
Default and Autotask Directives |
|
|
267 | (2) |
|
Creating a CDB Resource Plan |
|
|
269 | (8) |
|
|
|
277 | (4) |
|
Creating a PDB Resource Plan |
|
|
278 | (3) |
|
Enable or Disable a PDB Resource Plan |
|
|
281 | (1) |
|
Removing a PDB Resource Plan |
|
|
281 | (1) |
|
Manage PDB Memory and I/O via Initialization Parameters |
|
|
281 | (2) |
|
|
|
282 | (1) |
|
|
|
282 | (1) |
|
|
|
283 | (1) |
|
Instance Caging to Resource Manager |
|
|
283 | (1) |
|
Monitoring Resource Manager |
|
|
284 | (2) |
|
Viewing the Resource Plan and Plan Directives |
|
|
285 | (1) |
|
Monitoring PDBs Managed by Resource Manager |
|
|
285 | (1) |
|
|
|
286 | (3) |
|
|
|
289 | (30) |
|
|
|
291 | (1) |
|
Creating a Physical Standby |
|
|
291 | (17) |
|
|
|
292 | (12) |
|
Create a Standby with Cloud Control |
|
|
304 | (4) |
|
Managing a Physical Standby in a Multitenant Environment |
|
|
308 | (7) |
|
Creating a New PDB on the Source |
|
|
309 | (2) |
|
|
|
311 | (1) |
|
|
|
312 | (2) |
|
|
|
314 | (1) |
|
|
|
315 | (3) |
|
|
|
318 | (1) |
|
12 Sharing Data Across PDBs |
|
|
319 | (26) |
|
|
|
320 | (2) |
|
Sharing Common Read-Only Data |
|
|
322 | (2) |
|
Transportable Tablespaces |
|
|
322 | (1) |
|
Storage Snapshots and Copy on Write |
|
|
323 | (1) |
|
|
|
324 | (19) |
|
|
|
325 | (4) |
|
|
|
329 | (14) |
|
Cross-Database Replication |
|
|
343 | (1) |
|
|
|
343 | (2) |
|
|
|
345 | (20) |
|
|
|
347 | (1) |
|
|
|
348 | (1) |
|
|
|
348 | (1) |
|
|
|
348 | (1) |
|
Oracle Advanced Replication |
|
|
349 | (1) |
|
|
|
349 | (12) |
|
Multitenant Support in Oracle GoldenGate |
|
|
349 | (10) |
|
|
|
359 | (2) |
|
|
|
361 | (1) |
|
|
|
362 | (1) |
|
|
|
362 | (1) |
|
Other Third-Party Options |
|
|
363 | (1) |
|
|
|
363 | (1) |
|
|
|
363 | (1) |
|
|
|
364 | (1) |
| Index |
|
365 | |