29 апр. 2008 г.

"Поправка на ветер"

Трик с графическим ползунком, который использовался в постах здесь и здесь немного нужно подкорячить для новой версии SQLDeveloper'a (EA3), где он отказался воспринимать дробные числа. А именно нужно округлить или обрезать числа:
'SQLDEV:GAUGE:0:100:0:90:'||to_char(trunc(used))
Ну и немного изменился внешний вид:


Вообще, из обновок в EA3 сразу заметна новая закладка Files в дополнение к старым Connections и Reports. Т.е. навигация по скриптам на дисках стала реально удобней. Плюс ко всему видно, что есть поддержка CVS, и это радует, вот:

К нам едет Серж Танкян!

Забирал сегодня билет на Ника Кейва и увидел вывеску - 5 июня в Остраве выступает Серж Танкян со своим новым альбомом, о котором я уже писал. Эхъ, жаль что пропущу!

25 апр. 2008 г.

Карта табличного пространства в SQL Developer

Очень уж мне нравится карта табличного пространства, которую умеет делать Enterprise Manager. Я как-то больше не встречал инструментов с такой функциональностью. А жаль - очень удобно визуально посмотреть на сколько фрагментированы таблицы и сколько они пожирают пространства.
Для себя я реализовал похожую функциональность средствами SQLDeveloper'a в виде псевдографического отчета. К сожалению с лёту не вышло заставить его подгружать графику и показывать всплывающие подсказки на екстентах (хотя идеи как это сделать есть). Есть некоторые недочеты о которых я знаю: не отображаются header'ы и не помечаются свободные блоки. Это дело будущих версий. Возможно, где-то нехватило знаний, и отчет не будет универсальным (например, я исходил из минимального размера экстента в 8 блоков) - тут тоже надо будет поработать с документацией. Однако, начало положено.
Итак, первый отчет предоставляет информацию использованию табличных пространств. Child отчет снизу показывет сегменты выбранного пространства, отсортированные по убыванию выделенного им пространства:


Вторая закладка в этом отчете показывает общую карту экстентов:


При помощи фунуции drill-down можно перейти к более полезному отчету


Второй отчет показывает всё тот же список сегментов. Но теперь выделив интересующий сегмент можно внизу увидеть на карте его экстенты (помечены X):


Вот xml первого отчета, а вот второго.

Прошу не судить строго - дорабатывать пока абсолютно нет времени. Выложил только для того, чтобы добро не пропало.

Ubuntu 8.04

Вышла очередная stable версия убунты! Вот чешу репу - апгрейтиться чтоль...
Подробности здесь.

24 апр. 2008 г.

Митинг

Шел сегодня сутра на работу и встретил вот такое зрелище:








Демонстрировали работники культуры против дотаций на вступенки (входные билеты) для некоторых культурных заведений (театров и т.п.). Как я понял, мэрия выделила финансовые гранты, но не всем. И теперь билеты в одни театры будут дешевле чем в другие за счет этих субсидий. Ну и кому не достались деньги, те и протестовали против нечестной конкуренции :) А может и всё наоборот :) Если я ошибаюсь - поправьте.

Меня порадовал сам факт! Люди почувствовали несправедливость и высказали это публично. А как подумаешь про Родину.... чтоб там хотя бы так люди высказывали своё несогласие - мирным митингом перед рабочим четвергом. Эхъ...

21 апр. 2008 г.

Управление пользователями в SQLDeveloper

Неоднократно замечал, что некоторые считают, что в SQLDeveloper нельзя управлять пользователями и их привилегиям. На самом деле это не так!
Во-первых есть встренная форма для создания и редактирования пользователей, до которой можно добраться вызвав контекстное меню на узле дерева Other Users и выбрав Create user. Или в этой же ветке выбрать пользователя и в контестном меню нажать Edit user.
Хотя прямо скажу - я не любитель расставлять галочки. Но может быть кому-то так удобней. Во всяком случае из этой формы можно почерпнуть DDL скрипт на создание пользователя. Вот как это выглядит:


Во-вторых на закладке Reports среди среди прочего есть несколько отчетов по пользователям, хотя меня они тоже не особо впечатлили:


Ну и последнее, ради чего и затевался пост, это возможноть создавать собственные довольно продвинутые расширения для SQLDeveloper. Причем создавать можно и формы, наподобие той, которая упоминалась в первом пункте, и отчеты с дополнительной функциональностью, как например отчет по текущим сессиям с возможностью включения трассировки и kill session (пункт меню Tools -> Monitor Sessions)

Я для себя создал такой отчет по привилегиям пользователей, который включает в себя основной отчет - список пользователей и их аттрибуты и четыре подчиненных отчета:
1. Роли выбранного пользователя
2. Объектные привилегии
3. Системные привилегии
4. DDL скрипт на создание пользователя
Причем привилегии и роли отображаются как выданные напрямую непосредственно пользователю, так и полученные пользователем через другую роль.

В основном отчете добавлено 2 дополнительных пункта меню:
1. Clone user - для создания нового пользователя с точно таким же набором привилегий, как и выделенный пользователь.
2. Drop user - для удаления пользователя.
Скачать можно с OTN. Вот прямой линк на xml. Установка проста: сохранить xml у себя. На папке с отчетами в SQLDeveloper кликнуть на пункт контекстного меню Import, выбрать сохраненный файл и готово.
Вот сие творение:


18 апр. 2008 г.

Видео Тото

Немного прикольного видео с ТОтохой, сняли уже недели 2-3 как, но тока счас вот собрались выложить. смотреть как всегда со звуком!





ЗЫ
Оно вообще случайно здесь оказалось, но пускай будет! А предназначалось изначально для Аниного блога

В Прагу приезжает Nick Cave

24 мая в Прагу приезжает Nick Cave. Концерт в поддержку нового альбома "Dig, Lazarus, Dig!!!" состоится в T-Mobile Arena. Билеты можно заказать здесь.
Прошлый концерт полтора года назад я, к сожалению, пропустил. Надеюсь на этот схожу!
Присоединяемся!!!

17 апр. 2008 г.

Маленькие радости SQLDeveloper'a

Вот как можно приукрасить стандартный отчет об использовании табличных пространств:


Трюк весьма прост:
select tablespace,
'SQLDEV:GAUGE:0:100:0:90:'||to_char(used) usage,
allocated_mb,
used_mb,
free_mb,
used,
data_files from (
select nvl(b.tablespace_name,
nvl(a.tablespace_name,'UNKNOWN')) Tablespace,
kbytes_alloc Allocated_MB,
kbytes_alloc-nvl(kbytes_free,0) Used_MB,
nvl(kbytes_free,0) Free_MB,
round(((kbytes_alloc-nvl(kbytes_free,0))/kbytes_alloc)*100,2) Used,
data_files Data_Files
from ( select sum(bytes)/1024/1024 Kbytes_free,
max(bytes)/1024/1024 largest,
tablespace_name
from sys.dba_free_space
group by tablespace_name ) a,
( select sum(bytes)/1024/1024 Kbytes_alloc,
tablespace_name,
count(*) data_files
from sys.dba_data_files
group by tablespace_name )b
where a.tablespace_name (+) = b.tablespace_name
)
order by 1

15 апр. 2008 г.

George Winston

Вот, выкачал се альбом George Winston - Night Divides The Day.
Это The Doors сыгранное на фортепиано! Классно - почитателям doors слушать обязательно!
На ютубе, к сожалению, не нашел экзампл. Так что, кому не лень возиться с рапидой, качать здесь и здесь.
А вот для затравки разворот с диска:

10 апр. 2008 г.

SQL Developer

Опс! Буквально позавчера SQLDeveloper обновился до EA3. Качать здесь.
Я пока не спешу, потому что у меня неясности с работой - еще не знаю где буду работать в следующем месяце. Возможно опять прийдется переселяться, так что пока тут всё работает - трогать не буду :)
Замечу лишь, что из беглого просмотра New Features заинтересовали поддержка CVS и отчеты AWR.

7 апр. 2008 г.

Махина

В субботу приобрел себе махину. Заняло это времени целый день. Сам поиск начался уже давно. Я, как приверженец японских машин, выбирал из следующих вариантов:
1. Toyota Carina
2. Suzuki Baleno
3. Nissan Primera
В поисках подходящих экземпляров более-менее регулярно прочесывался инет. Судя по описанию, варианты неплохие были, но, как правило, где-то вне Праги. Кое-как насобиралось пять вариантов к осмотру: 2 тойоты, 2 ниссана и на закуску 1 сузуки.
Сузуки был оставлен на закуску, потому как без кондиционера.
Вобщем одна тайото была забраковано мной лично на первоначальном этапе просмотра - это был ужос.
Потом последовал ниссан универсал. Этот вариант заслуживает отдельного внимания, потому что приключилась с ним забавная история. Его продавал какой-то частник чех. Договоились с ним, что он подгонит сутра свой товар на мной указаный автосервис. Сервис тот естественно изначально русский. Осмотр проходил вроде нормально. Был осмотрен кузов на предмет битости, прослушан мотор.. Оставалось поднять на подъемнике. Подъемник был занят, и требовалось подождать минут пять. И тут чех ни с того ни с сего мне говорит: "Я раздумал вам продавать эту машину." Прыгает в свой ниссан, я пытаюсь его как-то словами остановить, он мне еще что-то лепечет, про то, что не нравится ему как смотрят его машину... и уезжает. Всё произошло в мгновение ока. Никто ниче так и не понял. Чел видать чего-то испугался. Чудик!
Дальше на базаре на черном мосту нашлись последние 2 варианта. Тойота и Ниссан. Оба хэтчи. Я с первого взгляда запал на Тойоту, хотя битость была на лицо даже моим ламерским взглядом! Но увы, приехавший автоэксперт Сергей забраковал её по полной.
Надо сказать, что купленный в конечном итоге ниссан тоже немного с дегтем. Однако дефекты на мой взгляд несущественные и надеюсь будут исправлены в ближайшее время.
Представляю вам Nisssan Primera 2.0 (P11), hatchback, РКПП, год выпуска 1997, цвет vínová metalíza (красные машины не люблю органически :), пробег 142 тыщи по тахометру (в реальности тыщ на сто больше - поездила машинка)

еще пара фоток в Анином блоге

3 апр. 2008 г.

Anna Ternheim - Lovers Dream

Припев очч нравиццо



Стоит посмотреть и остальные клипы!