$ echo "moc TOD liamg TA sroom TOD melliw" | rev
/opt/db/oraclexe/app
/opt/db/oraclexe/oradata
$ su - # mkdir /opt/db/oraclexe # groupadd dba # useradd -d /opt/db/oraclexe -c 'Oracle Express' -g dba -s /bin/bash oraclexe # passwd oraclexe
# mkdir /tmp/oracle_stage # cd /tmp/oracle_stage # rpm2cpio /path_to_your_downloaded_file/oracle-xe-10.2.0.1-0.1.i386.rpm | cpio -i --make-directories
# mv usr/lib/oracle/xe/app /opt/db/oraclexe # mv usr/share/doc /opt/db/oraclexe/doc
# chown -R oraclexe:dba /opt/db/oraclexe # chmod -R 755 /opt/db/oraclexe
# su - oraclexe
export ORACLE_HOME=/opt/db/oraclexe/app/oracle/product/10.2.0/server export ORACLE_OWNER=oraclexe export ORACLE_SID=XE export LSNR=$ORACLE_HOME/bin/lsnrctl export SQLPLUS=$ORACLE_HOME/bin/sqlplus export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib export PATH=$ORACLE_HOME/bin:$PATH
$ cp /etc/skel/.bash_profile .
$ mkdir -p /opt/db/oraclexe/oradata/XE $ chmod 740 /opt/db/oraclexe/oradata/XE
cp $ORACLE_HOME/network/admin/listener.ora $ORACLE_HOME/network/admin/listener.ora.backup cp $ORACLE_HOME/network/admin/tnsnames.ora $ORACLE_HOME/network/admin/tnsnames.ora.backup cp $ORACLE_HOME/config/scripts/postDBCreation.sql $ORACLE_HOME/config/scripts/postDBCreation.sql.backup cp $ORACLE_HOME/config/scripts/init.ora $ORACLE_HOME/config/scripts/init.ora.backup cp $ORACLE_HOME/config/scripts/XE.sh $ORACLE_HOME/config/scripts/XE.sh.backup cp $ORACLE_HOME/config/scripts/XE.sql $ORACLE_HOME/config/scripts/XE.sql.backup cp $ORACLE_HOME/config/scripts/CloneRmanRestore.sql $ORACLE_HOME/config/scripts/CloneRmanRestore.sql.backup cp $ORACLE_HOME/config/scripts/cloneDBCreation.sql $ORACLE_HOME/config/scripts/cloneDBCreation.sql.backup cp $ORACLE_HOME/config/scripts/postScripts.sql $ORACLE_HOME/config/scripts/postScripts.sql.backup cp $ORACLE_HOME/config/scripts/rmanRestoreDatafiles.sql $ORACLE_HOME/config/scripts/rmanRestoreDatafiles.sql.backup cp $ORACLE_HOME/config/scripts/shutdb.sh $ORACLE_HOME/config/scripts/shutdb.sh.backup cp $ORACLE_HOME/config/scripts/sqlplus.sh $ORACLE_HOME/config/scripts/sqlplus.sh.backup cp $ORACLE_HOME/config/scripts/startdb.sh $ORACLE_HOME/config/scripts/startdb.sh.backup cp $ORACLE_HOME/config/scripts/stopdb.sh $ORACLE_HOME/config/scripts/stopdb.sh.backup cp $ORACLE_HOME/config/scripts/initXETemp.ora $ORACLE_HOME/config/scripts/initXETemp.ora.backup cp $ORACLE_HOME/bin/oracle_env.csh $ORACLE_HOME/bin/oracle_env.csh.backup cp $ORACLE_HOME/bin/oracle_env.sh $ORACLE_HOME/bin/oracle_env.sh.backup cp $ORACLE_HOME/rdbms/admin/dbmssml.sql $ORACLE_HOME/rdbms/admin/dbmssml.sql.backup # ---------------------------------------------------------------------- sed -i "s//172.16.1.8/g" $ORACLE_HOME/network/admin/listener.ora sed -i "s/ /172.16.1.8/g" $ORACLE_HOME/network/admin/tnsnames.ora sed -i "s/ /1521/g" $ORACLE_HOME/network/admin/listener.ora sed -i "s/ /1521/g" $ORACLE_HOME/network/admin/tnsnames.ora sed -i "s:(ORACLE_HOME.*):(ORACLE_HOME =/opt/db/oraclexe/app/oracle/product/10.2.0/server ):" $ORACLE_HOME/network/admin/listener.ora sed -i "s/ /8080/g" $ORACLE_HOME/config/scripts/postDBCreation.sql sed -i "s:/usr/lib/oracle/xe/app/oracle:/opt/db/oraclexe/app/oracle:g" $ORACLE_HOME/config/scripts/postDBCreation.sql sed -i "s:%FRA_DIR%:/opt/db/oraclexe/app/oracle/product/flash_recovery_area:g" $ORACLE_HOME/config/scripts/postDBCreation.sql sed -i "s/%hostname%/172.16.1.8/g" $ORACLE_HOME/config/scripts/init.ora sed -i "s/%port%/1521/g" $ORACLE_HOME/config/scripts/init.ora sed -i "s:/usr/lib/oracle/xe/app/oracle:/opt/db/oraclexe/app/oracle:g" $ORACLE_HOME/config/scripts/init.ora sed -i "s:/usr/lib/oracle/xe/oradata:/opt/db/oraclexe/oradata:g" $ORACLE_HOME/config/scripts/init.ora sed -i "s/%sga_target%/146800640/" $ORACLE_HOME/config/scripts/init.ora sed -i "s/%pga_aggregate_target%/16777216/" $ORACLE_HOME/config/scripts/init.ora sed -i "s:/usr/lib/oracle/xe/app/oracle:/opt/db/oraclexe/app/oracle:g" $ORACLE_HOME/config/scripts/XE.sh sed -i "s:/usr/lib/oracle/xe/oradata:/opt/db/oraclexe/oradata:g" $ORACLE_HOME/config/scripts/XE.sh sed -i "s:/usr/lib/oracle/xe/app/oracle:/opt/db/oraclexe/app/oracle:g" $ORACLE_HOME/config/scripts/XE.sql sed -i "s:/usr/lib/oracle/xe/app/oracle:/opt/db/oraclexe/app/oracle:g" $ORACLE_HOME/config/scripts/CloneRmanRestore.sql sed -i "s:/usr/lib/oracle/xe/app/oracle:/opt/db/oraclexe/app/oracle:g" $ORACLE_HOME/config/scripts/cloneDBCreation.sql sed -i "s:/usr/lib/oracle/xe/oradata:/opt/db/oraclexe/oradata:g" $ORACLE_HOME/config/scripts/cloneDBCreation.sql sed -i "s:/usr/lib/oracle/xe/app/oracle:/opt/db/oraclexe/app/oracle:g" $ORACLE_HOME/config/scripts/postScripts.sql sed -i "s:/usr/lib/oracle/xe/app/oracle:/opt/db/oraclexe/app/oracle:g" $ORACLE_HOME/config/scripts/rmanRestoreDatafiles.sql sed -i "s:/usr/lib/oracle/xe/oradata:/opt/db/oraclexe/oradata:g" $ORACLE_HOME/config/scripts/rmanRestoreDatafiles.sql sed -i "s:/usr/lib/oracle/xe/app/oracle:/opt/db/oraclexe/app/oracle:g" $ORACLE_HOME/config/scripts/shutdb.sh sed -i "s:/usr/lib/oracle/xe/app/oracle:/opt/db/oraclexe/app/oracle:g" $ORACLE_HOME/config/scripts/sqlplus.sh sed -i "s:/usr/lib/oracle/xe/app/oracle:/opt/db/oraclexe/app/oracle:g" $ORACLE_HOME/config/scripts/startdb.sh sed -i "s:/usr/lib/oracle/xe/app/oracle:/opt/db/oraclexe/app/oracle:g" $ORACLE_HOME/config/scripts/stopdb.sh sed -i "s:/usr/lib/oracle/xe/app/oracle:/opt/db/oraclexe/app/oracle:g" $ORACLE_HOME/config/scripts/initXETemp.ora sed -i "s:/usr/lib/oracle/xe/oradata:/opt/db/oraclexe/oradata:g" $ORACLE_HOME/config/scripts/initXETemp.ora sed -i "s/%sga_target%/146800640/" $ORACLE_HOME/config/scripts/initXETemp.ora sed -i "s/%pga_aggregate_target%/16777216/" $ORACLE_HOME/config/scripts/initXETemp.ora sed -i "s:/usr/lib/oracle/xe/app/oracle:/opt/db/oraclexe/app/oracle:g" $ORACLE_HOME/bin/oracle_env.csh sed -i "s:/usr/lib/oracle/xe/app/oracle:/opt/db/oraclexe/app/oracle:g" $ORACLE_HOME/bin/oracle_env.sh sed -i "s:/usr/lib/oracle/xe/app/oracle:/opt/db/oraclexe/app/oracle:g" $ORACLE_HOME/rdbms/admin/dbmssml.sql
$ $ORACLE_HOME/config/scripts/XE.sh
export ORACLE_PASSWORD="dont_leave_me_this_way"
$ echo "alter user flows_020100 identified by $ORACLE_PASSWORD;" | sqlplus -s / as sysdba > /dev/null 2>&1 $ echo "alter user sys identified by $ORACLE_PASSWORD;" | sqlplus -s / as sysdba > /dev/null 2>&1 $ echo "alter user system identified by $ORACLE_PASSWORD;" | sqlplus -s / as sysdba > /dev/null 2>&1 $ echo "alter user flows_files identified by $ORACLE_PASSWORD;" | sqlplus -s / as sysdba > /dev/null 2>&1 $ echo "alter user anonymous identified by $ORACLE_PASSWORD;" | sqlplus -s / as sysdba > /dev/null 2>&1
# chmod -R 640 /opt/db/oraclexe/oradata/XE # chmod 750 /opt/db/oraclexe/oradata/XE # chown -R oraclexe:dba /opt/db/oraclexe # rm -fr /opt/db/oraclexe/app/oracle/product/10.2.0/server/config/seeddb
XE:/opt/db/oraclexe/app/oracle/product/10.2.0/server:N
# chown oraclexe:dba /etc/oratab # chmod 644 /etc/oratab
#!/bin/bash
# Script name : /etc/init.d/oraclexe
#
# Start & stop Oracle 10g Express Edition Database and Listener
RETVAL=0
export ORACLE_HOME=/opt/db/oraclexe/app/oracle/product/10.2.0/server
export ORA_HOME=$ORACLE_HOME
export ORACLE_OWNER=oraclexe
export ORA_OWNR=oraclexe
export ORACLE_SID=XE
export PATH=$ORACLE_HOME/bin:$PATH
export LC_ALL=C
export SQLPLUS=$ORACLE_HOME/bin/sqlplus
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
start() {
status=`ps -ef | grep tns | grep oraclexe`
if [ "$status" == "" ]
then
if [ -f $ORACLE_HOME/bin/tnslsnr ]
then
echo "Starting Oracle Net Listener."
su - oraclexe -c "$ORACLE_HOME/bin/lsnrctl start" #> /dev/null 2>&1
fi
fi
echo "Starting Oracle Database 10g Express Edition Instance."
su oraclexe -c "$SQLPLUS -s /nolog @$ORACLE_HOME/config/scripts/startdb.sql" #> /dev/null 2>&1
RETVAL=$?
if [ $RETVAL -eq 0 ]
then
echo
else
echo Failed to start Oracle Net Listener using $ORACLE_HOME/bin/tnslsnr
echo and Oracle Express Database using $ORACLE_HOME/bin/sqlplus.
RETVAL=1
fi
touch /var/lock/oraclexe
return $RETVAL
}
stop() {
echo "Shutting down Oracle Database 10g Express Edition Instance."
su - oraclexe -c "$SQLPLUS -s /nolog @$ORACLE_HOME/config/scripts/shutdb.sql" #> /dev/null 2>&1
echo Stopping Oracle Net Listener.
su - oraclexe -c "$ORACLE_HOME/bin/lsnrctl stop" > /dev/null 2>&1
RETVAL=$?
echo
if [ $RETVAL -eq 0 ] && rm -f /var/lock/oraclexe
then
return $RETVAL
fi
}
# See how we were called
case "$1" in
start)
start
;;
stop)
stop
;;
restart|reload)
stop
start
RETVAL=$?
;;
*)
echo $"Usage: $0 {start|stop|restart}"
exit 1
esac
$ sqlplus / as sysdba SQL*Plus: Release 10.2.0.1.0 - Beta on Wed Feb 1 17:11:46 2006 Copyright (c) 1982, 2005, Oracle. All rights reserved. Connected to: Oracle Database 10g Express Edition Release 10.2.0.1.0 - Beta SQL> select * from all_users; USERNAME USER_ID CREATED ------------------------------ ---------- --------- FLOWS_020100 34 10-OCT-05 FLOWS_FILES 33 10-OCT-05 HR 32 10-OCT-05 ANONYMOUS 28 10-OCT-05 XDB 27 10-OCT-05 CTXSYS 25 10-OCT-05 DBSNMP 23 10-OCT-05 TSMSYS 20 10-OCT-05 DIP 18 10-OCT-05 OUTLN 11 10-OCT-05 SYSTEM 5 10-OCT-05 SYS 0 10-OCT-05 12 rows selected.
XE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.1.8)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = XE)
)
)
EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME =/opt/db/oraclexe/app/oracle/product/10.2.0/server )
(PROGRAM = extproc)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.1.8)(PORT = 1521))
)
)
DEFAULT_SERVICE_LISTENER = (XE)