Oracle Silent Install
Неинтерактивная установка Oracle на Gentoo
Задача: установить Оракл 11 на Gentoo. Почему Gentoo? Единственная доступная машина с достаточным кол-вом памяти уже работает под этой ОС.
Ставить буду руками, не из пакета что бы отследить все шаги.
Установка
Скачать архив
Скачиваю отсюда: 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
Установка завершается без ошибок.
что подправить после установки
- задать переменную окружения $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
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;
А так второй раз не работает. Проверить!
CREATE DATABASE netrac
CONTROLFILE REUSE
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
MAXLOGHISTORY 100
MAXDATAFILES 10
MAXINSTANCES 2
ARCHIVELOG
CHARACTER SET AL32UTF8
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 TEMPORARY TABLESPACE temp_ts
UNDO TABLESPACE undo_ts
SET TIME_ZONE = '+02:00';
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