to post messages and comments.

Завязочка: vedomosti.ru
Продолжение: postgresql.org

Оракл канеш свиньи и шлюшки, но я бы на месте постгри удержался от ответных действий: чо позориться, вступая с даунами в перепалку. А откатные говноеды пускай остаются в своём болоте, до них вообще нет дела.

Директора по безопасности Oracle заколебали покупатели, проверяющие их код на наличие уязвимостей.
Ишь чё придумали, самовольно проверять безопасность. По лицензии можно только верить на слово. Это вам не гнатик, где всё открыто.

select dbs.sid holding_sid, dbs.serial# holding_serial#, dbs.username holding_user,
(select count(sid) from v$session where blocking_session = dbs.sid) sessions_blocked,
dbs.sql_id holding_sql_id, dbs.wait_class holding_class, dbs.event holding_event, dbs.seconds_in_wait holding_secs,
dws.sid waiting_sid, dws.serial# waiting_serial#, dws.username waiting_user, dws.sql_id waiting_sql_id, dws.wait_class waiting_class, dws.event waiting_event, dws.seconds_in_wait waiting_secs
from v$session dbs, v$session dws
where dws.blocking_session = dbs.sid
order by dbs.sid, dws.seconds_in_wait desc
/

Написали простой HTTP Servlet и клиента к нему. Обеспечили передачу некоторых параметров на сервер. Нужно их куда-то сохранить. С бд на сервере я никогда не работал, не думаю что это сложно. Остановился на Oracle. Попробую работать с ней через JDBC. Пока только изучаю эту предметную область.

*Linux Все же знают что будет если создать директорию foo, заставить туда писать некое приложение, а потом смонтировать на эту директорию дисковый накопитель? А я вот два дня на продакшене с ораклом потратил в поисках пропавших гигабайт и последующей расчисткой этих авгиевых конюшен. Люблю дба за такие инстансы и прочих "узких специалистов".

Эту статью я писал для внутренней вики, но почему-то решил ей поделиться и с людьми вне компании. Так как у Джуйка размер сообщения ограничен 4Кб, статья по частям будет продолжаться в комментариях. Картинка для привлечения внимания.

Каждая IT-компания рано или поздно попадает в ловушку под названием Oracle Database при покупке каких-либо софтверных решений для задач развития спектра своих услуг и, сооветственно, бизнеса. И очень часто эффективный менеджмент не может позволить признаться себе в необходимости появления DBA в компании для быстрого "поднятия" базы после аварии. А аварии, бывает, случаются достаточно часто.

Рассмотрим защиту рисков файловой системы ext3/ext4 и базы данных Oracle, расположенной на ней, при использовании стандартных для корпоративных инсталляций Linux окружений из SAN-сети (Dual Fabric или более) и Device Mapper Multipathing со стороны операционной системы.

Несмотря на всю стабильность работы технологий Fibre Channel, случаются аварии по вине 3 силы, например, потеря электропитания свитчами в одной из фабрик, что, естественно, сказывается на количестве активных путей до диска внутри операционной системы. В целом, это достаточно штатная ситуация, но не в случае, когда на дисках работают базы данных Oracle. В нашем случае мы будем рассматривать инсталляцию на основе блейд-шасси HP c7000 с лезвиями HP ProLiant BL680c G7, конвергентными свитчами HP Virtual Connect FlexFabric 10/24 Enterprise Edition в шасси, Fibre Channel свитчами HP StorageWorks 8/24 SAN Switch (они же Brocade 300 SAN Switch) и SAN-СХД HP Storage P6300 EVA. Со стороны multipathd это всё выглядит как:

Если у кого вдруг ещё остались на сайтах неподписанные java-апплеты, а клиенты/сотрудники рыдают в трубку и не могут прописать в настройках явы исключение (оно там мягко говоря для "обычного" человека неявно прописывается), то вот вам батник для GPO/etc, слепленный на коленке из говна и палок:
@ECHO OFF
ver | findstr /i "5\.0\." > nul
IF %ERRORLEVEL% EQU 0 goto ver_XP
ver | findstr /i "5\.1\." > nul
IF %ERRORLEVEL% EQU 0 goto ver_XP
ver | findstr /i "5\.2\." > nul
IF %ERRORLEVEL% EQU 0 goto ver_XP
ver | findstr /i "6\.0\." > nul
IF %ERRORLEVEL% EQU 0 goto ver_Win7
ver | findstr /i "6\.1\." > nul
IF %ERRORLEVEL% EQU 0 goto ver_Win7
ver | findstr /i "6\.2\." > nul
IF %ERRORLEVEL% EQU 0 goto ver_Win7
ver | findstr /i "6\.3\." > nul
IF %ERRORLEVEL% EQU 0 goto ver_Win7
goto end

