The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Установка Oracle 10g Express Edition на FreeBSD 5.4-RELEASE (oracle freebsd install)


<< Предыдущая ИНДЕКС Правка src / Печать Следующая >>
Ключевые слова: oracle, freebsd, install,  (найти похожие документы)
From: Дмитрий Ганенко <dima@apk-inform.com.> Newsgroups: email Date: Mon, 23 Jun 2006 14:31:37 +0000 (UTC) Subject: Установка Oracle 10g Express Edition на FreeBSD 5.4-RELEASE Установка Oracle 10g Express Edition на FreeBSD 5.4-RELEASE Пролог Невозможно сдержать слезу умиления, читая пресс-релиз корпорации Oracle: "REDWOOD SHORES, штат Калифорния, Москва, 10 ноября 2005 г. - Корпорация Oracle объявила о выпуске Oracle Database 10g Express Edition (Oracle Database XE), бесплатной версии всемирно известной СУБД для разработчиков. Бета-версию Oracle Database XE можно загрузить с Web-сайта корпорации. Новая редакция СУБД Oracle Database 10g предоставляет возможность разработчикам ПО, администраторам баз данных и всем, кто впервые использует технологии Oracle, получить бесплатную базовую версию СУБД, позволяющую начать разработку и развертывание собственных приложений. Кроме того, эта версия предлагается бесплатно независимым разработчикам программного обеспечения и поставщикам оборудования для свободной дистрибуции или встраивания в собственные приложения. "Oracle Database XE предоставляет разработчикам, администраторам БД, независимым поставщикам ПО и студентам возможность бесплатно изучать, а также создавать и развертывать собственные разработки на базе самой передовой СУБД, - говорит Томас Кайт (Thomas Kyte), вице-президент Oracle. - Никто еще не предлагал подобного - теперь каждый имеет возможность начать свою работу с самым лучшим решением на рынке". Вот и самый передовой Oracle стал ближе к простому народу. Но ближе, как всегда, к пользователям Windows и Linux. Все лучшее - детям! А мы чем хуже? Ну что ж, студенты, разработчики и администраторы, приступим? 1. Выступаем в роли kernel hackers Прежде всего, нужно немножко пропатчить исходники ядра. Несколько дней пытаясь запустить oracle, используя поначалу ktrace - kdump, а потом догадавшись заглянуть в порты и с радостью обнаружив там linux_kdump, используя последний, ковыряясь в исходниках ядра, часто почесывая репу, при всем при этом иногда произнося негромкие ругательства в адрес программистов корпорации Oracle, разработчиков FreeBSD, Линуса Торвальдса, Ларри Эллисона ну и само-собой Билла Гейтса (хотя он-то тут причем?), видя в страшных снах как подросткового вида Демоны с вилами дерутся с Пингвинами в красных чепчиках и ненадолго примиряясь, идут бить Окна по всей Силиконовой долине, удалось выяснить, что таки да - ядро надо подрихтовать. Первый патч исправляет ошибку в эмуляторе Linux в функции linux_times Файл patch1 --- compat/linux/linux_misc.c.orig Fri Apr 1 01:17:42 2005 +++ compat/linux/linux_misc.c Wed Jun 21 11:14:05 2006 @@ -711,8 +711,9 @@ linux_times(struct thread *td, struct li tms.tms_cutime = CONVTCK(td->td_proc->p_stats->p_cru.ru_utime); tms.tms_cstime = CONVTCK(td->td_proc->p_stats->p_cru.ru_stime); - if ((error = copyout(&tms, args->buf, sizeof(tms)))) - return error; + if (args->buf != NULL) + if ((error = copyout(&tms, args->buf, sizeof(tms)))) + return error; microuptime(&tv); td->td_retval[0] = (int)CONVTCK(tv); Второй патч для linprocfs. Не спрашивайте меня, почему нужно именно так, определено это было опытным путем и путем подсматривания в SuSE Linux 9.2 (а как же оно у них работает-то?). Файл patch2 --- compat/linprocfs/linprocfs.c.orig Fri Apr 1 01:27:16 2005 +++ compat/linprocfs/linprocfs.c Wed Jun 21 11:14:10 2006 @@ -515,7 +515,7 @@ linprocfs_doprocstat(PFS_FILL_ARGS) sbuf_printf(sb, "%d", p->p_pid); #define PS_ADD(name, fmt, arg) sbuf_printf(sb, " " fmt, arg) PS_ADD("comm", "(%s)", p->p_comm); - PS_ADD("statr", "%c", '0'); /* XXX */ + PS_ADD("statr", "%c", 'S'); /* XXX */ PS_ADD("ppid", "%d", p->p_pptr ? p->p_pptr->p_pid : 0); PS_ADD("pgrp", "%d", p->p_pgid); PS_ADD("session", "%d", p->p_session->s_sid); @@ -535,7 +535,7 @@ linprocfs_doprocstat(PFS_FILL_ARGS) PS_ADD("priority", "%d", 0); /* XXX */ PS_ADD("timeout", "%u", 0); /* XXX */ PS_ADD("itrealvalue", "%u", 0); /* XXX */ - PS_ADD("starttime", "%d", 0); /* XXX */ + PS_ADD("starttime", "%d", 1); /* XXX */ PS_ADD("vsize", "%ju", (uintmax_t)kp.ki_size); PS_ADD("rss", "%ju", P2K((uintmax_t)kp.ki_rssize)); PS_ADD("rlim", "%u", 0); /* XXX */ Третий патч исправляет bug (а может быть и фичу) в коде pseudofs (нужен для linprocfs). Дело в том, что если смонтировать linprocfs и выполнить такую программку, то функция read прочитает не 4, как ее просили, а на один меньше, то есть, как нетрудно подсчитать, 3 байта: Файл test.c #include <sys/types.h> #include <sys/uio.h> #include <unistd.h> #include <fcntl.h> main () { int fd, count; char buf[10]; fd = open("/compat/linux/proc/self/cmdline", O_RDONLY); count = read(fd, buf, 4); buf[4] = '\0'; printf("count = %d, buf = %s\n", count, buf); } Не знаю, насколько корректна и в том ли месте кода внесена третья правка. Это вопрос к настоящим kernel hackers. Файл patch3 --- fs/pseudofs/pseudofs_vnops.c.orig Mon Sep 6 22:38:01 2004 +++ fs/pseudofs/pseudofs_vnops.c Wed Jun 21 11:14:14 2006 @@ -530,7 +530,7 @@ pfs_read(struct vop_read_args *va) PRELE(proc); PFS_RETURN (EIO); } - sb = sbuf_new(sb, NULL, buflen, 0); + sb = sbuf_new(sb, NULL, buflen+1, 0); if (sb == NULL) { if (proc != NULL) PRELE(proc); Правим наше ядро: cp patch1 patch2 patch3 /usr/src/sys patch < patch1 patch < patch2 patch < patch3 Ну и само-собой, как это всегда делалось для запуска Oracle не только на FreeBSD, но и на самом Linux, добавляем в конфиг ядра следующее: options COMPAT_LINUX # это как хотите, можете грузить модуль options SEMMAP=128 options SEMMNI=128 options SEMMNS=32000 options SEMOPM=100 options SEMMSL=250 options SHMMAXPGS=262144 options SHMMNI=4096 options SHMSEG=4096 options MAXDSIZ="(1024*1024*1024)" # насчет этого и того, что ниже, не уверен options MAXSSIZ="(1024*1024*1024)" # нужно-ли особо? options DFLDSIZ="(1024*1024*1024)" Собираем, устанавливаем, перегружаемся... и идем дальше. 2. Устанавливаем правильный linux_base Хотя в руководстве по установке Oracle10g Express Edition и написано, что версия glibc должна быть >=2.3.2, как-то наивно верить всему тому, что пишут. Работать будет с версией >=2.3.3. Во всяком случае у меня не заработало, при запуске бинарников что-то говорило о relocation error и упоминало какие-то symbols GLIBC_2.3.3, или что-то в этом роде. Поэтому вместо linux_base-8 нужно установить linux_base-fc4, к тому же он теперь linux_base по умолчанию в FreeBSD. Если лень искать fc4, можно поставить имеющийся в портах 5.4-RELEASE linux_base-suse-9.2 cd /usr/ports/emulators/linux_base-fc4 make make install Где-нибудь находим libaio-0.3.104-2.i386.rpm для FC4 и устанавливаем с помощью rpm rpm --root=/compat/linux --ignoreos --ignorearch --nodeps -ivh libaio-0.3.104-2.i386.rpm Также необходимо смонтировать linux procfs echo "linproc /compat/linux/proc linprocfs rw 0 0" >> /etc/fstab mount /compat/linux/proc 3. Устанавливаем Oracle10g Express Edition Берем с otn.oracle.com дистрибутив Oracle XE для Linux x86 (oracle-xe-univ-10.2.0.1-1.0.i386.rpm). Можете, конечно, стянуть еще и дистрибутив под Win32, но все выше и ниже написанное к нему никак относиться не будет. Устанавливаем с помощью rpm: rpm --root=/compat/linux --ignoreos --ignorearch --noscripts --nodeps -ivh oracle-xe-univ-10.2.0.1-1.0.i386.rpm Устанавливается он в /compat/linux/usr/lib/oracle, но работать, скорее всего, не будет. Нужно перенести его в /usr/lib/oracle и никак по-другому. Собран он с этим путем, в скриптах везде этот светлый путь прописан, так что приходится соглашаться: mv /compat/linux/usr/lib/oracle /usr/lib Запускаем следующий скрипт, отвечаем на пару-тройку вопросов и идем курить (кто не курит, можно чаю попить или кофе). Курить надо быстро, чаем чуть ли не захлебываться, так как уже через пару минут у вас на FreeBSD будет стоять и работать Oracle10g Express Edition, который вы можете использовать каким угодно образом, и при этом совершенно бесплатно, под любимой вами операционной системой. Файл install.sh #!/bin/sh if [ $(id -u) != "0" ] then echo "You must be root to run the configure script. Login as root and then run the configure script." exit 1 fi ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server ORACLE_OWNER=oracle ORACLE_SID=XE LSNR=$ORACLE_HOME/bin/lsnrctl SQLPLUS=$ORACLE_HOME/bin/sqlplus export ORACLE_HOME export ORACLE_SID export PATH=$ORACLE_HOME/bin:$PATH export LC_ALL=C if `grep -q ^dba: /etc/group` then echo "" else pw groupadd dba fi id oracle > /dev/null 2>&1 status=$? if test $status -eq 0 then groups oracle | grep dba > /dev/null status=$? if test $status != 0 then pw usermod -G dba oracle fi else pw useradd oracle -g dba -G dba -d /usr/lib/oracle/xe -s /compat/linux/bin/bash fi chown -R oracle:dba /usr/lib/oracle/xe /compat/linux/sbin/ldconfig >/dev/null chown -R oracle:dba /usr/lib/oracle/xe chmod 755 /compat/linux/etc/init.d/oracle-xe sgamin=146800640 pgamin=16777216 sgamax=805306368 pgamax=268435456 TM=`cat /compat/linux/proc/meminfo | grep '^MemTotal' | awk '{print $2}'` TM=`echo $TM / 1024 | bc` TM=`echo 0.40 \* $TM | bc | sed "s/\..*//"` TMSP=`echo $TM-40 | bc` sga_target=`echo 0.75 \* $TMSP | bc` pga_target=`echo 0.25 \* $TMSP | bc ` sga=`echo $sga_target \* 1048576 | bc | sed "s/\..*//"` pga=`echo $pga_target \* 1048576 | bc | sed "s/\..*//"` check=`echo $sga \< $sgamin | bc` if test $check != 0 then sga=$sgamin fi check=`echo $pga \< $pgamin | bc` if test $check != 0 then pga=$pgamin fi if test `echo $sga + $pga \> $sgamax + $pgamax | bc` then check=`echo $sga \> $sgamax | bc` if test $check != 0 then sga=$sgamax fi check=`echo $pga \> $pgamax | bc` if test $check != 0 then pga=$pgamax fi fi sed -i "" "s/%sga_target%/$sga/g" $ORACLE_HOME/config/scripts/init.ora sed -i "" "s/%pga_aggregate_target%/$pga/g" $ORACLE_HOME/config/scripts/init.ora sed -i "" "s/%sga_target%/$sga/g" $ORACLE_HOME/config/scripts/initXETemp.ora sed -i "" "s/%pga_aggregate_target%/$pga/g" $ORACLE_HOME/config/scripts/initXETemp.ora chmod 6751 $ORACLE_HOME/bin/oracle chmod 755 $ORACLE_HOME/bin/sqlplus rm -fr $ORACLE_HOME/rdbms/admin/patch if [ ! -d /var/tmp/.oracle ] then mkdir -p /var/tmp/.oracle; fi chmod 01777 /var/tmp/.oracle chown root /var/tmp/.oracle if [ ! -d /tmp/.oracle ] then mkdir -p /tmp/.oracle; fi chmod 01777 /tmp/.oracle chown root /tmp/.oracle # configure_perform() # # Instantantiate listener.ora,tnsnames.ora,and create the database, # sets the password,start the listener,and adds database to inittab # if necessary configure_perform() { sed -i "" "s/%hostname%/`hostname`/g" $ORACLE_HOME/network/admin/listener.ora sed -i "" "s/%port%/$LISTENER_PORT/g" $ORACLE_HOME/network/admin/listener.ora chown oracle:dba $ORACLE_HOME/network/admin/listener.ora sed -i "" "s/%hostname%/`hostname`/g" $ORACLE_HOME/network/admin/tnsnames.ora sed -i "" "s/%port%/$LISTENER_PORT/g" $ORACLE_HOME/network/admin/tnsnames.ora chown oracle:dba $ORACLE_HOME/network/admin/tnsnames.ora sed -i "" "s/%httpport%/$HTTP_PORT/g" $ORACLE_HOME/config/scripts/postDBCreation.sql chown oracle:dba $ORACLE_HOME/config/scripts/postDBCreation.sql if test $LISTENER_PORT -ne 1521 then if [ -f /tmp/local_listener ] then cat >/tmp/local_listener$$ <<EOF ########################################### # Registration of instance with listsner ########################################### local_listener="(ADDRESS = (PROTOCOL=TCP) (HOST=%hostname%) (PORT=%port%))" EOF chmod 664 /tmp/local_listener$$ cat /tmp/local_listener$$ >> $ORACLE_HOME/config/scripts/init.ora else cat >/tmp/local_listener <<EOF ########################################### # Registration of instance with listsner ########################################### local_listener="(ADDRESS = (PROTOCOL=TCP) (HOST=%hostname%) (PORT=%port%))" EOF chmod 664 /tmp/local_listener cat /tmp/local_listener >> $ORACLE_HOME/config/scripts/init.ora fi if test -f /tmp/local_listener then rm -fr /tmp/local_listener elif test -f /tmp/local_listener$$ then rm -fr /tmp/local_listener$$ fi sed -i "" "s/%port%/$LISTENER_PORT/g" $ORACLE_HOME/config/scripts/init.ora sed -i "" "s/%hostname%/`hostname`/g" $ORACLE_HOME/config/scripts/init.ora chown oracle:dba $ORACLE_HOME/config/scripts/init.ora fi sed -i "" "s/%httpport%/$HTTP_PORT/g" $ORACLE_HOME/config/scripts/DatabaseHomePage.sh chown oracle:dba $ORACLE_HOME/config/scripts/DatabaseHomePage.sh sed -i "" "s/%httpport%/$HTTP_PORT/g" $ORACLE_HOME/config/scripts/readonlinehelp.sh chown oracle:dba $ORACLE_HOME/config/scripts/readonlinehelp.sh if [ -f $ORACLE_HOME/bin/tnslsnr ] then echo -n "Starting Oracle Net Listener..." su -s $ORACLE_OWNER -c "$LSNR start" > /dev/null 2>&1 echo "Done" fi echo -n "Configuring Database..." su -s $ORACLE_OWNER -c "$ORACLE_HOME/config/scripts/XE.sh" > /dev/null 2>&1 err=`grep "ORA-44410" $ORACLE_HOME/config/log/*.log` if test "$err" != "" then echo "Database Configuration failed. Look into $ORACLE_HOME/config/log for details" exit 1 fi echo alter user sys identified by \"$ORACLE_PASSWORD\"\; | su -s $ORACLE_OWNER -c "$SQLPLUS -s / as sysdba" > /dev/null 2>&1 echo alter user system identified by \"$ORACLE_PASSWORD\"\; | su -s $ORACLE_OWNER -c "$SQLPLUS -s / as sysdba" > /dev/null 2>&1 echo "Done" chmod -R 640 /usr/lib/oracle/xe/oradata/XE chmod 750 /usr/lib/oracle/xe/oradata/XE # rm -fr $ORACLE_HOME/config/seeddb if [ -f /etc/oratab ] then echo "XE:$ORACLE_HOME:N" >> /etc/oratab else echo "XE:$ORACLE_HOME:N" >> /etc/oratab chown oracle:dba /etc/oratab chmod 644 /etc/oratab fi echo -n "Starting Oracle Database 10g Express Edition Instance..." pmon=`ps -U $ORACLE_OWNER | egrep pmon_$ORACLE_SID'\>' | grep -v grep` if [ "$pmon" = "" ]; then su -s $ORACLE_OWNER -c "$SQLPLUS -s /nolog @$ORACLE_HOME/config/scripts/startdb.sql" > /dev/null 2>&1 fi echo "Done" echo "Installation Completed Successfully." return 0 } configure_ask() { cat <<EOF Oracle Database 10g Express Edition Configuration ------------------------------------------------- This will configure on-boot properties of Oracle Database 10g Express Edition. The following questions will determine whether the database should be starting upon system boot, the ports it will use, and the passwords that will be used for database accounts. Press <Enter> to accept the defaults. Ctrl-C will abort. EOF #get the http port value while : do while [ 1 ] do echo -n Specify the HTTP port that will be used for Oracle Application Express [8080]: read LINE if [ -z $LINE ] then LINE=8080 fi port=`netstat -an -p tcp | grep .$LINE | awk '{print $4}' | cut -d'.' -f2` if [ "$port" = "$LINE" ] then echo Port $port appears to be in use by another application.\ Please specify a different port. else break; fi done case "$LINE" in "") break ;; *[^0-9]*) echo "Invalid http port: $LINE" ;; *) HTTP_PORT=$LINE break ;; esac done #get the listener port value while : do echo while [ 1 ] do echo -n Specify a port that will be used for the database listener [1521]: read LINE if [ -z $LINE ] then LINE=1521 fi echo port=`netstat -an -p tcp | grep .$LINE | awk '{print $4}' | cut -d'.' -f2` if [ "$port" = "$LINE" ] then echo Port $port appears to be in use by another application.\ Please specify a different port. else break; fi done case "$LINE" in "") break ;; *[^0-9]*) echo "Invalid port: $LINE" >&2 ;; *) if [ "$HTTP_PORT" != "$LINE" ] then LISTENER_PORT=$LINE break else echo Database listener cannot be configured on the same port as Oracle Application Express. fi ;; esac done #get the database password while : do echo -n "Specify a password to be used for database accounts. Note that the same password will be used for SYS and SYSTEM. Oracle recommends the use of different passwords for each database account. This can be done after initial configuration:" while [ 1 ] do stty -echo > /dev/null 2>&1 temp=`echo $IFS` export IFS="\n" while [ 1 ] do read LINE while [ -z "$LINE" ] do echo echo -n "Password can't be null. Enter password:" read LINE done # result=`expr index "$LINE" [\'\"]` # if [ $result != 0 ]; # then # echo # echo -n "The password you entered contains invalid characters. Enter password:" # else break # fi done echo echo -n "Confirm the password:" read LINE1 echo if [ "$LINE" != "$LINE1" ]; then echo echo -n "Passwords do not match. Enter the password:" else break fi done stty echo > /dev/null 2>&1 ORACLE_PASSWORD=$LINE export IFS=$temp break; done } configure_ask configure_perform После того, как мы насладимся величием только-что совершенного, можно подумать над тем, как мы будем все это дело стартовать и при необходимости тушить: Файл /usr/local/etc/rc.d/oraclexe.sh #!/bin/sh ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server ORACLE_OWNER=oracle ORACLE_SID=XE SQLPLUS=$ORACLE_HOME/bin/sqlplus LSNR=$ORACLE_HOME/bin/lsnrctl export ORACLE_HOME export ORACLE_SID export PATH=$ORACLE_HOME/bin:$PATH export LD_LIBRARY_PATH=$ORACLE_HOME/lib case "$1" in start) echo -n "Starting Oracle Database 10g Express Edition Instance..." pmon=`ps -U $ORACLE_OWNER | egrep pmon_$ORACLE_SID'\>' | grep -v grep` if [ "$pmon" = "" ]; then su -s $ORACLE_OWNER -c "$LSNR start" > /dev/null 2>&1 su -s $ORACLE_OWNER -c "$SQLPLUS -s /nolog @$ORACLE_HOME/config/scripts/startdb.sql" > /dev/null 2>&1 fi echo "Done" ;; stop) echo -n "Stopping Oracle Database 10g Express Edition Instance..." pmon=`ps -U $ORACLE_OWNER | egrep pmon_$ORACLE_SID'\>' | grep -v grep` if [ "$pmon" != "" ]; then su -s $ORACLE_OWNER -c "$SQLPLUS -s /nolog @$ORACLE_HOME/config/scripts/stopdb.sql" > /dev/null 2>&1 fi echo "Done" ;; *) echo "Usage: `basename $0` {start|stop}" ;; esac exit 0 4. Упоминавшиеся люди и вещи ---------------------------- Kernel hackers - люди, пишущие и копающиеся в ядрах операционных систем. Представляются мне бородатыми дядьками в очках с толстыми линзами, колдующими у мониторов над тем, чтобы ядро вашей любимой операционной системы было круче чем ядро операционной системы вашего соседа. Иногда допускают ошибки, и тогда ваша любимая операционная система становится объектом атак hackers. Hackers - в принципе почти то же самое, что и kernel hackers, только цели разные. Демон-подросток с вилами - эмблема FreeBSD. Пингвин - эмблема Linux. Окна - перевод на русский язык английского слова "windows", а также названия всем известной операционной системы, почти всеми презираемой и почти всеми же используемой в повседневной жизни. Линус Торвальдс - человек, которому при жизни нужно памятник поставить (ну например такой: сидит он в кресле и гладит по голове стоящего рядом на полу пингвина). Уму непостижимо: как один человек смог написать такую штуку как Linux. Это-же очень и очень... Билл Гейтс - невысокого роста, мягкий человек в очках, потому, наверное, и назвавший свою корпорацию "Microsoft", производящую Окна. Сколотил огромное состояние на их продаже. Ларри Эллисон - глава корпорации "Oracle". С недавнего времени занялся благотворительностью и раздает забесплатно всем страждущим свою передовую RDBMS, хотя и в несколько урезанном и ограниченном виде. Может посоперничать с Биллом Гейтсом в размере кошелька. Эпилог Ну когда-же разработчики FreeBSD наконец задумаются: как же, наконец, сделать так, чтобы эмулятор Linux заработал лучше самого Linux? Хотя, конечно, я понимаю, что это не есть их приоритет... И когда-же, наконец, программисты Oracle перестанут издеваться над пользователями FreeBSD, а то установка каждой новой версии Oracle RDBMS превращается в черт знает что... С наилучшими пожеланиями Дмитрий Ганенко <dima@apk-inform.com.>

