Oracle Silent Install: различия между версиями
Sirmax (обсуждение | вклад) |
Sirmax (обсуждение | вклад) |
||
(не показано 19 промежуточных версий этого же участника) | |||
Строка 1: | Строка 1: | ||
+ | [[Категория:Oracle]] |
||
− | =Неинтерактивная установка Oracle на Gentoo= |
||
+ | [[Категория:CentOS]] |
||
− | Задача: установить Оракл 11 на Gentoo. Почему Gentoo? Единственная доступная машина с достаточным кол-вом памяти уже работает под этой ОС. |
||
+ | =Неинтерактивная установка Oracle на CentOS= |
||
+ | Задача: установить Оракл 11. |
||
<BR> |
<BR> |
||
+ | ==Pre-install== |
||
− | Ставить буду руками, не из пакета что бы отследить все шаги. |
||
+ | Параметры sysctl: |
||
+ | <PRE> |
||
+ | kernel.shmall = 2097152000 |
||
+ | kernel.shmmax = 2147483648 |
||
+ | kernel.shmmni = 4096 |
||
+ | kernel.sem = 250 32000 100 128 |
||
+ | fs.file-max = 65536 |
||
+ | net.ipv4.ip_local_port_range = 1024 65000 |
||
+ | </PRE> |
||
+ | Кроме того создаю пользователя oracle и группу dba |
||
==Установка== |
==Установка== |
||
===Скачать архив=== |
===Скачать архив=== |
||
Строка 40: | Строка 52: | ||
COMPONENT_LANGUAGES={"en"} |
COMPONENT_LANGUAGES={"en"} |
||
</PRE> |
</PRE> |
||
+ | Обратить внимание - все пути указывать абсолютные. |
||
+ | |||
===Установка=== |
===Установка=== |
||
Запускаю установку: |
Запускаю установку: |
||
Строка 47: | Строка 61: | ||
Установка завершается без ошибок. |
Установка завершается без ошибок. |
||
+ | После установки не забыть выполнить от root скрипты (пути к ним указаны в логе) |
||
+ | ===что подправить после установки=== |
||
− | ===Создание инстанса базы данных== |
||
+ | * задать переменную окружения $ORACLE_SID |
||
+ | * задать переменную окружения $ORACLE_HOME |
||
+ | * создать файл $ORACLE_HOME/db_1/dbs/ini${ORACLE_SID}.ora (там же есть пример, я просто его скопировал) |
||
+ | * при попытке сделать startup получил ошибку |
||
+ | <PRE> |
||
+ | ORA-00371: not enough shared pool memory, should be at least 62198988 bytes |
||
+ | </PRE> |
||
+ | Править $ORACLE_HOME/db_1/dbs/ini${ORACLE_SID}.ora - shared_pool_size |
||
+ | |||
+ | ===Создание инстанса базы данных=== |
||
+ | Кое-что написано тут: http://download.oracle.com/docs/cd/B19306_01/server.102/b14231/create.htm# |
||
+ | <PRE> |
||
+ | sqlplus / as SYSDBA |
||
+ | </PRE> |
||
<PRE> |
<PRE> |
||
STARTUP NOMOUNT |
STARTUP NOMOUNT |
||
+ | </PRE> |
||
+ | CONTROLFILE REUSE - не уверен что нужно. У меня база не создалась с первого раза, потому добавил эту опцию. |
||
+ | <PRE> |
||
− | |||
CREATE DATABASE netrac |
CREATE DATABASE netrac |
||
− | CONTROLFILE REUSE |
+ | CONTROLFILE REUSE |
+ | USER SYS IDENTIFIED BY stargate |
||
− | LOGFILE |
||
+ | USER SYSTEM IDENTIFIED BY stargate |
||
− | GROUP 1 ('/home/oracle/oradata/netrac/redo01.log') SIZE 100M, |
||
− | GROUP |
+ | LOGFILE GROUP 1 ('/home/oracle/oradata/netrac/redo01.log') SIZE 100M, |
− | GROUP |
+ | GROUP 2 ('/home/oracle/oradata/netrac/redo02.log') SIZE 100M, |
+ | GROUP 3 ('/home/oracle/oradata/netrac/redo03.log') SIZE 100M |
||
− | MAXLOGFILES 5 |
||
+ | MAXLOGFILES 5 |
||
− | MAXLOGHISTORY 100 |
||
+ | MAXLOGMEMBERS 5 |
||
− | MAXDATAFILES 10 |
||
+ | MAXLOGHISTORY 1 |
||
− | MAXINSTANCES 2 |
||
+ | MAXDATAFILES 100 |
||
− | ARCHIVELOG |
||
+ | MAXINSTANCES 1 |
||
− | CHARACTER SET AL32UTF8 |
||
− | + | CHARACTER SET US7ASCII |
|
+ | NATIONAL CHARACTER SET AL16UTF16 |
||
− | DATAFILE '/home/oracle/oradata/netrac/system01.dbf' SIZE 325M REUSE |
||
+ | DATAFILE '/home/oracle/oradata/netrac/system01.dbf' SIZE 325M REUSE |
||
− | EXTENT MANAGEMENT LOCAL |
||
+ | EXTENT MANAGEMENT LOCAL |
||
− | SYSAUX DATAFILE '/home/oracle/oradata/netrac/sysaux01.dbf' SIZE 325M REUSE |
||
+ | SYSAUX DATAFILE '/home/oracle/oradata/netrac/sysaux01.dbf' SIZE 325M REUSE |
||
− | DEFAULT TEMPORARY TABLESPACE temp_ts |
||
− | + | DEFAULT TABLESPACE tbs_1 |
|
+ | DATAFILE '/home/oracle/oradata/netrac/tbs_1' |
||
− | SET TIME_ZONE = '+02:00'; |
||
+ | SIZE 1024M |
||
+ | DEFAULT TEMPORARY TABLESPACE tempts1 |
||
+ | TEMPFILE '/home/oracle/oradata/netrac/temp01.dbf' |
||
+ | SIZE 20M REUSE |
||
+ | UNDO TABLESPACE undotbs |
||
+ | DATAFILE '/home/oracle/oradata/netrac/undotbs01.dbf' |
||
+ | SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED; |
||
+ | </PRE> |
||
+ | |||
+ | |||
+ | <PRE> |
||
+ | Database created. |
||
+ | </PRE> |
||
+ | |||
+ | Затем (из sqlplus) |
||
+ | <PRE> |
||
+ | @/home/oracle/app/oracle/product/11.1.0/db_1/rdbms/admin/catalog.sql |
||
+ | @/home/oracle/app/oracle/product/11.1.0/db_1/rdbms/admin/catproc.sql |
||
+ | </PRE> |
||
+ | Результат: |
||
+ | <PRE> |
||
+ | 1 row created. |
||
+ | Commit complete. |
||
+ | PL/SQL procedure successfully completed. |
||
+ | TIMESTAMP |
||
+ | -------------------------------------------------------------------------------- |
||
+ | COMP_TIMESTAMP CATALOG 2011-07-21 23:28:46 |
||
+ | </PRE> |
||
+ | ==Конфигурационные файлы== |
||
+ | ===listener.ora=== |
||
+ | Закомментирована секция относящаяся ко второму инстансу. |
||
+ | <PRE> |
||
+ | LISTENER = |
||
+ | (DESCRIPTION_LIST = |
||
+ | (DESCRIPTION = |
||
+ | (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1522)) |
||
+ | (ADDRESS = (PROTOCOL = TCP)(HOST = centos-ora)(PORT = 1522)) |
||
+ | ) |
||
+ | ) |
||
+ | |||
+ | SID_LIST_LISTENER = |
||
+ | (SID_LIST = |
||
+ | (SID_DESC = |
||
+ | (SID_NAME = netrac) |
||
+ | ) |
||
+ | # (SID_DESC = |
||
+ | # (SID_NAME = netracora) |
||
+ | # ) |
||
+ | ) |
||
+ | </PRE> |
||
+ | ===tnsnames.ora === |
||
+ | <PRE> |
||
+ | netrac = |
||
+ | (DESCRIPTION = |
||
+ | (ADDRESS_LIST = |
||
+ | (ADDRESS = (PROTOCOL = TCP)(HOST = centos-ora )(PORT = 1522)) |
||
+ | ) |
||
+ | (CONNECT_DATA = |
||
+ | (SERVER = DEDICATED) |
||
+ | (SERVICE_NAME = netrac) |
||
+ | ) |
||
+ | ) |
||
</PRE> |
</PRE> |
Текущая версия на 15:53, 28 сентября 2012
Неинтерактивная установка Oracle на CentOS
Задача: установить Оракл 11.
Pre-install
Параметры sysctl:
kernel.shmall = 2097152000 kernel.shmmax = 2147483648 kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 fs.file-max = 65536 net.ipv4.ip_local_port_range = 1024 65000
Кроме того создаю пользователя oracle и группу dba
Установка
Скачать архив
Скачиваю отсюда: http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html файл (в моем случае) linux.x64_11gR1_database_1013.zip, распаковываю, получаю папку /database
Подготовить responseFile
Я использовал следующий response file, слегка подправив пример из дистрибутива:
RESPONSEFILE_VERSION=2.2.1.0.0 UNIX_GROUP_NAME=dba FROM_LOCATION="/home/oracle/install/database/stage/products.xml" NEXT_SESSION_RESPONSE=false ORACLE_BASE="/home/oracle/app/oracle" ORACLE_HOME="/home/oracle/app/oracle/product/11.1.0/db_1" ORACLE_HOME_NAME=OraDbHome11 TOPLEVEL_COMPONENT={"oracle.server","11.1.0.6.0"} DEINSTALL_LIST={"oracle.server","11.1.0.6.0"} SHOW_SPLASH_SCREEN=false SHOW_WELCOME_PAGE=false SHOW_NODE_SELECTION_PAGE=false SHOW_SUMMARY_PAGE=false SHOW_INSTALL_PROGRESS_PAGE=false SHOW_CONFIG_TOOL_PAGE=false SHOW_XML_PREREQ_PAGE=false SHOW_ROOTSH_CONFIRMATION=true SHOW_END_SESSION_PAGE=false SHOW_EXIT_CONFIRMATION=false NEXT_SESSION=false NEXT_SESSION_ON_FAIL=false SHOW_DEINSTALL_CONFIRMATION=false SHOW_DEINSTALL_PROGRESS=false RESTART_SYSTEM=<Value Unspecified> RESTART_REMOTE_SYSTEM=<Value Unspecified> REMOVE_HOMES=<Value Unspecified> ORACLE_HOSTNAME=<Value Unspecified> SHOW_END_OF_INSTALL_MSGS=false CLUSTER_NODES=<Value Unspecified> COMPONENT_LANGUAGES={"en"}
Обратить внимание - все пути указывать абсолютные.
Установка
Запускаю установку:
./runInstaller -silent -responsefile /home/oracle/install/database/oracle_install.rsp
Установка завершается без ошибок.
После установки не забыть выполнить от root скрипты (пути к ним указаны в логе)
что подправить после установки
- задать переменную окружения $ORACLE_SID
- задать переменную окружения $ORACLE_HOME
- создать файл $ORACLE_HOME/db_1/dbs/ini${ORACLE_SID}.ora (там же есть пример, я просто его скопировал)
- при попытке сделать startup получил ошибку
ORA-00371: not enough shared pool memory, should be at least 62198988 bytes
Править $ORACLE_HOME/db_1/dbs/ini${ORACLE_SID}.ora - shared_pool_size
Создание инстанса базы данных
Кое-что написано тут: http://download.oracle.com/docs/cd/B19306_01/server.102/b14231/create.htm#
sqlplus / as SYSDBA
STARTUP NOMOUNT
CONTROLFILE REUSE - не уверен что нужно. У меня база не создалась с первого раза, потому добавил эту опцию.
CREATE DATABASE netrac CONTROLFILE REUSE USER SYS IDENTIFIED BY stargate USER SYSTEM IDENTIFIED BY stargate LOGFILE GROUP 1 ('/home/oracle/oradata/netrac/redo01.log') SIZE 100M, GROUP 2 ('/home/oracle/oradata/netrac/redo02.log') SIZE 100M, GROUP 3 ('/home/oracle/oradata/netrac/redo03.log') SIZE 100M MAXLOGFILES 5 MAXLOGMEMBERS 5 MAXLOGHISTORY 1 MAXDATAFILES 100 MAXINSTANCES 1 CHARACTER SET US7ASCII NATIONAL CHARACTER SET AL16UTF16 DATAFILE '/home/oracle/oradata/netrac/system01.dbf' SIZE 325M REUSE EXTENT MANAGEMENT LOCAL SYSAUX DATAFILE '/home/oracle/oradata/netrac/sysaux01.dbf' SIZE 325M REUSE DEFAULT TABLESPACE tbs_1 DATAFILE '/home/oracle/oradata/netrac/tbs_1' SIZE 1024M DEFAULT TEMPORARY TABLESPACE tempts1 TEMPFILE '/home/oracle/oradata/netrac/temp01.dbf' SIZE 20M REUSE UNDO TABLESPACE undotbs DATAFILE '/home/oracle/oradata/netrac/undotbs01.dbf' SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;
Database created.
Затем (из sqlplus)
@/home/oracle/app/oracle/product/11.1.0/db_1/rdbms/admin/catalog.sql @/home/oracle/app/oracle/product/11.1.0/db_1/rdbms/admin/catproc.sql
Результат:
1 row created. Commit complete. PL/SQL procedure successfully completed. TIMESTAMP -------------------------------------------------------------------------------- COMP_TIMESTAMP CATALOG 2011-07-21 23:28:46
Конфигурационные файлы
listener.ora
Закомментирована секция относящаяся ко второму инстансу.
LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1522)) (ADDRESS = (PROTOCOL = TCP)(HOST = centos-ora)(PORT = 1522)) ) ) SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME = netrac) ) # (SID_DESC = # (SID_NAME = netracora) # ) )
tnsnames.ora
netrac = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = centos-ora )(PORT = 1522)) ) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = netrac) ) )