Настройките се записват във файла /etc/sysctl.conf. При мен необходимите промени бяха следните:
# tail -n 15 /etc/sysctl.conf
#kernel.shmmax = 4294967295
kernel.shmmax = 794820608
# Controls the maximum number of shared memory segments, in pages
#kernel.shmall = 268435456
kernel.shmall = 2097152
#Added for oracle 11g
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 262144
За да влязат в сила промените без рестарт се пуска следната команда:
# sysctl –p
Следват няколко настройки на shell, които засягат потребителя oracle. Трябва да се добавят следните редове към конфигурационните файлове:
# tail -n 5 /etc/security/limits.conf
oracle soft noproc 2047
oracle hard noproc 16384
orecle soft nofile 1024
oracle hard nofile 65536
# End of file
# tail -n 3 /etc/pam.d/login
#added for Oracle 11g
session required /lib/security/pam_limits.so
session required pam_limits.so
# tail -n 4 /etc/profile
if [ $USER = "oracle" ]; then
ulimit -u 16384 -n 65536
fi
# tail -n 2 /home/oracle/.bash_profile
umask 022
Интересното в 11g е, че според installation guide, преди да се стартира инсталацията трябва да се премахнат променливите ORACLE_SID, ORACLE_HOME и ORACLE_BASE от профила (ако има такива от по-рано). Добавянето им става по-късно, както съм описал във втората част на статията.
4. Последни стъпки преди
инсталацията
Остава да направим необходимите директории и
да разопаковаме архива. Аз инсталирах всичко на един диск,
в директория /u01. Това не е най-доброто решение, но всъщност за
най-доброто решение са необходими поне 20 диска. Всъщност, инсталирал съм и върху масив от 110 харда...
# mkdir -p /u01/app
# mkdir /u01/oradata
# mkdir /u01/recovery
# chown -R oracle:oinstall /u01
# chmod -R 775 /u01
След това, вече като потребител oracle, разархивираме и пускаме инсталацията:
$ unzip linux_11gR1_database.zip
$ cd database
$ ./runInstaller
Инсталатора е графичен. За да стартира трябва runInstaller да се пусне при стартиран X или да се пренасочи X към някой друг компютър, на който е стартирна X средата. Пренасочването може да стане с
$ export DISPLAY=192.168.12.21:0
Първия прозорец ни примамва да инсталираме всичко по подразбиране. За по-добър контрол над инсталацията избрах Advanced installation.
Следва избор на директория, в която стои inventory и група, в която са потребителите, имащи права да пишат в него. Inventory е мястото, в което се описва инсталирания Oracle софтуер. По принцип няма проблем на една машина да работят различни версии и различни софтуери на oracle, като единственото, което ги свързва, е информацията в inventory.
След това избираме типа на инсталацията - Enterprise, Standard или Custom. Какво ще изберем зависи от целта и лиценза, които имаме.
В следващия прозорец избираме директорията, в която инсталираме. Идеологията е следната:
- ORACLE_BASE е директорията, в която стои всичкия инсталиран oralce софтуер
- ORACLE_HOME е под-директория, на ORACLE_BASE и съдържа точно един софтуер.
Идеята е, че на един компютър може да имаме, примерно Oracle Database 10g, Oracle Database 11g, Oracle Grid Control Agent и всякакъв друг oracle софтуер, като всички съжителстват съвсем безпроблемно. Инсталирани са под един ORACLE_BASE, но в различни ORACLE_HOME.
Следва проверка дали са изпълнени всички предварителни изисквания - инсталирани пакети, версия на ОС и ядрото, налично пространство, настройки на ядрото и мрежата и т.н. Ако е изпълнено всичко според Installation guide, не би трябвало да има проблем. Ако тук всичко е ОК, има много голям шанс инсталацията да завърши съвсем успешно. Ако дадена проверка не премине успешно, потребителя може да кликне чек-бокса срещу нея и тя става "User verified". Това е предупреждение, че Oracle Installer не харесва нещо, но ще се опита да инсталира каквото може.
След това избираме дали инсталатора трябва да създаде празна БД, да конфигурира ASM или просто да инсталира софтуера. Аз предпочитам последното, за да има разделение между грешките - ако гръмне създаването на БД (пример), това да не повлияе на изхода от самата инсталация. Създаването и настройката на БД са описани в следващата част на статията.
На следващият екран избираме ролите на създадените от нас групи в операционната система.
Следва обобщение (sumary) на избраното от нас. Тук натискаме бутона "Install" и стискаме палци всичко да мине безпроблемно (1, 2). И наистина, всичко минава. Oracle твърдят, че са се постарали доста да отстранят всякакви възможни бъгчета. И макар да е невъзможно да се предвидят всички възможни конфигурации от хардуер, софтуер и потребителски изисквания, във всяка следваща версия инсталатора става все по-здрав.
След като инсталацията завърши, инсталатора ни приканва да стартираме два скрипта с потребител root. Първия е необходим само при първа инсталация на Oracle софтуер на машината и засяга създаването на Inventory. Втория е свързан конкретно с инсталирания в момента продукт. Стартирането им става по следния начин:
$ su -
Password:
# cd /u01/app/oraInventory/
# ./orainstRoot.sh
Changing permissions of /u01/app/oraInventory to 770.
Changing groupname of /u01/app/oraInventory to oinstall.
The execution of the script is complete
# cd /u01/app/oracle/product/11.1.0/db_1/
# ./root.sh
Running Oracle 11g root.sh script...
The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME= /u01/app/oracle/product/11.1.0/db_1
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.
Finished product-specific root actions.
Така стигаме до заветния екран, който ни казва, "честито, всичко мина ОК".
Следва създаване и конфигуриране на БД и настройки на мрежата. Тези неща са описани във втората част на статията. Моля не се притеснявайте да пишете въпроси и препоръки на мейла ми или като коментар към съответната статия в личния ми блог.
Явор Иванов |