четверг, 19 февраля 2009 г.

Oracle 11g Installations on Oracle Linux 6

1. Установить пакеты:


# su - root
# yum install oracle-rdbms-server-11gR2-preinstall


# Логи установки пакетов
# ls -al /var/log/oracle-rdbms-server-11gR2-preinstall/results/orakernel.log

2. Подготовить диски ASM Multipath


3. Создать директории


DB: http://docs.oracle.com/cd/E11882_01/install.112/e47689/appendix_ofa.htm#LADBI1398
GI: http://docs.oracle.com/cd/E11882_01/install.112/e41961/prelinux.htm#CWLIN181

Определим следующее расположение:

ORACLE_BASE       /u01/app/oracle
ORACLE_HOME       /u01/app/oracle/product/11.2.0.4
GRID_HOME       /u01/app/grid/product/11.2.0.4
ORACLE_ADMIN    /u01/app/oracle/admin
ORA_INVENTORY   /u01/app/oraInventory



# su - root
# mkdir -p /u01/app/oracle
# mkdir -p /u01/app/oraInventory
# mkdir -p /u01/app/oracle/admin
# mkdir -p /u01/app/oracle/product/11.2.0.4
# mkdir -p /u01/app/grid/product/11.2.0.4
# chown -R oracle:oinstall /u01



4. Настроить .bash_profile oracle


oracle@:~$ cat .bash_profile

# .bash_profile

# Source global definitions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

if [ "$BASH" = "" ]; then
echo Hello Bourne or K shell ....
PS1=$LOGNAME@`uname -n`"# "
else
echo Hello Bash ...
PS1="\u@\h:\w> "
fi


oracle@:~$ cat .bashrc

# .bashrc

# Source global definitions
if [ -f /etc/bashrc ]; then
        . /etc/bashrc
fi


##################################################
# Setup Oracle standard env
##################################################

export ORACLE_SID=TESTDB
export ORACLE_BASE=/u01/app/oracle
export PATH=$PATH:/usr/local/bin
ORAENV_ASK=NO
. /usr/local/bin/oraenv > /dev/null 2>&1
ORAENV_ASK=YES

##################################################
# Setup Oracle extended env
##################################################
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
export NLS_DATE_FORMAT=YYYY-MM-DD:HH24:MI:SS
export LIBPATH=$ORACLE_HOME/lib:/usr/lib
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
export PATH=$ORACLE_HOME/bin:/sbin:/usr/sbin:/bin:/usr/local/bin:/usr/bin:$PATH


umask 022
unset TMOUT

if [ `uname` = "Linux" ]; then
unset LS_COLORS
fi



5. Установка Grid Infrastructure


su - oracle
export ORACLE_BASE=/u01/app/oracle
unset ORACLE_SID ORACLE_HOME LIBPATH LD_LIBRARY_PATH
cd /u01/distrib/11.2.0.4
unzip p13390677_112040_Linux-x86-64_3of7.zip
cd grid
./runInstaller


Oracle Base: /u01/app/oracle
Software Location: /u01/app/grid/product/11.2.0.4


Проверка показала что необходимо увеличить размер swap
Увеличим размер:

su - root

swapoff -v /dev/vg_dc1oel67/lv_swap
lvresize   /dev/vg_dc1oel67/lv_swap -L +4G
mkswap     /dev/vg_dc1oel67/lv_swap
swapon -v  /dev/vg_dc1oel67/lv_swap


lvdisplay | egrep "LV Name|LV Size|LV Path"
  LV Path                /dev/vg_dc1oel67/lv_swap
  LV Name                lv_swap
  LV Size                7.88 GiB

Повторим: Check Again

Запустим скрипт от root:

# /u01/app/oraInventory/orainstRoot.sh

#



6. Настройка SUDO для запуска утилит по администрированию GI с правами root

для учётной записи oracle


su – root

#vi /etc/sudoers
или
# visudo


###################################
# For oracle
###################################
oracle  ALL=NOPASSWD:/u01/app/grid/product/11.2.0.4/bin/crsctl
oracle  ALL=NOPASSWD:/u01/app/grid/product/11.2.0.4/bin/ocrconfig
oracle  ALL=NOPASSWD:/u01/app/grid/product/11.2.0.4/bin/ocrcheck
oracle  ALL=NOPASSWD:/u01/app/grid/product/11.2.0.4/bin/srvctl
oracle  ALL=NOPASSWD:/u01/app/grid/product/11.2.0.4/bin/acfsload
oracle  ALL=NOPASSWD:/u01/app/grid/product/11.2.0.4/bin/acfsroot



Проверка

su - oracle
$ sudo –l


User oracle may run the following commands on this host:
    (root) NOPASSWD: /u01/app/grid/product/11.2.0.4/bin/crsctl
    (root) NOPASSWD: /u01/app/grid/product/11.2.0.4/bin/ocrconfig
    (root) NOPASSWD: /u01/app/grid/product/11.2.0.4/bin/ocrcheck
    (root) NOPASSWD: /u01/app/grid/product/11.2.0.4/bin/srvctl
    (root) NOPASSWD: /u01/app/grid/product/11.2.0.4/bin/acfsload
    (root) NOPASSWD: /u01/app/grid/product/11.2.0.4/bin/acfsroot
#


Проверка работы GI с использованием утилит через SUDO

# su - oracle

$ . oraenv

ORACLE_SID = [root] ? +ASM
The Oracle base has been set to /u01/app/oracle

oracle@omega:~$ sudo /u01/app/grid/product/11.2.0.4/bin/crsctl status res –t



7. Установка DB Home


su - oracle
export ORACLE_BASE=/u01/app/oracle
unset ORACLE_SID ORACLE_HOME LIBPATH LD_LIBRARY_PATH
cd /u01/distrib/11.2.0.4
unzip p13390677_112040_Linux-x86-64_1of7.zip
unzip p13390677_112040_Linux-x86-64_2of7.zip
cd database
./runInstaller


Oracle Base: /u01/app/oracle
Software Location: /u01/app/oracle/product/11.2.0.4

Запустим скрипт от root:

[root@omega ~]# /u01/app/oracle/product/11.2.0.4/root.sh


8. Создание тестовой БД TESTDB с помощью dbca


su – oracle
$ . oraenv
$ dbca


Проверка работы DB TESTDB

su – oracle

$ . oraenv

ORACLE_SID = [TESTDB] ?
The Oracle base remains unchanged with value /u01/app/oracle

oracle@omega:~$ sudo /u01/app/grid/product/11.2.0.4/bin/crsctl status res -t


Проверка содержимого файла alert_TESTDB.log

# tail -1000f /u01/app/oracle/diag/rdbms/testdb_omega/TESTDB/trace/alert_TESTDB.log




9. Установка PSU патчей для GI_HOME + DB_HOME в режиме AUTO


Список последних PSU патчей доступен здесь:
http://www.oracle.com/technetwork/topics/security/alerts-086861.html

Установить последнюю версию утилиты OPatch (патч 6880880) во все $ORACLE_HOME.

GRID_HOME


su - root
chown oracle:oinstall /u01/app/grid/product/11.2.0.4

su – oracle
$ . oraenv
cd /u01/distrib/11.2.0.4/PSU/160119
cp p6880880_112000_Linux-x86-64.Opatch_11.2.0.3.12.zip $ORACLE_HOME
cd $ORACLE_HOME
mv OPatch OPatch.old
unzip p6880880_112000_Linux-x86-64.Opatch_11.2.0.3.12.zip
$ORACLE_HOME/OPatch/opatch version

DB_HOME


su – oracle
$ . oraenv
cd /u01/distrib/11.2.0.4/PSU/160119
cp p6880880_112000_Linux-x86-64.Opatch_11.2.0.3.12.zip $ORACLE_HOME
cd $ORACLE_HOME
mv OPatch OPatch.old
unzip p6880880_112000_Linux-x86-64.Opatch_11.2.0.3.12.zip
$ORACLE_HOME/OPatch/opatch version




Создать файл unconfig.rsp во всех $ORACLE_HOME


GRID_HOME


su – oracle
$ . oraenv
$ORACLE_HOME/OPatch/ocm/bin/emocmrsp -no_banner -output $ORACLE_HOME/OPatch/ocm/unconfig.rsp

DB_HOME


su – oracle
$ . oraenv
$ORACLE_HOME/OPatch/ocm/bin/emocmrsp -no_banner -output $ORACLE_HOME/OPatch/ocm/unconfig.rsp


Подготовка перед установкой PSU патчей


Желательно остановить работающий экземпляр СУБД – хотя это не обязательно
GI – должна продолжать работать

su – oracle
. oraenv
srvctl stop database -d testdb_omega



Установка последней версии PSU патча (для GI+DB ) в АВТО режиме


 директория где лежит распакованный патч не должна ничего содержать кроме этого патча
 убедиться, что в /u01 свободно минимум 24 GB

 скопировать патч в директорию /u01/distrib/11.2.0.4/PSU/160119
 распаковать патч в директории /u01/distrib/11.2.0.4/PSU/160119

su – oracle
cd /u01/distrib/11.2.0.4/PSU/160119
unzip p22191577_112040_Linux-x86-64.GI.zip


Установить патч
установка производится из-под пользователя root

su - root
unset TMOUT
export PATH=$PATH:/usr/ccs/bin:/u01/app/grid/product/11.2.0.4/OPatch


# opatch auto /u01/distrib/11.2.0.4/PSU/160119/22191577 -ocmrf /u01/app/grid/product/11.2.0.4/OPatch/ocm/unconfig.rsp
opatch auto succeeded.

Проверка наличия установленных патчей для GRID_HOME + DB_HOME


GRID_HOME

su - oracle
. oraenv

