[Spacewalk-list] Spacewalk backups, restores, OS Updates, Oracle, and its bloody archivelogs (LONG)

bearwere at gmail.com bearwere at gmail.com
Mon Apr 18 04:22:37 UTC 2011


After struggling with archivelogs growing over the limit for several 
days, I finally turned archivelog off at all. Spacewalk does not require 
100% uptime, nor restore to a specific hour, so I happily shut down 
oracle and backup it to a remote server daily with bacula. May be not 
suitable for very large deployments, but works for me.

On 16.04.2011 4:55, Ian Forde wrote:
> Sorry if any part of the subject offends, but I've just spent the last 4
> days putting together a workable solution for what had appeared to be a
> Spacewalk database crapping out.
>
> Ingredients:
> 	Spacewalk server: CentOS 5.5
> 	Channels: CentOS 5 x86_64 OS and Updates, plus other misc channels
>
> Problem: I wanted to upgrade my channels from CentOS 5.5 to 5.6.
>
> The original plan: I thought I would empty the 5.5 base (OS) channel and
> updates channel.  Then repopulate the channels with content from a local
> mrepo server.
>
> What went wrong: Some time ago, I setup backups on this box, which
> requires archivelogs on the Oracle database to be enabled.  With such a
> large number of updates, the contents
> of /usr/lib/oracle/xe/app/oracle/flash_recovery_area/XE/archivelog/ grew
> to over 4GB, leading to ORA-00257 errors.
>
> Thoughts:  I thought I'd crapped out the whole thing.  And I'm not a
> DBA.  So I wanted to do a restore.  Imagine my surprise when, after
> having setup backups, I didn't see anything about restore to a specific
> day without having a DBA.
>
> What I did wrong: Don't do what I did.  Turn off the archive logs first.
>
> How I fixed it (bear in mind that I have mrepo on a nearby server):
> 1. Update mrepo content for OS and updates
> 2. Update the /var/distro-trees/ iso on the spacewalk server
> 3. Stop Spacewalk, disable my backup script, disable Spacewalk sync
> channel updates, and disable Oracle archive logs
> 	spacewalk-service stop
> 	<other stuff to disable backup script and spacewalk sync goes here>
> 	su - oracle
> 		. /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/oracle_env.sh
> 		sqlplus /nolog
> 			connect / as sysdba
> 			shutdown immediate
> 			startup mount
> 			alter database noarchivelog;
> 			alter database open;
> 			select log_mode from sys.v$database;
> 			quit
> 		exit
> 	spacewalk-service start
> 4. Import new OS and update packages, knowing that you won't, at this
> point, blow up the archive log.
> 5. Stop Spacewalk (spacewalk-service stop)
> 5. Remove old archivelogs, then reenable them
> 	su - oracle
> 		. /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/oracle_env.sh
> 		rman target sys/sys
> 			delete archivelog all;
> 			quit
> 		sqlplus /nolog
> 			connect / as sysdba
> 			shutdown immediate
> 			startup mount
> 			alter database archivelog;
> 			alter database open;
> 			select log_mode from sys.v$database;
> 			quit
> 		exit
> 6. Put things back to normal and make an IMMEDIATE DATABASE BACKUP
> 	spacewalk-service start
> 	<steps to enable backup script and spacewalk sync)
> 	MAKE SPACEWALK DATABASE BACKUP (I used the procedure from the wiki)
>
> Moral of the story: Have a DBA nearby.  I did, but not one that knows
> Oracle.  Note that this procedure worked for me.  It may cause others'
> computers to spontaneously turn into pixie dust, or offer guided aerial
> porcine tours over the frozen wastes of hades.  NO WARRANTIES EXPRESSED
> OR IMPLIED.
>
> What I'd like to know is if I went about it in a roundabout way or if
> this is what one does when one doesn't have an Oracle backup scheme to
> integrate into...
>
> 	-Ian
>
> _______________________________________________
> Spacewalk-list mailing list
> Spacewalk-list at redhat.com
> https://www.redhat.com/mailman/listinfo/spacewalk-list
>    




More information about the Spacewalk-list mailing list