<< Предыдущая ИНДЕКС Правка src / Печать Следующая >>

Обсуждение [ Линейный режим | Показать все | RSS ]
  • 1.1, Dorlas (??), 18:35, 23/06/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Браво!
     
  • 1.2, Slayer605 (?), 19:13, 23/06/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    делать вам нечего, для этого есть Solaris/Linux/Windows
     
     
  • 2.4, Dmitry Ganenko (?), 23:32, 23/06/2006 [^] [^^] [^^^] [ответить]  
  • +/
    Может быть и нечего. Знаете, как у нас говорят на Украине: "Та колы е час та надхнення...". Перевод для братьев-россиян: да когда есть время и вдохновение... :)
    Если вы имеете в виду использование Standard или, не дай бог, Enterprise - полностью с вами согласен. А если есть Oracle на халяву, то отчего же не покувыркаться. :)
     

  • 1.3, Kirill_AG (??), 19:18, 23/06/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Странно, что понадобилось ядро патчить. Видать с экспрессом в оракле что-то намутили. На 5.4 release и 5.4 snap 11 ставил 10G (не экспресс правда) стандартным способом: заменой явы и никаких патчей.

    "И когда-же, наконец, программисты
    Oracle перестанут издеваться над пользователями FreeBSD, а то установка каждой
    новой версии Oracle RDBMS превращается в черт знает что..."
    В одном из случаев:
    1. freebsd станет коммерческой
    2. ms sql server начнёт "давить" oracle
    3. прилетят инопланетяне
    первые два не считаю реальными, в инопланетян не верю.
    Насчёт "чёрт знает чего" - установка оракла на версии линукса, не упомянутые на оракловом сайте, тоже не всегда "нажал и готово".

     
     
  • 2.12, NuN (??), 11:17, 29/08/2006 [^] [^^] [^^^] [ответить]  
  • +/
    Можно ли подробней рассказать об установке Oracle 10g Standart Edition ?
    Спасибо.
     

  • 1.5, икбля (?), 23:40, 23/06/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    похоже про инопланетян более реально чем первые пара пунктов, только при чём здесь провидец?
    имхо постгрес не хилее, а с безгиморной сетапно_управляемосто_переносимостью похлеще ора
     
  • 1.6, Samm (?), 08:01, 24/06/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Спасибо за отличную заметку. Кстати, может на патчи PR'ы завести? Если их прокоммитят, то можно будет в 6.x и порт сделать :)
     
     
  • 2.7, Skif (??), 10:47, 24/06/2006 [^] [^^] [^^^] [ответить]  
  • +/
    >Спасибо за отличную заметку. Кстати, может на патчи PR'ы завести? Если их
    >прокоммитят, то можно будет в 6.x и порт сделать :)

    Слова не мальчика, но мужа :)
    Действительно кинь либо коммитерам, либо в основную рассылку.
    Думаю народ на ура подхватит

     
     
  • 3.8, Dmitry Ganenko (?), 11:27, 24/06/2006 [^] [^^] [^^^] [ответить]  
  • +/
    В freebsd-emulation кинул. Вроде, насколько мне хватило знания английского, заведующий отделом линуксо-эмуляции поставил патчи к себе в TODO и обещал подумать над портом. :)
     
     
  • 4.10, don_oles (??), 00:23, 26/06/2006 [^] [^^] [^^^] [ответить]  
  • +/
    Молодец.
    Вот бы ещё линуховый Lotus Domino на фре поднять - больше для счастья и не нужно.
    Хотя неплохо бы и ораклу 9.2.0.4 уметь подымать.
     

  • 1.9, anonymous (??), 19:46, 24/06/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    и оно будет быстрее чем на linux/solaris?
     
  • 1.11, glyph (?), 09:48, 26/06/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А может ли кто-нибудь провести замеры производительности subj?
     
  • 1.13, Юрий (??), 14:28, 08/12/2006 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Проблема с rpm - игнорирует ключ --root что ли?
    #rpm --root=/compat/linux --ignoreos --ignorearch --nodeps -ivh libaio-0.3.104-2.i386.rpm
    ошибка: неудовлетворенные зависимости:
            /sbin/ldconfig   нужен для libaio-0.3.104-2
            /sbin/ldconfig   нужен для libaio-0.3.104-2

    Это усе есть в /compat/linux! А он чего то уперся рогом в FreeBSD-ый ldconfig

     
  • 1.14, VictorM (?), 20:53, 02/03/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Да и установка на Linux "Oracle RDBMS превращается в черт знает что..."

    >>И когда-же, наконец, программисты
    Oracle перестанут издеваться над пользователями FreeBSD, а то установка каждой
    новой версии Oracle RDBMS превращается в черт знает что...

     
  • 1.15, AT (??), 10:49, 18/04/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Огромное спасибо! Ваше руководство подходит также и для FreeBSD 6.2, с той разницей, что патчи лучше накладывать вручную, т.к. исходники ядра несколько отличаются от 5.4 :) Да, и патч номер 2, насколько я понял, в этом случае не требуется вовсе.
     
  • 1.16, Style (??), 12:20, 19/04/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    На FreeBSD 5.3, у меня не получается поставить почемуто :(
    Ядро пропатчил, персобрал, библиотеки поставил.
    Но скрипт install.sh не отрабатывает. подвисает
    на на выполнении xe.sh
    Хотел запустить listener вручную - ругается

    TNS-01189: The listener could not authenticate the user

    Может чего упустил? или особенности ядра 5.3.

    Может проще обновить ядро до более новой версии.

     
     
  • 2.17, Style (??), 14:32, 02/05/2007 [^] [^^] [^^^] [ответить]  
  • +/
    Все отлично.. Обновил ядро до версии 6.2. установил эмулятор fc4.
    Пересобрал. все заработало. ПАТЧИТЬ ядро на 6.2 не надо! :)
     

  • 1.18, Style (??), 14:33, 02/05/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Все отлично.. Обновил ядро до версии 6.2. установил эмулятор fc4.
    Пересобрал. все заработало. ПАТЧИТЬ ядро на 6.2 не надо! :)
     
  • 1.19, Lemon c (?), 16:54, 17/05/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Всё собрал, всё получилось, ядро правил только первый патч, спасибо - погла очень статья
     
  • 1.20, off (?), 14:49, 14/06/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    а 6.0 патчить нада?
     
  • 1.21, shved (?), 18:44, 29/08/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Спасибо!
    На FreeBSD 7.2-RELEASE все взлетело на ура, без патчей ядра, COMPAT_LINUX в семерке заменить на linux_enable="YES" в rc.conf, libaio ставится из портов /usr/ports/emulators/linux-libaio как и /usr/ports/emulators/linux_base-fc4, остальное все по списку, rc скрипт пришлось немного заточить под rcorder(8)
     
     
  • 2.22, shved (?), 23:16, 29/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    примерный rc скрипт для фрибсды 7 oracle profile ORACLE_HOME usr lib oracle x... текст свёрнут, показать
     

  • 1.23, Pattern174 (?), 14:12, 29/09/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Автор красавчик, красиво и легко написал то что нужно и по уму!
     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:




    Спонсоры:
    Слёрм
    Inferno Solutions
    Hosting by Ihor
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2019 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру