| Конфигуриране на Oracle ASM под Enterprise Linux - част III |
| Понеделник, 19 Януари 2009 09:10 |
|
След като успешно сме инсталирали модула ASMLib съгласно процедурата описана в част II на този материал, можем да преминем към същинската инсталация на ASM. Между другото, може да проверите дали ASMLib се инициализира коректно при стартирането на операционната система. По време на зареждането Enterprise Linux 5 ще покаже дали инициализацията и откриването на дискове протича нормално. Инсталация на ASM За да започнем инсталацията на ASM първо трябва да свалим дистрибутива на Oracle Database 10g от сайта на Oracle. В случая използвам Database 10.2.0.1 за 32 битов Linux, която може да свалите от тук [oracle.com] След като свалим файла го разархивираме и записваме на диск или го конвертираме в ISO, което монтираме към CD-ROM устройството на виртуалната машина (при мен диска се монтира в /media/10201_DB). Отваряме терминална конзола като потребител oracle и изпълняваме runInstaller: $ /media/10201_DB/runInstaller -ignoresysprereqs Опцията ignoresysprereqs се налага, за да накараме инсталатора да пропусне проверката за сертификация на операционната система. Въпреки, че Database 10g R2 е официално сертифицирана и поддържана от Oracle върху Enterprise Linux 5, тази дистрибуция все още не се разпознава като сертифицирана от инсталиращия софтуер. След като Oracle Universal Installer (OUI) зареди, той ще ни покаже началния си екран, който изглежда така: Избираме Next. Тук трябва да посочим директория за т.н. inventory. Това е място, където OUI държи информация за инсталираните Oracle компоненти в XML формат. Ние вече направихме нужните директории и групи за инсталацията, затова направо въвеждаме път /u01/app/oracle/oraInventory, а за група способна да пише там задаваме oinstall. Оставяме тип на инсталацията Enterprise Edition и продължаваме чрез Next. Задаваме име на инсталацията, както и директория за инсталиране на ASM. За целите на този пример инсталираме ASM в /u01/app/oracle/product/10.2.0/db_asm. База данни, която ще го ползва ще поставим в /u01/app/oracle/product/10.2.0/db_db. OUI извършва някои базови проверки по конфигурацията, преди да започне инсталацията. Проверките свързани с операционната система няма да имат статус succeeded, тъй като тя е несертифицирана за инсталатора, но това не трябва да ни притеснява. Отговаряме с Yes на диалога, който ни предупреждава за неуспешните проверки и продължаваме нататък. Тук е ключовият момент в инсталацията. Трябва да кажем на OUI, че искаме да създадем ASM инстанция. Избираме Configure Automatic Storage Management и задаваме административна парола за нея. В случая ползвам стандартната welcome1. В този диалог инсталаторът ще ни покаже всички дискове, които са конфигурирани за ползване с ASM. Това са допълнителните три 8 GB диска, които добавихме към виртуалната машина и които са видими чрез командата /etc/init.d/oracleasm listdisks. Избираме и трите диска, като ги поставяме в обща дискова група. Повече за дисковите групи може да видите в разясняващата статия за архитектурата на ASM http://manchev.org/index.php/database/79-oracle-automatic-storage-management [manchev.org]. Трябва също да изберем и типа на резервираност, който ASM ще използва. Смисълът на трите опции е такъв:
Трябва да имаме предвид, че колкото по-високо ниво на надеждност избираме, толкова по-малък общ капацитет ще има дисковата група (тъй като трябва да поддържа дублирана информация). Тъй като това е тестова инсталация, аз избирам External, но можете да експериментирате и с някой от другите варианти. Тук OUI ни показва списък с компонентите за инсталация, избраните директории и достъпното дисково пространство в тях. Избираме Install, за да започнем същинския процес на инсталация. Тук можем да видим прогреса на инсталацията, както и информация за генерирания инсталационен лог файл. В един момент от процеса, OUI ще ни покаже този диалог, искайки да изпълним два конфигурационни скрипта като супер потребител. Отваряме конзола и изпълняваме скриптовете по зададения ред: $ su - Password: # /u01/app/oracle/oraInventory/orainstRoot.sh Changing permissions of /u01/app/oracle/oraInventory to 770. Changing groupname of /u01/app/oracle/oraInventory to oinstall. The execution of the script is complete # /u01/app/oracle/product/10.2.0/db_asm/root.sh Running Oracle10 root.sh script... The following environment variables are set as: ORACLE_OWNER= oracle ORACLE_HOME= /u01/app/oracle/product/10.2.0/db_asm Enter the full pathname of the local bin directory: [/usr/local/bin]: Copying dbhome to /usr/local/bin ... Copying oraenv to /usr/local/bin ... Copying coraenv to /usr/local/bin ... Creating /etc/oratab file... Entries will be added to the /etc/oratab file as needed by Database Configuration Assistant when a database is created Finished running generic part of root.sh script. Now product-specific root actions will be performed. /etc/oracle does not exist. Creating it now. Successfully accumulated necessary OCR keys. Creating OCR keys for user 'root', privgrp 'root'.. Operation successful. Configuration for local CSS has been initialized Adding to inittab Startup will be queued to init within 90 seconds. Checking the status of new Oracle init process... Expecting the CRS daemons to be up within 600 seconds. CSS is active on these nodes. el5 CSS is active on all nodes. Oracle CSS service is installed and running under init(1M) # След успешното им изпълнение избираме OK, което ни води към следващия диалог. Тук инсталиращият софтуер извършва автоматично конфигурацията на някои допълнителни компоненти. След като процеса приключи ще видим и финалния екран от инсталацията. Избираме Exit, с което инсталацията на ASM приключва успешно. Стартиране на ASM Тъй като ASM няма да се стартира автоматично при рестартиране на системата, трябва да знаем как можем да я пускаме ръчно. След като Enterprise Linux зареди, влизаме в терминална конзола и задаваме променливите от обкръжението, които посочват директорията с инсталацията на ASM и SID-а на базата данни (който по подразбиране е +ASM). $ export ORACLE_HOME=/u01/app/oracle/product/10.2.0/db_asm $ export ORACLE_SID=+ASM $ Сега трябва първо да стартираме listener процеса, който ще обслужва клиентските заявки за свърване: $ cd $ORACLE_HOME/bin $ ./lsnrctl start LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 12-JAN-2009 14:29:12 Copyright (c) 1991, 2005, Oracle. All rights reserved. Starting /u01/app/oracle/product/10.2.0/db_asm/bin/tnslsnr: please wait... TNSLSNR for Linux: Version 10.2.0.1.0 - Production System parameter file is /u01/app/oracle/product/10.2.0/db_asm/network/admin/listener.ora Log messages written to /u01/app/oracle/product/10.2.0/db_asm/network/log/listener.log Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1))) Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=el5)(PORT=1521))) Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1))) STATUS of the LISTENER ------------------------ Alias LISTENER Version TNSLSNR for Linux: Version 10.2.0.1.0 - Production Start Date 12-JAN-2009 14:29:14 Uptime 0 days 0 hr. 0 min. 0 sec Trace Level off Security ON: Local OS Authentication SNMP OFF Listener Parameter File /u01/app/oracle/product/10.2.0/db_asm/network/admin/listener.ora Listener Log File /u01/app/oracle/product/10.2.0/db_asm/network/log/listener.log Listening Endpoints Summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1))) (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=el5)(PORT=1521))) Services Summary... Service "PLSExtProc" has 1 instance(s). Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service... The command completed successfully След успешното му стартиране се свързваме към базата данни чрез sqlplus и стартираме самата инстанция: $ ./sqlplus / as sysdba SQL*Plus: Release 10.2.0.1.0 - Production on Mon Jan 12 14:32:40 2009 Copyright (c) 1982, 2005, Oracle. All rights reserved. Connected to an idle instance. SQL> startup ASM instance started Total System Global Area 83886080 bytes Fixed Size 1217836 bytes Variable Size 57502420 bytes ASM Cache 25165824 bytes ASM diskgroups mounted SQL> exit $ След като имаме работеща ASM система можем да преминем и към финалната част – инсталиране на тестова база данни, която използва ASM. |


Коментари
Значи инсталирам си, всичко върви по твоите описания, имам си :
# /etc/init.d/oracleasm listdisks
VOL1
VOL2
VOL3
#
Но когато стигам до Configure Automatic Storage Management в Candidate disks не се появява нищо. Пробвах и направо с row disk ( EL 5) и в Candidate disks пак не се появявя нищо. Единствената разлика от твоето ръководство е че се опитвам да слагам Oracle 11 a ne 10. Някаква идея?
# /etc/init.d/oracleasm querydisk /dev/sd*
Би трябвало за всеки един да ти каже нещо от вида на
Checking if device "/dev/sd*" is an Oracle ASM disk [ OK ]
Също така хвърли едно око на правата с ls -l /dev/oracleasm/disks. Виж дали всичките са собственост на oracle:oinstall с права за четене и запис за собственика и групата. Друго не ми хрумва на прима виста.