:ver_Win7
echo domain.tld >> "%USERPROFILE%\AppData\LocalLow\Sun\Java\Deployment\security\exception.sites"
goto end

:ver_XP
echo domain.tld >> "%APPDATA%\Sun\Java\Deployment\security\exception.sites"
goto end

:end

Чисто чтобы не забыть.
Задача: поставить в убунте оракл в lxc-контейнер.
Решение: сделать контейнер просто: sudo lxc-create -n oracle -t oracle.
Дальше качаем сам оракл и ставим внутри контейнера. При rpm -ivh oracle*.rpm получается, похоже, ubuntu-cпецифичная трабла:
error: permission denied on key 'kernel.*'
Т.е. оно пытается установить какие-то sysctl-параметры, а ему не разрешают. Проблема, оказывается, в apparmor. Решение:
1. sudo ln -s /etc/apparmor.d/usr.bin.lxc-start /etc/apparmor.d/disabled/
2. В конфиге контейнера дописать строчку lxc.aa_profile=unconfined.

Хозяйке на заметку. Если у вас есть коннекты из локальной сети к удаленному ораклу (там всякие sql навигаторы и dblink'и), то лучше сделайте ssh туннель из локальной сети до удаленно оракла и заверните все клиенты в этот туннель. Получается как ни странно стабльнее и быстрее.

MySQL Workbench — адская поебень, хочу переименовать в табличке поле: кнопка F2 в дереве конечно же не работает, нашел пункт меню alter schema..., там схема открылась гридом, в нем переименовал поле, нажал apply changes — оно пишет no changes detected. Пришлось руками писать alter table ... change column ... . Это говно кто-нибудь вообще запускал? А ведь ЭТО еще и за бабки продают.

А есть тут у нас спецы, сталкивавшиеся с работой из скриптов PHP через функции oci_* с БД Oracle? Есть несколько абсолютно тупых вопросов, связанных с тем, что я мало выходил за рамки SELECT-ов в этом плане.

Чтобы скачать OLEDB-компонент с сайта оракла, надо пройти нехилый такой квест по регистрации-подтверждению пользователя. В процессе даже пришлось восстанавливать пароль, потому что указанный при регистрации не проходил. Круто чо. Большая корпорация, крутые интерфейсы ;)

Удивляет меня это. Небольшая по весу программка SQL Tools (никакой Java!) по отзывчивости уделывает на все 200 родной оракловский SQL Developer, да и PL/SQL впридачу, к тому же она freeware, в отличие от последнего. Конечно автодополнений нет никаких, но блин, нахер они нужны, если из-за них программа может зависнуть минут на 5 ? Сначала я думал что это минималистичная по функционалу программка с одной только консолью для ввода запросов, но потом обнаружил длинную строку меню с изобилием пунктов и много панелек с кнопочками. Приятная программка. Разве что мониторить запросы не умеет, но может быть это я ещё не раскопал.

как достало на каждой машине качать Java'ские .tar.gz'шки при каждом апдейте и собирать из них deb'ки. жуец, если я буду собирать deb'ки 1 раз и класть в свой debian-реп, меня анально покарает Oracle? или все ок?

Использовать Oracle в компании без штатного DBA — всё равно что подарить человеку из прошлого Gillette Fusion Power. Вроде бы и бреет, а ощутить полный функционал не получается. Батарейки-то ещё не изобрели.

Oracle заявляет что выпустило самый быстрый процессор для midrange:
"Oracle’s new SPARC T5 midrange servers are based on the SPARC T5, the world’s fastest microprocessor."
oracle.com
ЗЫ при этом сравнисают в основном с системами на IBM Power 7 (процессор вышел в 2010 году).
И почемуто нет сравнения с Power 7+ который вышел в этом году.