Выбираю•IT помогает в выборе будущей профессии абитуриентам
и студентам, в развитии профессиональных навыков молодым специалистам,
в выборе дополнительных программ обучения и специальных курсов.

О портале Каталог профессий

Поиск по порталу

Oracle DBA

Базы данных и СУБД занимают центральное место на рынке ИТ-технологий. Их значение особенно возросло с развитием направления Data Science. Согласно рейтингу DB-Engines лидером рейтинга баз данных, показывающим рост на рынке, является Oracle.

Мы обратились к экспертам и представителям различных компаний, чтобы выяснить, каких кандидатов они видят на позиции Oracle DBA

1. Oracle Database Administrator (DBA): какими знаниями и навыками он должен обладать?

2. Инструментарий Oracle Database Administrator (DBA)?

3. Каковы требования компании к уровню образования потенциальных сотрудников?

4. Какие требования предъявляются к опыту работы?

5. Есть ли особые требования, которые обусловлены спецификой деятельности компании?


Максим Филатов, старший администратор баз данных Oracle, компания «Яндекс»

1 Это зависит от того, какой перед нами DBA. Это может быть старший или младший администратор. Например, младший DBA обычно обладает довольно скудными знаниями ОС и баз данных СУБД. В то время как старший DBA обладает хорошими знаниями ОС, СУБД, сетей, железа и архитектуры проекта в целом. Также старший DBA нередко выступает в роли Team Lead, соответственно, на его плечи ложится и управление отделом или группой.

Что касается технической составляющей, хороший Oracle DBA должен знать следующие аспекты:

Сеть. Сетевое взаимодействие, связность и маршрутизация. На базовом уровне уметь и понимать настройку маршрутизаторов.

Безопасность на уровне сети, firewall и влияние на связность. Уметь диагностировать проблемы, связанные с сетью. Операционная система. Нужно уметь ее устанавливать, настраивать, оптимизировать, диагностировать, обновлять. Каждый из этих пунктов очень широк.

СУБД. Установка, настройка, диагностирование, оптимизация, бэкапы, миграция, обновление, распределенное взаимодействие, написание кода.

Так же и в операционной системе каждый пункт можно рассмотреть достаточно широко и при собеседованиях, по каждому из этих пунктов можно довольно долго и детально поговорить.

Еще немаловажный фактор это то, что все перечисленные аспекты и пункты нужно объединить в мониторинг, чтобы при возникновении проблем администратор узнал раньше, чем пользователь.

2 Есть стандартные инструменты, а есть наборы для каждого свои. Из стандартных это инструменты для разработки и просто выполнения запросов: sqlplus, Toad, PL/SQL Developer, SQL Developer. Из нестандартного это обычно самописные скрипты, которые либо самостоятельно собирают информацию из v$-представлений, либо комбинируют их с информацией из dbms_*-семейства пакетов. Есть еще инструменты snapper и oratop, они мало известны, но крайне эффективны. Также удобно пользоваться всякого рода инструментами профилирования, которые показывают распределение затраченного времени на операции внутри сессии. К ним относятся tkprof, mprof, orasrp. Также различные инструменты диагностики и рекомендаций: awr, ash, addm.

3 Требования обычные: высшее образование, но гораздо важнее опыт кандидата.

4 Все зависит от того, на какую позицию претендует кандидат, в какую компанию и на какой проект. К младшему могут предъявляться требования чуть ниже среднего, к старшему самые высокие, со знанием архитектуры и опытом построения нового проекта.

5 Такие требования могут быть только касаемо оборудования. В плане ПО все достаточно стандартно.


Павел Тришин, инженер технической поддержки в Oracle

1 Знание архитектуры базы данных, хотя бы поверхностное знание набора утилит, поставляемых с инсталляцией, знание SQL/PL_SQL, умение программировать.

А дальше уже в зависимости от специфики:

  • если это DBA в команде разработчиков, то нужно уметь читать и понимать SQL/PL_SQL-код, оптимизировать планы запросов и т.д.;
  • если это DBA на стороне заказчика, то очень желательно уметь программировать на том, что доступно в ОС: bash+AWK+sed, Perl, cmd, PowerShell или что-то еще.

Очень пригодится знание английского языка (желательно выше уровня «читаю техническую документация со словарем»).

2 Даже сейчас, в 2018-м, это старая добрая консоль. Несмотря на то что для RDBMS Oracle написано много GUI-клиентов, главным и универсальным средством работы с базой по-прежнему остается набор консольных утилит, поставляемых в дистрибутиве. К исключениям можно отнести разве что широко распространенный Oracle Enterprise Manager, который представляет собой клиент-серверное приложение с веб-мордой. Широко распространены Oracle SQL Developer, Toad for Oracle, PL/SQL Developer, но применяют их с учетом специфики работы. PL/SQL Developer, например, популярен среди тех, кто пишет много кода.

