Как я могу установить Oracle 11g R2?
Сам заголовок более чем понятен. Мне просто нужен способ установить Oracle 11g R2 в последней версии Ubuntu, я использую 32-битную ОС и мне нужно знать, как установить версию x86. У меня также есть 64-битный рабочий стол, и мне нужно установить версию x86_64. Может кто-нибудь мне помочь?
3 ответа
Для Oracle 11g R2 есть некоторые дополнительные функции, которые должны быть установлены, поскольку они не предусмотрены по умолчанию. Но мы доберемся до них через секунду, и многие из них не являются полностью необходимыми, но они облегчат это. (Например, ssh!)
ПРИМЕЧАНИЕ. Все команды терминала могут быть скопированы и вставлены, однако для вставки в терминал требуется нажатие клавиш ctrl + shift + v, в любом месте вместо них можно использовать ctrl + v.
Теперь вот файлы, разделенные на две части и в формате.zip. Это для х86. Вы должны иметь возможность открывать их без проблем, а если нет, на сайте есть утилита распаковки. Загрузка утилиты unzip не загрузилась бы с моей стороны, поэтому альтернативой было бы открыть терминал, используя ctrl + alt + t, и ввести следующие команды.
sudo apt-get install unzip
Затем:
unzip {file}
Конечно, заменив {File} архивом.zip.
ТЕПЕРЬ вы можете следовать инструкциям по установке, указанным здесь, при установке версии x86 для ноутбука.
Теперь при использовании рабочего стола и ОС x86_64 вы можете найти установочные файлы здесь, используя тот же метод распаковки, что и выше. Честно говоря, у вас не должно быть проблем с Ubuntu по умолчанию, но опять же, Linux не всегда то, чем кажется, поэтому резервное копирование всегда хорошо.
Теперь для быстрого и простого руководства по установке, это x86.
Это же руководство по установке доступно для x86_64, которое можно найти здесь.
Процесс не слишком долгий, пока вы знаете свои текущие спецификации компьютера, многие инструкции в основном являются принудительной проверкой, соответствует ли ваша система требованиям x.
Наслаждайтесь!
Я прошел мимо вашей ошибки. Насколько я могу судить, ошибка заключалась в том, что он нажимал -lons вместо -leons. Я понятия не имею, что из них есть, но удаление -lons и добавление -leon, казалось, добились цели. То, что я в конечном итоге сделал, - это сборка частей с ошибками вручную. Вот что я сделал вручную, но вам придется изменить пути, чтобы они соответствовали вашим (я сделал это как root):
# cat sysliblist
-ldl -lm -lpthread -lnsl -lirc -lipgo -lsvml -lnnz11 -lclntsh -locrb11 -lasmclnt11 -leons
# cat ldflags
-lnbeq11 -lnhost11 -lnus11 -lnldap11 -lldapclnt11 -lnsslb11 -lntcp11 -lntcps11 -lnsslb11 -lntcp11 -lntns11
gcc -o tnslsnr -m64 -L/database/app/oracle/product/11.2.0/dbhome_1/network/lib/ -L/database/app/oracle/product/11.2.0/dbhome_1/lib/ -L/database/app/oracle/product/11.2.0/dbhome_1/lib/stubs/ /database/app/oracle/product/11.2.0/dbhome_1/network/lib/s0nsgl.o /database/app/oracle/product/11.2.0/dbhome_1/network/lib/snsglp.o -lclntsh `cat /database/app/oracle/product/11.2.0/dbhome_1/lib/ldflags` -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnro11 `cat /database/app/oracle/product/11.2.0/dbhome_1/lib/ldflags` -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnnz11 -lzt11 -lztkg11 -lztkg11 -lclient11 -lnnetd11 -lvsn11 -lcommon11 -lgeneric11 -lmm -lsnls11 -lnls11 -lcore11 -lsnls11 -lnls11 -lcore11 -lsnls11 -lnls11 -lxml11 -lcore11 -lunls11 -lsnls11 -lnls11 -lcore11 -lnls11 `cat /database/app/oracle/product/11.2.0/dbhome_1/lib/ldflags` -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnro11 `cat /database/app/oracle/product/11.2.0/dbhome_1/lib/ldflags` -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lclient11 -lnnetd11 -lvsn11 -lcommon11 -lgeneric11 -lsnls11 -lnls11 -lcore11 -lsnls11 -lnls11 -lcore11 -lsnls11 -lnls11 -lxml11 -lcore11 -lunls11 -lsnls11 -lnls11 -lcore11 -lnls11 -lclient11 -lnnetd11 -lvsn11 -lcommon11 -lgeneric11 -lsnls11 -lnls11 -lcore11 -lsnls11 -lnls11 -lcore11 -lsnls11 -lnls11 -lxml11 -lcore11 -lunls11 -lsnls11 -lnls11 -lcore11 -lnls11 `cat /database/app/oracle/product/11.2.0/dbhome_1/lib/sysliblist` -Wl,-rpath,/database/app/oracle/product/11.2.0/dbhome_1/lib,-rpath,/database/app/oracle/product/11.2.0/dbhome_1/network/lib/ -lm `cat /database/app/oracle/product/11.2.0/dbhome_1/lib/sysliblist` -ldl -lm -L/database/app/oracle/product/11.2.0/dbhome_1/lib -lnl11 -ln11 -lnlsnr11 -lnlsnrc11 -lnsgr11 -lnms -lncm11 -lnmsp -lpeer -lnro11 -ln11 -lnl11 -lnlsnr11 -lnlsnrc11 -lnms -lncm11 -lnmsp -ln11 -lm -leons
Как только это скомпилируется правильно, вы должны отредактировать make-файл, чтобы он не пытался перекомпилировать и нарушать то, что вы только что собрали. Сделайте так, чтобы network/lib/ins_net_server.mk выглядела так:
#tnslsnr: $(S0NSGL) $(SNSGLP) $(NSGLPNP)
# $(SILENT)$(ECHO) " - Linking $(TNSLSNR)"
# $(RMF) $@
# $(TNSLSNR_LINKLINE)
#itnslsnr: tnslsnr
itnslsnr:
Это просто избавит от части tnslsnr, но оставит все остальное.
Следующий фрагмент, который я получил, был связан с "оракулом". Я получил эту ошибку:
INFO: /database/app/oracle/product/11.2.0/dbhome_1/lib//libocrutl11.so: undefined reference to `lfifcp'
То же самое с этим. Я запустил это вручную:
gcc -o /database/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/oracle -m64 -L/database/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/ -L/database/app/oracle/product/11.2.0/dbhome_1/lib/ -L/database/app/oracle/product/11.2.0/dbhome_1/lib/stubs/ -Wl,-E /database/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/opimai.o /database/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/ssoraed.o /database/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/ttcsoi.o -Wl,--whole-archive -lperfsrv11 -Wl,--no-whole-archive /database/app/oracle/product/11.2.0/dbhome_1/lib/nautab.o /database/app/oracle/product/11.2.0/dbhome_1/lib/naeet.o /database/app/oracle/product/11.2.0/dbhome_1/lib/naect.o /database/app/oracle/product/11.2.0/dbhome_1/lib/naedhs.o /database/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/config.o -lclntsh -lserver11 -lodm11 -lcell11 -lnnet11 -lskgxp11 -lsnls11 -lnls11 -lcore11 -lsnls11 -lnls11 -lcore11 -lsnls11 -lnls11 -lxml11 -lcore11 -lunls11 -lsnls11 -lnls11 -lcore11 -lnls11 -lclient11 -lvsn11 -lcommon11 -lgeneric11 -lknlopt `if /usr/bin/ar tv /database/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/libknlopt.a | grep xsyeolap.o > /dev/null 2>&1 ; then echo "-loraolap11" ; fi` -lslax11 -lpls11 -lrt -lplp11 -lserver11 -lclient11 -lvsn11 -lcommon11 -lgeneric11 `if [ -f /database/app/oracle/product/11.2.0/dbhome_1/lib/libavserver11.a ] ; then echo "-lavserver11" ; else echo "-lavstub11"; fi` `if [ -f /database/app/oracle/product/11.2.0/dbhome_1/lib/libavclient11.a ] ; then echo "-lavclient11" ; fi` -lknlopt -lslax11 -lpls11 -lrt -lplp11 -ljavavm11 -lserver11 -lwwg `cat /database/app/oracle/product/11.2.0/dbhome_1/lib/ldflags` -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnro11 `cat /database/app/oracle/product/11.2.0/dbhome_1/lib/ldflags` -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnnz11 -lzt11 -lztkg11 -lmm -lsnls11 -lnls11 -lcore11 -lsnls11 -lnls11 -lcore11 -lsnls11 -lnls11 -lxml11 -lcore11 -lunls11 -lsnls11 -lnls11 -lcore11 -lnls11 -lztkg11 `cat /database/app/oracle/product/11.2.0/dbhome_1/lib/ldflags` -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnro11 `cat /database/app/oracle/product/11.2.0/dbhome_1/lib/ldflags` -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnnz11 -lzt11 -lztkg11 -lsnls11 -lnls11 -lcore11 -lsnls11 -lnls11 -lcore11 -lsnls11 -lnls11 -lxml11 -lcore11 -lunls11 -lsnls11 -lnls11 -lcore11 -lnls11 `if /usr/bin/ar tv /database/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/libknlopt.a | grep "kxmnsd.o" > /dev/null 2>&1 ; then echo " " ; else echo "-lordsdo11"; fi` -L/database/app/oracle/product/11.2.0/dbhome_1/ctx/lib/ -lctxc11 -lctx11 -lzx11 -lgx11 -lctx11 -lzx11 -lgx11 -lordimt11 -lclsra11 -ldbcfg11 -lhasgen11 -lskgxn2 -lnnz11 -lzt11 -lxml11 -locr11 -locrb11 -locrutl11 -lhasgen11 -lskgxn2 -lnnz11 -lzt11 -lxml11 -lasmclnt11 -lcommon11 -lcell11 -lskgxp11 -lgeneric11 -lcommon11 -lgeneric11 -loraz -llzopro -lorabz2 -lsnls11 -lnls11 -lcore11 -lsnls11 -lnls11 -lcore11 -lsnls11 -lnls11 -lxml11 -lcore11 -lunls11 -lsnls11 -lnls11 -lcore11 -lnls11 -lsnls11 -lunls11 -lsnls11 -lnls11 -lcore11 -lsnls11 -lnls11 -lcore11 -lsnls11 -lnls11 -lxml11 -lcore11 -lunls11 -lsnls11 -lnls11 -lcore11 -lnls11 -lasmclnt11 -laio `cat /database/app/oracle/product/11.2.0/dbhome_1/lib/sysliblist` -Wl,-rpath,/database/app/oracle/product/11.2.0/dbhome_1/lib -lm `cat /database/app/oracle/product/11.2.0/dbhome_1/lib/sysliblist` -ldl -lm -L/database/app/oracle/product/11.2.0/dbhome_1/lib
Затем вам нужно взломать rdbms/lib/ins_rdbms.mk, чтобы закомментировать строки 705 и 706:
# $(RMF) $@
# $(ORACLE_LINKLINE)
После этого установщик прошел весь путь до конца. Надеюсь это поможет.
Добавьте несколько дополнительных советов из Как установить Oracle 11g в Linux (не VM)
Установите Oracle Database XE (Express Edition) из репозитория APT с открытым исходным кодом.
Если вы не возражаете против использования версии 10g XE (достаточно хорошей для изучения), вы можете добавить репозиторий Oracle Open Source Software APT и использовать apt-get
установить его.
добавлять deb http://oss.oracle.com/debian unstable main non-free
например
echo "deb http://oss.oracle.com/debian unstable main non-free" | sudo tee /etc/apt/sources.list.d/virtualbox.list
а потом
добавить ключ и установить oracle-xe
wget http://oss.oracle.com/el4/RPM-GPG-KEY-oracle -O- | sudo apt-key add -
apt-get update && apt-get install oracle-xe
Запустите, остановите и настройте: /etc/init.d/oracle-xe {start|stop|configure}
См. Установка Oracle Database XE в Debian, Ubuntu и Kubuntu для получения дополнительной информации;-)
Бродячие базовые ящики
Oracle Linux {5,6} (который также бесплатен) значительно упрощает установку Oracle Database 11g, 12c, поскольку Oracle официально предоставляет предустановленные RPM-пакеты для установки всех программ deps и внесения необходимых изменений в систему.
Предварительно установить RPM пакеты
- Oracle Linux 5 =>
oracle-validated
- Oracle Linux 6 => 11 г
oracle-rdbms-server-11gR2-preinstall
12сoracle-rdbms-server-12cR1-preinstall
Если вы действительно хотите Oracle Database 11g, 12c Enterprise Edition, попробуйте vagrantboxes отсюда vagrantboxes