- ISBN13: 978-1-59059-851-1
- ISBN10: 1-59059-851-2
- 670 pp.
- Published Aug 2007
- Print Book Price: $59.99
- eBook Price: $41.99
Errata Submission
If you think that you've found an error in RMAN Recipes for Oracle Database 11g : A Problem-Solution Approach, please let us know about it. You will find any confirmed erratum below, so you can check if your concern has already been addressed.
Errata
| Issue | Author's Response |
|---|---|
| Page 213, in step 2, the description of the script indicates that 3 channels are allocated, however, only one channel is specified (C1) in all 3 ALLOCATE commands. | the reader is correct, those channels should have different names like C1, C2, and C3. |
| page 11, 4th paragraph, it refers to a "shutdown force", that should say "startup force". | page 11, 4th paragraph, it refers to a "shutdown force", that should say "startup force". |
| Chapter 18, page 566, output of of the "show channel" command: Displays 2 lines, the first says "... CHANNEL 1 DEVICE ...", and the second "... CHANNEL DEVICE ...". I presume the second should read "... CHANNEL 2 DEVICE ...". | Here is what the output should look like: CONFIGURE CHANNEL DEVICE TYPE 'SBT_TAPE' PARMS 'ENV=(NB_ORA_SERV=hounbupbs01-nbu,NB_ORA_CLIENT=houcrspdb02-nbu,NB_ORA_POLICY=T2_HOU_CRS_P_ORACLE_PDB02,SBT_LIBRARY=/logprd/oracle/app/oracle/product/10.2.0/db1/lib/libobk.so)'; |
| Chapter 15, page 483. Near the top it states "execute the mydb_script". That should say "execute the mydb script". Chapter 15, page 483. The middle bulleted list should not be bulleted. That's a typo. Chapter 15, page 483. At the bottom of page 483, last line, it references the "utlirp.sql" script. That should say "utlrp.sql". |
The text that the reader has provided is correct. |
| Chapter 15, page 482. Bottom of the page. It says "... location specified for the datafiles in the pfile..." That is not correct. The datafile locations do not exist in the pfile. | The reader is correct. |
| Chapter 15, page 484. Bottom of page, last bullet states "You must create a new temporary tablespace..." That should say "You must add a tempfile to the existing temporary tablespace..." | The text that the reader has provided is correct. |
| Chapter 1, page 12 The term "instance recovery" is used incorrectly. Here is the correct definition from the Oracle 10g Concepts manaual taken from the URL http://download.oracle.com/docs/cd/B28359_01/server.111/b28318/startup.htm#CNCPT1301 The text should comply with the software manufacturer's definitions of the terms "crash recovery" and "instance recovery". --- quote --- Crash recovery is used to recover from a failure either when a single-instance database fails or all instances of an Oracle Real Application Clusters database fail. Instance recovery refers to the case where a surviving instance recovers a failed instance in an Oracle Real Application Clusters database." --- end quote --- |
The reader is correct. Oracle uses the term instance recovery as noted in the quote: "Crash recovery is used to recover from a failure either when a single-instance database fails or all instances of an Oracle Real Application Clusters database fail. Instance recovery refers to the case where a surviving instance recovers a failed instance in an Oracle Real Application Clusters database." |
| several errors in the part on convert database between pages 482 and 484. I marked the errors on the pages and would like to send you a scan/image of the pages. Please respond, so I can send you a jpeg which will point out the errors | Please send the jpeg file to the authors' email addresses listed on page xxxi of the RMAN Recipes book. |
| Chapter 9, Page 271, at midpage, ... Starting backup at MM/DD/YY HH24:MI:SS I hope that it actually displays date/time, not the format string. From your Windows script on pg 268, I don't know where/how to fix it. Please check for me. Thanks, Mai |
On page 269, the line 20. set NLS_DATE_FORMAT="MM/DD/YY HH24:MI:SS" should not have the double quotes. It should be 20. set NLS_DATE_FORMAT=MM/DD/YY HH24:MI:SS |
| Chapter 3, pg 47, should read: "SQL> flashback database to RESTORE POINT rp1;" |
On Page 41 the text SQL> flashback database to rp1; should be revised to SQL> flashback database to restore point rp1; |
| ----------------------------- Chapter 1, Page 11, there is no "shutdown force" command ----------------------------- Chapter 1, Page 11, 6th bullet on the page, should say "Any uncommitted changes are not rolled back automatically" ----------------------------- Chapter 2, Page 24, members of oinstall OS group cannot start/stop an instance ----------------------------- Chapter 2, Page 25, in "How It Works", that should say "RMAN uses OS authentication and password files to allow privileged users connect to the database" (not "the rman utility") ----------------------------- Chapter 2, Page 25, in "Explaining OS Authentication", in 11g, the groups are dba and oper, oinstall is for installing/patching the software only. ----------------------------- Chapter 2, Page 27, typo recipe 2-2, it says "refer to recipe 1-2 for details..." that should say "refer to recipe 2-1 for details..." ----------------------------- Chapter 2, Page 29, you can connect as sysdba or as sysoper; full dba privileges are not needed. ----------------------------- Chapter 2, Page 31, the parameter is "log_archive_start", not "archive_log_start". ----------------------------- Chapter 2, Page 32, clarification in the Solution section: ".. or a user with sydba privilege" is better than " .. or a username/password that is in the password file" because names of users with oper privilege only are in the password file too. ----------------------------- Chapter 3, Page 40, typo, recipe 3-1, step 3 should read: alter system set db_recovery_file_dest_size=4G; alter system set db_recovery_file_dest='/home/oracle/flasharea'; ----------------------------- Chapter 3, Page 55, alternative approach, recipe 3-7: 1. Move files to new location 2. crosscheck 3. delete expried 4. catalog recovery area ----------------------------- Chapter 3, Page 61, typo in table 3-3 has "DCOLD1" and "DCOLD2" as column headers while the previous lines refer to DCOL1 and DCOL2. ----------------------------- Chapter 3, Page 68, clarification, "Oracle defines an active redo log group as may or may not have been archived and is required for crash recovery." ----------------------------- Chapter 3, Page 69, Figure 3-1, in Group 1, the folder on the right should say "g1m2" ----------------------------- Chapter 4, Page 91, pg. 91, "How it Works", XFree86 is not an operating system, that should say something like "operating system tool." ----------------------------- Chapter 4, Page 92, "How it Works", Text says "enclose reserved keywords with double quotes as show in the example" but example uses single quotes. The offending word is "backup". ----------------------------- Chapter 4, Page 107, "Starting a Database", The example shows correctly "startup dba ..." but text says "use the dba option with the shutdown command". ----------------------------- Chapter 5, Page 115, typo, in table 5-1, the retention policy parameter is listed twice with a slightly different description. ----------------------------- Chapter 5, Page 115, "How it Works", "backup optimization off" does not skip unchanged datablocks in datafiles, it would skip unchanged datafiles. ----------------------------- Chapter 5, Page 145, clarification, the syntax in recipe 5-20 works for 11g and not 10g. The recipe states this fact, however, some readers have missed that note. ----------------------------- Chapter 6, Page 158, "Connecting to the Catalog from the Command Line", Shouldn't say, starting backups in nocatalog mode would not break permanently the link between target database and catalog. Permanently means forever and this is not true because the contents in controlfile and recovery catalog can be resynchronized. ----------------------------- Chapter 6, Page 162, "How it Works", Recataloging backups is not shown in recipe 6-6, it's shown in recipe 6-7. ----------------------------- Chapter 7, Page 203, pg. 203, "Solution" The second example on this page uses a format string. Above the example there is correcty written that "%f" and "%d" are substitution variables but after the example that, has that '%' and '_' are wildcards. That's true for SQL but not for the RMAN format string. ----------------------------- Chapter 7, Page 204, "Solution", There's a mismatch between the text and the given example. The text uses the tag "whole_db" but the example uses "whole_tag". ----------------------------- Chapter 8, Page 253, clarification, this is an 11g command, does not work in 10g: RMAN> validate database; The same is true on page 255, because the following RMAN commands will only work starting in 11g: RMAN> validate recovery area; RMAN> validate recovery files; RMAN> validate spfile; RMAN> validate tablespace <tablespace_name>; RMAN> validate controlfilecopy <filename>; ----------------------------- Chapter 11, Page 316, observation, if you place your database in READ ONLY mode, you can get the "huh?" answer. ----------------------------- Chapter 11, Page 326, "Solution" The note says "one line datafiles" instead of "online datafiles". ----------------------------- Chapter 12, Page 376, typo, recipe 12-10, the first example should have "alter database open resetlogs". Currently it says "alter database open reset logs". ----------------------------- Chapter 12, Page 378, slight rewording, top of page, should say "...you'll lose any transactions that were created after the point to which you restore." ----------------------------- Chapter 15, Page. 452, "Solution", On the previous page at point 5, correctly starts the database with NOMOUNT because you don't have a controlfile yet, but the text after the example says ".. and mount the new controlfile". ---------------------------- Chapter 15, Page. 458, "Solution", In point 2 you set the auxiliary database name to TEST1 but in point 6 and 7 you use AUXDB. ---------------------------- Chapter 15, Page. 459, "Solution", The output in point 7 shows that the auxiliary database is not started and the instance has been started. But in point 4 you started the auxiliary instance manually and according to the output in point 6 the instance is mounted. ---------------------------- Chapter 15, Page. 466, "Solution" In point 6 we should recommend setting DB_UNIQUE_NAME in the init.ora of the standby database although it's not necessary for the duplication. The SID "AUX" in the example in point 7 is not correct, it should be "PROD". Point 8 and 9 do not match, because in point 8 you test the connectivity to the primary database with tnsname "PROD1" and to the recovery catalog but in 9 you use the tnsname "PROD" for the primary database and don't use the recovery catalog at all. Both steps are executed on the standby, so the tnsnames should match to not confuse the reader. ----------------------------- Chapter 15, Page 468, "Solution", A small typo in the connect string for the auxiliary database. The password is enclosed by '<.' instead of '<>'. I would remove 'nofilenamecheck' from the example because the example's description does not mention if it's the same or different host. ----------------------------- Chapter 15, Page 476, "How it Works" In point 5 the text says first says, RMAN performs a PITR, but in the next sentence "RMAN performs a complete database recovery because no 'until' clause has been specified". RMAN uses an implicit 'set until scn' clause and the recovery is always incomplete because of the missing online redologs. ----------------------------- Chapter 20, clarification, some of the output that you see may differ from what is in the book because when the book was written, the authors used a previous version of 11g, and that output now differs from the current version of 11g. ----------------------------- Chapter 21, Page 632, in 1st paragraph: "This directory has a subdirectory called HomeSelector. In that subdirectory you will see a file called ohsel.exe. That file is used to choose a different Oracle Home." That should be rewritten to add the 10g/11g content: "This directory has a subdirectory called HomeSelector. In that subdirectory you will see a file called ohsel.exe. That file is used to choose a different Oracle Home in Oracle 9i and earlier. For Oracle 10g, use Oracle Universal Installer to change Oracle Homes." |
----------------------------- Chapter 1, Page 11, there is no "shutdown force" command ----------------------------- Chapter 1, Page 11, 6th bullet on the page, should say "Any uncommitted changes are not rolled back automatically" ----------------------------- Chapter 2, Page 24, members of oinstall OS group cannot start/stop an instance ----------------------------- Chapter 2, Page 25, in "How It Works", that should say "RMAN uses OS authentication and password files to allow privileged users connect to the database" (not "the rman utility") ----------------------------- Chapter 2, Page 25, in "Explaining OS Authentication", in 11g, the groups are dba and oper, oinstall is for installing/patching the software only. ----------------------------- Chapter 2, Page 27, typo recipe 2-2, it says "refer to recipe 1-2 for details..." that should say "refer to recipe 2-1 for details..." ----------------------------- Chapter 2, Page 29, you can connect as sysdba or as sysoper; full dba privileges are not needed. ----------------------------- Chapter 2, Page 31, the parameter is "log_archive_start", not "archive_log_start". ----------------------------- Chapter 2, Page 32, clarification in the Solution section: ".. or a user with sydba privilege" is better than " .. or a username/password that is in the password file" because names of users with oper privilege only are in the password file too. ----------------------------- Chapter 3, Page 40, typo, recipe 3-1, step 3 should read: alter system set db_recovery_file_dest_size=4G; alter system set db_recovery_file_dest='/home/oracle/flasharea'; ----------------------------- Chapter 3, Page 55, alternative approach, recipe 3-7: 1. Move files to new location 2. crosscheck 3. delete expried 4. catalog recovery area ----------------------------- Chapter 3, Page 61, typo in table 3-3 has "DCOLD1" and "DCOLD2" as column headers while the previous lines refer to DCOL1 and DCOL2. ----------------------------- Chapter 3, Page 68, clarification, "Oracle defines an active redo log group as may or may not have been archived and is required for crash recovery." ----------------------------- Chapter 3, Page 69, Figure 3-1, in Group 1, the folder on the right should say "g1m2" ----------------------------- Chapter 4, Page 91, pg. 91, "How it Works", XFree86 is not an operating system, that should say something like "operating system tool." ----------------------------- Chapter 4, Page 92, "How it Works", Text says "enclose reserved keywords with double quotes as show in the example" but example uses single quotes. The offending word is "backup". ----------------------------- Chapter 4, Page 107, "Starting a Database", The example shows correctly "startup dba ..." but text says "use the dba option with the shutdown command". ----------------------------- Chapter 5, Page 115, typo, in table 5-1, the retention policy parameter is listed twice with a slightly different description. ----------------------------- Chapter 5, Page 115, "How it Works", "backup optimization off" does not skip unchanged datablocks in datafiles, it would skip unchanged datafiles. ----------------------------- Chapter 5, Page 145, clarification, the syntax in recipe 5-20 works for 11g and not 10g. The recipe states this fact, however, some readers have missed that note. ----------------------------- Chapter 6, Page 158, "Connecting to the Catalog from the Command Line", Shouldn't say, starting backups in nocatalog mode would not break permanently the link between target database and catalog. Permanently means forever and this is not true because the contents in controlfile and recovery catalog can be resynchronized. ----------------------------- Chapter 6, Page 162, "How it Works", Recataloging backups is not shown in recipe 6-6, it's shown in recipe 6-7. ----------------------------- Chapter 7, Page 203, pg. 203, "Solution" The second example on this page uses a format string. Above the example there is correcty written that "%f" and "%d" are substitution variables but after the example that, has that '%' and '_' are wildcards. That's true for SQL but not for the RMAN format string. ----------------------------- Chapter 7, Page 204, "Solution", There's a mismatch between the text and the given example. The text uses the tag "whole_db" but the example uses "whole_tag". ----------------------------- Chapter 8, Page 253, clarification, this is an 11g command, does not work in 10g: RMAN> validate database; The same is true on page 255, because the following RMAN commands will only work starting in 11g: RMAN> validate recovery area; RMAN> validate recovery files; RMAN> validate spfile; RMAN> validate tablespace <tablespace_name>; RMAN> validate controlfilecopy <filename>; ----------------------------- Chapter 11, Page 316, observation, if you place your database in READ ONLY mode, you can get the "huh?" answer. ----------------------------- Chapter 11, Page 326, "Solution" The note says "one line datafiles" instead of "online datafiles". ----------------------------- Chapter 12, Page 376, typo, recipe 12-10, the first example should have "alter database open resetlogs". Currently it says "alter database open reset logs". ----------------------------- Chapter 12, Page 378, slight rewording, top of page, should say "...you'll lose any transactions that were created after the point to which you restore." ----------------------------- Chapter 15, Page. 452, "Solution", On the previous page at point 5, correctly starts the database with NOMOUNT because you don't have a controlfile yet, but the text after the example says ".. and mount the new controlfile". ---------------------------- Chapter 15, Page. 458, "Solution", In point 2 you set the auxiliary database name to TEST1 but in point 6 and 7 you use AUXDB. ---------------------------- Chapter 15, Page. 459, "Solution", The output in point 7 shows that the auxiliary database is not started and the instance has been started. But in point 4 you started the auxiliary instance manually and according to the output in point 6 the instance is mounted. ---------------------------- Chapter 15, Page. 466, "Solution" In point 6 we should recommend setting DB_UNIQUE_NAME in the init.ora of the standby database although it's not necessary for the duplication. The SID "AUX" in the example in point 7 is not correct, it should be "PROD". Point 8 and 9 do not match, because in point 8 you test the connectivity to the primary database with tnsname "PROD1" and to the recovery catalog but in 9 you use the tnsname "PROD" for the primary database and don't use the recovery catalog at all. Both steps are executed on the standby, so the tnsnames should match to not confuse the reader. ----------------------------- Chapter 15, Page 468, "Solution", A small typo in the connect string for the auxiliary database. The password is enclosed by '<.' instead of '<>'. I would remove 'nofilenamecheck' from the example because the example's description does not mention if it's the same or different host. ----------------------------- Chapter 15, Page 476, "How it Works" In point 5 the text says first says, RMAN performs a PITR, but in the next sentence "RMAN performs a complete database recovery because no 'until' clause has been specified". RMAN uses an implicit 'set until scn' clause and the recovery is always incomplete because of the missing online redologs. ----------------------------- Chapter 20, clarification, some of the output that you see may differ from what is in the book because when the book was written, the authors used a previous version of 11g, and that output now differs from the current version of 11g. ----------------------------- Chapter 21, Page 632, in 1st paragraph: "This directory has a subdirectory called HomeSelector. In that subdirectory you will see a file called ohsel.exe. That file is used to choose a different Oracle Home." That should be rewritten to add the 10g/11g content: "This directory has a subdirectory called HomeSelector. In that subdirectory you will see a file called ohsel.exe. That file is used to choose a different Oracle Home in Oracle 9i and earlier. For Oracle 10g, use Oracle Universal Installer to change Oracle Homes." |
| page 40, item#3. alter system set db_recovery_size = 4G; and alter system set db_recovery_dest = '/home/oracle/flasharea'; neither cmd worked for me. Both alter system commands get same oracle error: alter system set db_recovery_size = 4G; * ERROR at line 1: ORA-02065: illegal option for ALTER SYSTEM |
Chapter 3, Page 40, recipe 3-1, step 3 should read: alter system set db_recovery_file_dest_size=4G; alter system set db_recovery_file_dest='/home/oracle/flasharea'; |
| Chapter 12, Page 378. First paragraph: For objects in tablespaces involved with the TSPITR, you'll lose any transactions that were created PRIOR to the point to which you restore.... should be??: ... any transactions that were created AFTER to the point to which you restore. |
Chapter 12, Page 378, top of page, first paragraph, currently says “...you’ll lose any transactions that were created prior to the point to which you restore. It should say "...you'll lose any transactions that were created after the point to which you restore." |
