projects/oracle-server-scripts/embedded-upgradedb-10g.tmpl | 98 +++++++++++++
projects/oracle-server-scripts/oracle-server-scripts.spec | 3
spacewalk/setup/share/oracle/upgrade-db-10g.sh | 45 +++++
spacewalk/setup/spacewalk-setup.spec | 1
4 files changed, 146 insertions(+), 1 deletion(-)
New commits:
commit 4ff3296f8a3e5e060d24d9428291cf87fff1c0a6
Author: Milan Zazrivec <mzazrivec(a)redhat.com>
Date: Mon Jun 1 19:33:18 2009 +0200
include new embedded db upgrade script into spec file
diff --git a/spacewalk/setup/spacewalk-setup.spec b/spacewalk/setup/spacewalk-setup.spec
index cc43b6d..f75a493 100644
--- a/spacewalk/setup/spacewalk-setup.spec
+++ b/spacewalk/setup/spacewalk-setup.spec
@@ -75,6 +75,7 @@ install -d -m 755 %{buildroot}/%{_datadir}/spacewalk/setup/oracle/
install -m 0755 share/oracle/install-db.sh
%{buildroot}/%{_datadir}/spacewalk/setup/oracle
install -m 0755 share/oracle/remove-db.sh
%{buildroot}/%{_datadir}/spacewalk/setup/oracle
install -m 0755 share/oracle/upgrade-db.sh
%{buildroot}/%{_datadir}/spacewalk/setup/oracle
+install -m 0755 share/oracle/upgrade-db-10g.sh
%{buildroot}/%{_datadir}/spacewalk/setup/oracle
%check
commit e72f71b640f4f19237ec12e2b85fb800623a2cf0
Author: Milan Zazrivec <mzazrivec(a)redhat.com>
Date: Mon Jun 1 19:31:28 2009 +0200
add 10g 10.2.0.3 -> 10.2.0.4 embedded db setup upgrade script
diff --git a/spacewalk/setup/share/oracle/upgrade-db-10g.sh
b/spacewalk/setup/share/oracle/upgrade-db-10g.sh
new file mode 100644
index 0000000..36b8be7
--- /dev/null
+++ b/spacewalk/setup/share/oracle/upgrade-db-10g.sh
@@ -0,0 +1,45 @@
+#!/bin/sh
+# Upgrades RHN embedded database at mountpoint /rhnsat (10g ver 10.2.0.3 -> 10g ver.
10.2.0.4)
+#
+# Copyright (c) 2009 Red Hat, Inc.
+#
+# This software is licensed to you under the GNU General Public License,
+# version 2 (GPLv2). There is NO WARRANTY for this software, express or
+# implied, including the implied warranties of MERCHANTABILITY or FITNESS
+# FOR A PARTICULAR PURPOSE. You should have received a copy of GPLv2
+# along with this software; if not, see
+#
http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt.
+#
+# Red Hat trademarks are not licensed under GPLv2. No permission is
+# granted to use or replicate Red Hat trademarks that are incorporated
+# in this software or its documentation.
+
+set -x
+
+# exit if anything fails
+set -e
+
+# set oracle environment to embedded server
+ORAENV_ASK=NO
+ORACLE_BASE=/opt/apps/oracle
+ORACLE_ADMIN_DIR=$ORACLE_BASE/admin/10.2.0
+ORACLE_CONFIG_DIR=$ORACLE_BASE/config/10.2.0
+
+# change env to rhnsat instance
+if [ -z $ORACLE_CUSTOM_SID ]; then
+ export ORACLE_SID=rhnsat
+else
+ export ORACLE_SID=$ORACLE_CUSTOM_SID
+fi
+. oraenv
+
+# upgrade database
+UPGRADE_TMPL=$ORACLE_ADMIN_DIR/embedded-upgradedb-10g.tmpl
+m4 $UPGRADE_TMPL -I$ORACLE_ADMIN_DIR \
+ --define RHNORA_DBNAME=$ORACLE_SID \
+ --define RHNORA_LOG_PATH=/rhnsat/admin/rhnsat/logs \
+ --define RHNORA_DATA_PATH=/rhnsat/data/rhnsat \
+ --define RHNORA_DB_USER=rhnsat \
+ | $ORACLE_HOME/bin/sqlplus /nolog
+
+set +x
commit ed4eeadce9cc05b3cf1f91c6211795a7d2c3388c
Author: Milan Zazrivec <mzazrivec(a)redhat.com>
Date: Mon Jun 1 19:28:12 2009 +0200
include new source into spec file
diff --git a/projects/oracle-server-scripts/oracle-server-scripts.spec
b/projects/oracle-server-scripts/oracle-server-scripts.spec
index 2941245..3bdf392 100644
--- a/projects/oracle-server-scripts/oracle-server-scripts.spec
+++ b/projects/oracle-server-scripts/oracle-server-scripts.spec
@@ -23,6 +23,7 @@ Source9: default-createdb.tmpl
Source10: embedded-createdb.tmpl
Source11: rhnora.m4
Source12: embedded-upgradedb.tmpl
+Source13: embedded-upgradedb-10g.tmpl
License: Proprietary
Group: Oracle Server
BuildArch: noarch
@@ -45,7 +46,7 @@ mkdir -p $RPM_BUILD_ROOT
install -m755 -d $RPM_BUILD_ROOT%{oracle_admin}
for f in %{SOURCE0} %{SOURCE1} %{SOURCE2} %{SOURCE3} \
%{SOURCE4} %{SOURCE5} %{SOURCE9} %{SOURCE10} %{SOURCE11} \
- %{SOURCE12}; do
+ %{SOURCE12} %{SOURCE13}; do
install -m 755 $f $RPM_BUILD_ROOT%{oracle_admin}
done
commit 37d56362427ffd0b8066818edf16eb268dbd119a
Author: Milan Zazrivec <mzazrivec(a)redhat.com>
Date: Mon Jun 1 19:24:56 2009 +0200
add template script for 10.2.0.3 -> 10.2.0.4 embedded db upgrade
diff --git a/projects/oracle-server-scripts/embedded-upgradedb-10g.tmpl
b/projects/oracle-server-scripts/embedded-upgradedb-10g.tmpl
new file mode 100644
index 0000000..b0ac82b
--- /dev/null
+++ b/projects/oracle-server-scripts/embedded-upgradedb-10g.tmpl
@@ -0,0 +1,98 @@
+include(`rhnora.m4')
+
+--
+-- 10gR2 ver. 10.2.0.3 to 10gR2 ver. 10.2.0.4 embedded db upgrade template
+--
+
+
+spool RHNORA_CREATELOG(RHNORA_DBNAME-10g-10g-upgrade) replace
+set echo on
+set term on
+set pagesize 10000
+-- don't set serveroutput on otherwise you will get a lot of PLS-00213 errors
+--set serveroutput on
+whenever sqlerror exit failure
+whenever oserror exit failure
+
+connect / as sysdba
+-- create spfile from pfile='upgrade-init@.ora';
+startup upgrade
+
+alter session set nls_date_format = 'YYYY-MM-DD HH24:MI:SS';
+
+-- ignore errors in oracle provided files
+whenever sqlerror continue
+
+-- do upgrade
+select sysdate, 'rdbms/admin/catupgrd.sql' script from dual;
+(a)?/rdbms/admin/catupgrd.sql
+
+-- show summary
+(a)?/rdbms/admin/utlu102s.sql
+
+-- invalidate all db objects
+select sysdate, 'Invalidating packages' message from dual;
+(a)?/rdbms/admin/utlirp.sql
+
+shutdown immediate
+startup restrict
+
+-- recompile all db stuff incl. java stored procs
+select sysdate, 'Recompiling packages' message from dual;
+(a)?/rdbms/admin/utlrp.sql
+
+whenever sqlerror exit failure
+set serveroutput on
+-- perform migration of DICTIONARY to LOCAL managed tablespaces
+begin
+ for s in (select tablespace_name from dba_tablespaces
+ where extent_management = 'DICTIONARY'
+ and tablespace_name = 'SYSTEM')
+ loop
+ for t in (select tablespace_name from dba_tablespaces
+ where extent_management = 'DICTIONARY'
+ and tablespace_name not in ('SYSTEM'))
+ loop
+ DBMS_SPACE_ADMIN.TABLESPACE_MIGRATE_TO_LOCAL(t.tablespace_name);
+ end loop;
+ for t in (select tablespace_name from dba_tablespaces
+ where contents='PERMANENT'
+ and tablespace_name not in ('SYSTEM','SYSAUX'))
+ loop
+ execute immediate 'alter tablespace ' || t.tablespace_name || ' read
only';
+ end loop;
+ execute immediate 'alter tablespace SYSAUX offline';
+ DBMS_SPACE_ADMIN.TABLESPACE_MIGRATE_TO_LOCAL('SYSTEM');
+ execute immediate 'alter tablespace SYSAUX online';
+ for t in (select tablespace_name from dba_tablespaces
+ where status = 'READ ONLY')
+ loop
+ execute immediate 'alter tablespace ' || t.tablespace_name || ' read
write';
+ end loop;
+ end loop;
+end;
+/
+
+-- restart the instance to reinitialize the system parameters
+shutdown immediate
+startup
+
+-- lock default users from 9i
+select sysdate, 'Locking default 9i users' message from dual;
+BEGIN
+ FOR item IN ( SELECT USERNAME FROM DBA_USERS WHERE USERNAME IN (
+ 'DBSNMP', 'OUTLN', 'TSMSYS', 'ORACLE_OCM',
'DIP') )
+ LOOP
+ dbms_output.put_line('Locking and Expiring: ' || item.USERNAME);
+ execute immediate 'alter user ' || item.USERNAME || ' password expire
account lock' ;
+ END LOOP;
+END;
+/
+
+-- set compatible flag
+alter system set compatible='10.2.0.4.0' scope=spfile;
+disconnect
+
+connect / as sysdba
+shutdown immediate
+