3 Мне сложно говорить наверняка, поскольку я не собеседую кандидатов. Полагаю, что отдают предпочтение кандидатам с высшим техническим образованием. Думаю, что смотрят на наличие профильных сертификатов. Но окончательное решение выносится по итогам собеседования, что вполне обычно для всей ИТ-отрасли. В конце концов главное – это знания, а не бумажки.

4 Когда меня брали, то писали про три – пять лет, но не буду утверждать, что кандидатов с меньшим опытом не рассматривают. Если говорить про отрасль в целом, то есть очень крупные компании из телеком и банковского секторов, куда можно попасть и без опыта работы DBA. Можно, например, перейти из стана разработчиков, что в свое время сделал я.

5 Иногда приходится работать в условиях неполной/недостаточной информации. Когда работаешь с заказчиком, который в силу своих внутренних политик не может выносить всю информацию за пределы своей инфраструктуры, приходится что-то додумывать, что-то предполагать, ну или запрашивать нужную информацию у клиента и ждать ответ. Это требует времени, терпения и умения точно формулировать, что конкретно, в каком виде и для чего тебе нужно. Но это специфика работы в технической поддержке, а не специфика работы DBA.


Александр Коньков, OCA 11g, Oracle DBA в компании Lanit-Tercom

1 Говоря об администрировании системы управления базами данных (СУБД) Oracle, в первую очередь необходимо знать архитектуру СУБД Oracle и хотя бы иметь представление о реляционной модели данных и теории нормализации.

Кроме того, совершенно не лишними для Oracle DBA будут знания по:

  • системам хранения данных (СХД), с тем, чтобы максимально эффективно размещать различные типы файлов БД – оперативные журналы работы БД, архивные таблицы, сегменты отката и т.п.;
  • принципам работы различных типов сетей (LAN, WAN, InfiniBand), с тем, чтобы иметь контролируемый доступ к БД по сети, настраивать взаимодействие отдельных узлов в случае использования Oracle Real Application Cluster (RAC), обеспечивать балансировку нагрузки и т.п.;
  • возможностям аппаратного обеспечения и используемой операционной системе, с тем, чтобы эффективно использовать аппаратные ресурсы – процессоры, память, сеть.

Что до навыков… Думаю, что они определяются умением применять теоретические знания на практике. Например, зная особенности работы БД с различными файлами, можно при необходимости грамотно разделить общий объем СХД на отдельные части с разными параметрами по объему и быстродействию.

Однако это определение, наверное, справедливо для всех сфер деятельности человека, поэтому не уверен, что есть какой-то особенный навык, присущий только Oracle DBA.

2 Oracle предоставляет достаточно широкий набор инструментов для администратора.

Прежде всего это утилиты командной строки, такие как:

  • sqlplus или его более современная версия sqlcl – для выполнения SQL-запросов;
  • утилиты exp/imp или более современные expdp/impdp (DataPump) – для экспорта/импорта данных из/в базу данных;
  • великий и ужасный rman – главный инструмент для бэкапа/восстановления БД.

Если в организации несколько БД Oracle, то удобно использовать Oracle Enterprise Manager – отдельная платформа управления и мониторинга.

Несмотря на то что Oracle предлагает бесплатную Java-программу SQL Developer, которая позиционируется в том числе и для администрирования БД, большой популярностью продолжает пользоваться платная программа TOAD for Oracle от фирмы Quest Software.

И ни в коем случае не стоит забывать про инструменты, предлагаемые операционной системой: например, Perfomance Monitor в Windows, top/sar/iostat в *NIX. Возможность написания скриптов, например на *sh в *NIX, для автоматизации рутинных задач.

3,4 У нас в компании очень гибкий подход – в зависимости от проекта и должности. Например, в группе администраторов БД на одном из проектов работают и сертифицированные специалисты Oracle, и вчерашние выпускники.

5 Не столько компанией, сколько нашими заказчиками. Зачастую это связано с выполнением различных работ по обслуживанию баз данных во внерабочее время. Но, как правило, это касается многих Oracle DBA.


Дмитрий Гаврилычев, старший системный инженер в компании IBS

1 Для стажера нужно уметь писать простые SQL-запросы, разбираться в физической и логической структуре данных RDBMS Oracle, понимать структуру памяти и назначение процессов инстанса БД Oracle. В дальнейшем разбираешься с бэкапом и восстановлением с помощью RMAN, разбираешься с методами анализа производительности инстанса: AWR, ASH, трассировка. Опытный Oracle DBA знает, куда пишут логи процессы RDBMS Oracle, умеет находить необходимые исправления на support.oracle.com, быстро находит нужную доку на docs.oracle.com, может развернуть высокодоступное отказоустойчивое решение RDBMS Oracle на базе технологий Oracle RAC и Oracle Dataguard, без проблем пропатчит все компоненты до последней версии, смигрирует базу данных между любыми платформами.

2 Putty – ssh-клиент для доступа к командной строке ОС сервера. WinSCP – sftp-клиент для доступа к файловой системе сервера. PL/SQL Developer – графический клиент к базе данных, легкий и удобный. X-ming – клиент для проброса графики с сервера на свой рабочий стол. Oracle Virtual Box – для создания тестовых сред на ПК. Notepad++ – удобный блокнот.

3 В основном требуют высшее, но берут и с незаконченным высшим, специальность не имеет значения.

4 Требования зависят от предоставляемой вакансии. По опыту работы обычно спрашивают, с каким количеством баз данных работал, какой объем баз данных, какая конфигурация: STANDBY, RAC, Single Instance. Как настраивал производительность, чем мониторил базы, на что бэкапил и чем. Какие аварийные ситуации были, как их решал.

5 Основной набор компонентов RDBMS Oracle и принцип ее работы не зависят от деятельности компании.


Павел Болотин, администратор баз данных в «ЕКА-Процессинг»

1 Oracle DBA можно подразделить на три типа, как и во всех областях ИТ-индустрии: начинающий, средний и мастер. Но у Oracle есть четкое понимание, какими наборами знаний должен обладать DBA из каждой области, а именно это сертификация по продукту OCA (Oracle Certified Associate) → OCP (Oracle Certified Professional) → OCM (Oracle Certified Master). Нo в первую очередь это концепции SQL! Oracle DBA в своей работе общается с СУБД посредствам SQL, он пишет запросы на выборку из системных и пользовательских таблиц, он читает пользовательский SQL-код. В целом от знания SQL и особенностей Oracle SQL зависит уровень понимания того, что происходит в базе данных.

Вторым пунктом идут концепции Oracle RDBMS, их можно выделить по пунктам с разделением по уровням подготовки:

Для OCA:

  • Понимание принципов архитектуры.
  • Установка инстанса и создание базы данных.
  • Настройка сети LISTENER.
  • Настройка хранилищ.
  • Настройка безопасности.

Для OCP:

  • Особенно сохранность данных, а именно различными способами резервного копирования и восстановления.
  • Отдельным пунктом можно выделить понимание и применение технологии Flashback.
  • Очень важно понимание механизмов ASM.
  • Выполнение процедур по миграции и переносу данных как внутри БД, так и во внешние источники.
  • Апогеем всего курса OCA и первых пунктов OCP является Performance Tuning. Настройка производительности в Oracle – это не просто использование инструментов от самого Oracle или сторонних производителей, а понимание механизмов и принципов СУБД и происходящих в ней операций.

Для OCM:

  • Oracle Database Master – это навыки OCP с добавлением к ним технологий Oracle RAC и Oracle Data Guard.

2 Инструментарий очень разнообразный – как правило, это внутренние утилиты самого Oracle, необходимые для работы с логами и журналами AWR. Набор Oracle джентльмена скорее всего выглядит так:

  • редактор для SQL (PL/SQL Developer или Sqldeveloper, многие пользуются TOAD for Oracle);
  • мониторинг активности БД Oracle Grid Control или Oracle Cloud Control (но это уже целые продукты);
  • tkprof для диагностики работы.

3 Не думаю, что руководителя подразделения остановит отсутствие у кандидата высшего образования, но, как правило, с ним проще. Что касается профессиональных навыков в области ИТ, то здесь все зависит от профиля компании. Как правило, на DBA возлагают еще и обязанности по сопровождению операционных систем и написанию различных скриптов для отчетности и миграции данных. Но здесь все зависит от потребностей.

Очень желательно понимание принципов работы сетей хранения данных и локальных сетей. Это позволит как минимум не дать ездить себе по ушам со стороны сисадминов, а как максимум выставлять более четкие и грамотные требования для построения и эксплуатации инфраструктуры, в которую входит обслуживаемая БД.

4 Как правило, приветствуется знание софта, эксплуатируемого на обслуживаемой БД. Например, если DBA ранее работал в процессинговых центрах и знаком с OpenWay или SmartVista, он уже понимает, на какие объекты обратить повышенное внимание.

5 Здесь могу, наверное, только выделить банки и процессинговые центры, которые подпадают под действие регуляторов по PCI-DSS. В этом случае действует ряд требований, которые DBA просто не может не выполнять. Во всех остальных случаях главное, чтобы данные были сохранны, а софт работал.

Игорь Штомпель

Специальные партнёры портала

Партнёры