ORACLE_SID = [TESTDB] ? +ASM

$ORACLE_HOME/OPatch/opatch lspatches

DB_HOME

su - oracle
. oraenv

ORACLE_SID = [+ASM] ? TESTDB

$ORACLE_HOME/OPatch/opatch lspatches


Loading Modified SQL Files into the Database


The following steps load modified SQL files into the database.
For an Oracle RAC or Oracle RAC One Node environment, perform these steps on only one node.


Запустить экземпляр БД

su – oracle
. oraenv
srvctl start database -d testdb_omega

Установить изменения в БД
cd $ORACLE_HOME/rdbms/admin
sqlplus /nolog
SQL> CONNECT / AS SYSDBA
SQL> STARTUP
SQL> @catbundle.sql psu apply
SQL> QUIT


Проверка

SQL> select action, version||'.'||id as version_id, comments, ACTION_TIME
from DBA_REGISTRY_HISTORY;



10. Установка JVM патча для DB_HOME (устанавливается после установки PSU патча)



директория где лежит распакованный патч не должна ничего содержать кроме этого патча
убедиться, что в /u01 свободно минимум 24 GB

скопировать патч в директорию /u01/distrib/11.2.0.4/PSU/160119
распаковать патч в директории /u01/distrib/11.2.0.4/PSU/160119

su – oracle
cd /u01/distrib/11.2.0.4/PSU/160119
unzip p22139245_112040_Linux-x86-64.JVM.zip


Остановить ПО Oracle запущенное с использованием DB_HOME

$ . oraenv
ORACLE_SID = [TESTDB] ? TESTDB
The Oracle base remains unchanged with value /u01/app/oracle

$ srvctl stop database -d testdb_omega


Установить патч

$ cd /u01/distrib/11.2.0.4/PSU/160119/22139245
$ $ORACLE_HOME/OPatch/opatch apply
$ $ORACLE_HOME/OPatch/opatch lspatches



Install the SQL portion of the patch by running the following command for a single instance environment.

cd $ORACLE_HOME/sqlpatch/22139245
sqlplus /nolog
SQL> CONNECT / AS SYSDBA
SQL> startup upgrade
SQL> @postinstall.sql
SQL> shutdown
SQL> startup
SQL> @?/rdbms/admin/utlrp



Проверка

$ $ORACLE_HOME/OPatch/opatch lspatches

SQL> select action, version||'.'||id as version_id, comments, ACTION_TIME
from DBA_REGISTRY_HISTORY;




11. Установка DSTv25 патча для DB_HOME (Manually upgrade DST to DSTv25)



директория где лежит распакованный патч не должна ничего содержать кроме этого патча
убедиться, что в /u01 свободно минимум 24 GB

скопировать патч в директорию /u01/distrib/11.2.0.4/PSU/DST-25
распаковать патч в директории /u01/distrib/11.2.0.4/PSU/DST-25


Request and download the 11.2.0.4 DSTv25 Patch 22037014

* Download p22037014_112040_Linux-x86-64.DST-25.zip
* Unzip the RDBMS DSTv25 Patch 22037014
* Apply the RDBMS DSTv25 Patch 22037014  using Opatch.

$ . oraenv
ORACLE_SID = [TESTDB] ? TESTDB
$ srvctl stop database -d testdb_omega
$ cd /u01/distrib/11.2.0.4/PSU/DST-25
$ unzip p22037014_112040_Linux-x86-64.DST-25.zip
$ cd 22037014
$ $ORACLE_HOME/OPatch/opatch apply
$ $ORACLE_HOME/OPatch/opatch lspatches

$ srvctl start database -d testdb_omega

Download the DBMS_DST_scriptsV1.9.zip file and unzip from Doc ID 1585343.1

$ cd /u01/distrib/11.2.0.4/PSU/DST-25
$ unzip DBMS_DST_scriptsV1.9.zip
$ cd DBMS_DST_scriptsV1.9


Проверка

col PROPERTY_NAME format a28
col VALUE format a28

SELECT PROPERTY_NAME, SUBSTR(property_value, 1, 30) value
FROM DATABASE_PROPERTIES
WHERE PROPERTY_NAME LIKE 'DST_%'
ORDER BY PROPERTY_NAME;


Установка изменений в системный словарь

# sqlplus / as sysdba

-- Step 1 ---
@countstatsTSTZ.sql
 exec dbms_scheduler.purge_log;

-- Step 2 --
@upg_tzv_check.sql
-- Step 3 --
@upg_tzv_apply.sql


-- Проверка
select filename, to_char(version) as version from v$timezone_file;


-- Проверка
col PROPERTY_NAME format a28
col VALUE format a28

SELECT PROPERTY_NAME, SUBSTR(property_value, 1, 30) value
FROM DATABASE_PROPERTIES
WHERE PROPERTY_NAME LIKE 'DST_%'
ORDER BY PROPERTY_NAME;



Комментариев нет:

Отправить комментарий