Блоги: администрирование, программирование, базы данных, SQL, Oracle. Основы субд oracle

Блоги по базам данных участников нашей соцсети программистов и системных администраторов на различные темы. Прежде всего мы уделяем внимание базам данных Oracle Database и MySQL. Также рассматриваем основы баз данных: теорию и методы проектирования, разработки СУБД, язык SQL (и его дополнение для Оракл - PL/SQL). В блогах объясняем как основы администрирования БД, программирования приложений под базы для начинающих, так и делимся секретами решения сложных проблем. Делитесь Ваши знаниями, ставьте вопросы, публикуйте готовые решения и рецепты! Помогите новичкам и покажите свой профессионализм! Хедхантеры не дремлют!

Предположим, вам нужно нанять веб-разработчика, работавшего с Angular. Что, по вашему мнению, должен знать такой специалист? Он должен понимать архитектуру, компоненты и концепции приложений Angular, но этого недостаточно. В следующем относительно длинном списке приводятся языки и инструменты, которыми пользуются профессиональные Angular-разработчики. Не все они нужны для разработки и развертывания конкретных приложений, но потенциально программист Angular должен обладать компетенциями в использовании этих инструментов.

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

Проблема

У вас есть приложение, которое собирает данные об использовании приложений анонимно, поэтому вы обязаны информировать пользователей об этом при первом запуске приложения.

Решение

Храните общие настройки, сохраняя их значения только один раз. Каждый раз, когда приложение запускается, оно проверяет эти значения в настройках.

Проблема

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

Решение

Используйте Google Analytics для отслеживания приложения на основе опреде­ленных критериев, аналогично механизму отслеживания веб-сайта Google Analytics.

Проблема

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

Решение

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

Проблема

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

Проблема

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

Существует несколько подходов. Если все ваши данные содержат элементар­ные типы, состоят из объектов класса String или являются объектами класса Serializable , вы можете сохранить их с помощью метода onSavelnstanceState() в переданном объекте класса Bundle .

Как получить доступ к глобальным данным из приложения Android

Подробности Категория: Программирование Опубликовано: 05 марта 2019 Просмотров: 258
Поговорим про Oracle Database

Программное обеспечение баз данных - это основное на сегодняшний день программное средство управления большими объемами информации. Система управления базой данных (СУБД) должна быть способна надежно управлять большими объемами данных в многопользовательской среде, обладать высокой производительностью, быть защищенной от несанкционированного доступа и предоставлять эффективные решения для восстановления от сбоев. В этой статье я бы хотел рассказать об особенностях СУБД Oracle на примере Oracle 10g, уделив внимание также технологии Oracle Real Application Cluster.

Общие сведения о СУБД Oracle

Сервер Oracle Database (далее просто Oracle) обеспечивает эффективные и действенные решения для основных средств баз данных. Кратко рассмотрим каждое из них. Oracle поддерживает самые большие базы данных - потенциальным размером до сотен гигабайт. Чтобы обеспечить действенный контроль за использованием дорогостоящих дисковых устройств, он предоставляет полный контроль распределения пространства. Oracle поддерживает большое число пользователей, одновременно выполняющих разнообразные приложения, которые оперируют одними и теми же данными. Он минимизирует соперничество за данные и гарантирует согласованность данных. Oracle поддерживает все описанные выше возможности, при этом сохраняя высокую степень суммарной производительности системы. Пользователи базы данных не страдают от низкой производительности обработки. Во многих случаях ПО Oracle должно работать 24 часа в сутки, не имея периодов разгрузки, ограничивающих пропускную способность базы данных. Нормальные системные операции - такие, как откат базы данных, а также частичные сбои компьютерной системы, - не прерывают работу с базой данных. Oracle может выборочно управлять доступностью данных, как на уровне базы данных, так и на более низких уровнях. Например, администратор может отключить доступ к конкретному приложению (с тем, чтобы можно было осуществить перезагрузку данных этого приложения), не затрагивая других приложений. Чтобы извлечь максимум преимуществ из имеющейся компьютерной системы или сети, Oracle позволяет разделять работу между сервером базы данных и прикладными программами клиентов. Вся тяжесть управления совместно используемыми данными может быть сосредоточена в компьютере, выполняющем СУБД, в то время как рабочие станции, на которых работают приложения, могут сконцентрироваться на интерпретации и отображении данных. Программное обеспечение Oracle совместимо с промышленными стандартами включая большинство стандартных операционных систем - таких, как семейство Microsoft Windows NT, а также различные версии Linux. Приложения, разрабатываемые для Oracle, могут использоваться в любой операционной системе с минимумом модификаций или вообще без таковых. Oracle удовлетворяет промышленно принятым стандартам по языку доступа к данным, операционным системам, интерфейсам с пользователем и сетевым протоколам. Это открытая система, которая защищает инвестиции конечного заказчика. Сервер Oracle был сертифицирован Национальным институтом стандартов и технологий США как 100% совместимый со стандартом ANSI/ISO SQL89. Oracle полностью удовлетворяет требованиям правительственного стандарта США FIPS127-1 и имеет маркировщик для подчеркивания нестандартных применений SQL. Кроме того, Oracle был оценен Правительственным национальным центром компьютерной безопасности (NCSC) как совместимый с критериями защиты Оранжевой книги; сервер Oracle и Trusted Oracle отвечают соответственно как уровням C2 и B1 Оранжевой книги, так и сравнимым с ними европейским критериям защиты ITSEC. Oracle является классической реляционной СУБД, использующей механизм клиент-сервер.

Важным преимуществом СУБД Oracle является механизм пакетной обработки запросов с подтверждением. Транзакционный механизм позволяет не опасаться сбоев программной среды и оборудования. В случае успешного завершения обработки пакета SQL-команд сервер баз данных генерирует так называемый commit - подтверждение успешного выполнения, которое отсылается клиенту. В случае же аппаратного или программного сбоя происходит rollback - возвращение к предыдущей контрольной точке, благодаря чему целостность данных в любой ситуации не будет нарушена. Для возможности отмены целого набора транзакций предусмотрен механизм точек сохранения, которые могут быть созданы вручную или автоматически. Таким образом, отпадает необходимость в постоянной архивации базы данных, которую можно проводить лишь несколько раз в сутки, а в остальных случаях администратор просто восстанавливает точки сохранения. СУБД Oracle использует язык SQL - простой, мощный язык доступа к базе данных, который является стандартным для реляционных СУБД. SQL, реализованный корпорацией Oracle для Oracle, на 100% согласуется со стандартом ANSI/ISO языка SQL. Кроме того, в Oracle реализовано расширение стандартных функций SQL, называемое PL/SQL. PL/SQL сочетает легкость и гибкость SQL с процедурными возможностями языка структурного программирования - такими, как IF...THEN, WHILE и LOOP. Наличие огромного количества средств разработки приложений, взаимодействующих с СУБД Oracle, среди которых присутствуют такие известные решения, как Microsoft Visual Studio, Borland Delphi и JDeveloper, позволяет большинству программистов без особых временных затрат научиться писать приложения, использующие в качестве хранилища базы данных Oracle. Поддержка механизмов ODBC, BDE и JDBC позволяет осуществлять миграцию между различными программными и аппаратными платформами с минимальными затратами на модификацию программного обеспечения. Благодаря полной унификации всех версий СУБД Oracle в одной и той же сети могут работать разные версии Oracle для различных платформ - к примеру, сервер баз данных может иметь версию Oracle 8 for Unix, а клиенты - Oracle for Windows, при этом никаких проблем с взаимодействием не возникнет. Все вышеперечисленное позволяет использовать СУБД Oracle для автоматизации практически любых процессов, где идет работа с большим объемом данных - начиная от простейших АРМ небольшого предприятия и заканчивая системами управления ядерными реакторами и ускорителями частиц.

Технология Oracle Real Application Cluster(RAC)

Высокая эффективность и доступность информационных систем - ключевое требование к повседневной работе предприятия или научной лаборатории. Рост зависимости от сохраненной информации за последнюю пару десятилетий привел тому, что накапливаются и анализируются большие объемы данных. Требования к высокоэффективным базам данных постоянно растут, и одновременно растут осведомленность и требования к поддержанию таких баз данных в оперативном режиме. При неравномерной и непредсказуемой загрузке систем БД многих деловых групп решающее значение приобрел поиск высокоэффективных систем и подходящих параллельных систем для поддержки сложных и больших БД. Еще одно важное свойство - масштабируемость. По мере роста локальной вычислительной сети предприятия растет накопление и взаимодействие данных, все больше пользователей и приложений начинают использовать системы БД, от которых требуется удовлетворять растущую потребность в данных без потери производительности и доступности. Для решения этих проблем в Огас1е9 имеется поддержка технологии Real Application Clusters (RAC). RAC поддерживает модель с разделением дисков, а, следовательно, имеет доступ ко всем разделяемым дискам и экстенсивный механизм координирования ресурсов на разных узлах. Технология разделения дисков быстро продвинулась вперед за последние несколько лет, что обеспечило RAC дополнительные преимущества. Технология "сервер-хранилище данных" (Storage Area Network - SAN) скрывает многие сложности аппаратных модулей, контроллеров, дисководов и межсерверных соединений, оставляя на поверхности только тома памяти (storage volumes). Таким же образом группа серверов в кластере обеспечивает один образ системы и вычислительный ресурс. Все эти достижения в области аппаратных средств только подчеркивают неоспоримые успехи RAC. На очень высоком уровне RAC представляет собой несколько экземпляров Oracle, обращающихся к одной базе данных Oracle. База данных - одна физическая БД, сохраненная на системе с разделением памяти. Каждый из экземпляров постоянно находится на отдельном хосте (также называемом "узел" или "сервер"). Все узлы собираются в кластеры через частное межсоединение и имеют доступ к разделяемой памяти. Все узлы параллельно выполняют транзакции в одной и той же БД. Как правило, предоставляемое поставщиками ПО менеджера кластера обеспечивает одно системное изображение, управляет членами узла и контролирует состояние узла. К главным компонентам относятся:

Узлы/серверы.
. Высокоскоростное частное межсоединение.
. Менеджер кластера или уровень зависимости от операционной системы (Operating System Dependent Layer - OSD).
. Разделяемый диск или память.
. Файловая система кластера или прозрачное устройство.
. Менеджер тома.
. Общедоступная сеть.

RAC - база данных с множественными экземплярами. Множественные экземпляры параллельно обращаются к одной и той же базе данных. Структура экземпляра RAC не так уж сильно отличается от автономного экземпляра Oracle. Помимо всех обычных процессов Oracle - например, PMON, SM0N, LCWR и BVVR - существует много специальных процессов, порождаемых для координирования связи между экземплярами и облегчения разделения ресурсов узлами кластера. Движение буфера между экземплярами и новый набор блоков Past Image Blocks (сохраняющих целостность данных) приводят к использованию дополнительных ресурсов из SGA.

LMON - диспетчер сервиса глобальных очередей (Global Enqueue Service Monitor - LMON) контролирует весь кластер, обеспечивая управление глобальными очередями и ресурсами. LMON управляет сроком действия процесса и экземпляра и восстановлением для Global Cache Service. LMD - демон сервиса глобальных очередей (Global Enqueue Service Daemon - LMD) - процесс агента блокировки, управляющий запросами сервиса менеджера для очереди Global Cache Service на доступ к глобальным очередям и ресурсам. Процесс LMD также обрабатывает обнаруженные взаимоблокировки и удаленные запросы на постановку в очередь.

LMSn - эти процессы сервисов глобального кэша (Global Cache Service Processes - LMSn) являются процессами для Global Cache service (GCS). Программное обеспечение RAC поддерживает до десяти процессов Global Cache Service. Число LMSn изменяется в зависимости от объема трафика передачи сообщений между узлами кластера.

GCS и GES - обеспечивают единое системное изображение данных, даже если к данным обращаются несколько экземпляров. GCS и GES являются интегрированными компонентами Real Application Clusters, которые координируют одновременный доступ к базе данных коллективного пользования и к разделяемым ресурсам в БД и кэше базы данных. GES и GCS вместе поддерживают Global Resource Directory (GRD), чтобы записывать в него информацию о ресурсах и очередях. GRD остается в памяти и сохраняется во всех экземплярах. Каждый экземпляр управляет частью каталога. Распределенный характер управления имеет решающее значение для отказоустойчивости RAC.

Преимущества Oracle Real Application Cluster

Oracle RAC обеспечивает ряд преимуществ по двум направлениям: повышение производительности базы данных и повышение отказоустойчивости. Под отказоустойчивостью в данном случае понимается возможность бесбойного обслуживания клиентских приложений в случае аппаратного или программного сбоя одного или нескольких узлов кластера, именуемых нодами. При этом подразумевается нормальная работа общего дискового массива, который может быть реализован в виде сетевого жесткого диска, использующего механизм iSCSI, или дисковой стойки. В случае подключения к RAC клиент базы данных взаимодействует не с одним listener (прослушивателем), а с группой listeners_имя базы данных. В таком случае клиент получает список IP-адресов всех нод кластера, причем данный список будет обновляться в случае включения новых нод. В случае обрыва соединения с текущей нодой и сбоя при повторном соединении клиент устанавливает соединение со следующей нодой в списке, и так происходит до того момента, пока не будет найдена рабочая нода. При этом клиент будет также учитывать нагрузку на каждую ноду, выбирая такую, которая быстрее всех обработает тестовый запрос (данный тест является опциональным и должен быть включен администратором базы данных). Таким образом, Oracle RAC сохраняет работоспособность до того момента, пока в кластере остается хотя бы одна рабочая нода. В Oracle RAC присутствует понятие general node (главная нода), однако оно относится исключительно к средствам администрирования. Как правило, general node является рабочим местом администратора базы данных, с нее осуществляется управление кластером. При этом выход из строя general node не приводит к остановке всего кластера. Отсюда вытекает еще одно важное преимущество Oracle RAC - возможность децентрализации. Предположим, на предприятии или в лаборатории имеется несколько мощных рабочих станций, вычислительные мощности которых используются не полностью. Если соединить такие рабочие станции при помощи локальной вычислительной сети, то можно получить высокоотказоустойчивую базу данных. При этом в случае возрастания нагрузки на одну или несколько рабочих станций со стороны непосредственных пользователей будет происходить плавное снижение нагрузки на данные рабочие станции со стороны базы данных вплоть до полного отключения клиентов. Таким образом можно достигнуть рационального использования вычислительной техники и повышения доступности информации для работников организации.

Из-за чего RAC может выйти из строя? Причиной может стать любая плохая разработка или вариант выбора. Обслуживание базы данных включает в себя много компонентов. помимо самой БД, RAC может быть включен и работать, но быть недоступен для клиентов. Между клиентскими машинами и серверами БД существуют промежуточные сетевые компоненты. В них может произойти сбой. Стихийные бедствия, уничтожающие аппаратные средства - например, пожар, наводнение или землетрясение, - могут вывести кластер и базу данных из строя. Однако при условии локализации сбоев свойство RAC обеспечивает максимальную безопасность и непрерывное обслуживание базы данных. Даже при потере многих компонентов кластер с RAC может все еще функционировать. Но для этого требуется избыточная разработка всех входящих в него компонентов. Ключевое слово здесь - "разработка". Недостаточно просто установить два или больше узлов; для надежного Real Application Cluster необходимы двойные межсоединения, двойные пути к блокам памяти, двойные блоки памяти, двойное электропитание, двойной общедоступный сетевой интерфейс и т.д. Пока в кластере доступен один из экземпляров Oracle, клиентские приложения имеют доступ к данным и могут выполняться без проблем.

Управление Oracle с использованием Oracle Enterprise Manager

Одной из основных компонент Oracle Enterprise Manager (OEM) является центральная консоль оператора. Сидя за этой консолью, администратор базы данных видит все СУБД, которые он администрирует, несмотря на то, что они размещаются на разных компьютерах, которые могут быть разбросаны по разным зданиям, городам и странам. Он может отслеживать состояние этих СУБД и выполнять с каждой СУБД или с группой СУБД различные административные действия, не сходя со своего рабочего места. При необходимости он может все это делать через Интернет. Кроме СУБД, администратор может контролировать с этой консоли узлы сети (компьютеры), листенеры (прослушиватели), серверы приложений (Oracle application servers), Oracle Developer Server, ERP-приложения (SAP/R3, Oracle Applications) и, конечно же, Oracle RAC.

OEM состоит из 3 компонент:
. центральные консоли, за которыми работают администраторы;
. управляющие серверы (Management servers), реализующие всю логику OEM;
. интеллектуальные агенты (Intelligent Agents), работающие на узлах, где размещены БД, и выполняющие там задания по поручению управляющих серверов.

Для эффективной работы с Oracle Enterprise Manager необходимо настроить Oracle Management Server, иначе многие полезные функции OEM будут недоступны. Для этого следует воспользоваться Enterprise Manager Configuration Assistant. Этот простой в использовании мастер позволит настроить OMS даже неопытному администратору. OEM позволяет выполнять не только те команды, которые выполняются экземпляром (instance) Oracle, но и команды операционной системы, старт и остановку БД. Поэтому на каждом управляемом узле должен работать сервис, который не привязан к состоянию БД. Эту роль и выполняет интеллектуальный агент. Он может выполнять скрипты, стартовать БД, выполнять команды операционной системы, контролировать возникновение заказанных OEM-событий. Причем выполнение этих работ может происходить в заранее указанные моменты времени или с определенной периодичностью, а результат будет передан управляющему серверу тогда, когда тот будет иметь связь с агентом. Вместе с OEM можно проинсталлировать его web-вариант. Он не требует дополнительного конфигурирования. Администратор просто запускает на компьютере с OEM установленную упрощенную версию сервера приложений и может работать с консолью через Интернет/Интранет с любого компьютера, где есть web-браузер (правда, при первом обращении придется выгрузить и установить пакет Jinitiator). Через этот web-интерфейс доступны все функции OEM и пакета DBA Management Pack. OEM и все его модули имеют графический интерфейс. Большинство работ выполняется с помощью мыши. Выполнить сложные операции помогают помощники (Wizards). Они разбивают сложную операцию на части и ведут с АБД диалог, объясняя, что и как надо делать. Таким образом, даже не очень опытный администратор может выполнить сложные задачи. Кроме того, OEM еще и обучает АБД в процессе работы. Вы всегда можете посмотреть текст скриптов и SQL операторов, которые он формирует, и понять, что и почему будет делаться.

В состав OEM входит набор заранее подготовленных заданий - таких, как анализ данных, экспорт/импорт, загрузка данных, копирование/восстановление, старт/остановка БД, выполнение команд SQLPLUS и Server Manager. Меняя параметры этих заданий, можно выполнять широкий набор функций. Кроме того, этапы одного задания могут быть взаимосвязаны - например, выполняться только при успешном или неуспешном выполнении предыдущего этапа задания. Задания могут запускаться не только по времени, но и автоматически при возникновении фиксируемых OEM- событий в БД или на узле. Это так называемые Fixit job. Например, при возникновении события "В табличном пространстве xxxxx осталось менее 1 Мб свободного пространства" автоматически запустится Fixit job, увеличивающая это табличное пространство. Вмешательство администратора здесь не требуется. Он будет лишь извещен о выполнении работы. В режиме работы с Oracle RAC OEM может рассматривать кластер как единую машину, выполняя операции обслуживания на всех нодах кластера сразу. При этом в случае возникновения проблем на одной из нод администратор сможет переключиться к просмотру Oracle Management Console по узлам кластера и работать только с "проблемной нодой". Таким образом, при правильной настройке OEM становится практически идеальным инструментом, когда администратор БД будет проактивным. OEM будет предупреждать события до их возникновения, а администратору не придется реагировать в пожарном порядке на постоянно возникающие проблемы. В этом случае количество проблем уменьшится, а вероятность ошибок станет минимальной. Выгоды от использования такого инструмента понятны. Уменьшится время простоя системы и повысится ее производительность.

Xpert Quest TOAD как средство разработки приложений, взаимодействующих с БД Oracle

Quest Toad - лучший инструмент для разработки и администрирования СУБД Oracle на сегодняшний день. Применяя Toad для управления объектами базы данных, пользователю не требуется иметь квалификацию эксперта, ему доступен простой и понятный графический интерфейс, позволяющий создавать и заполнять таблицы даже не владея языком SQL. Однако при выполнении любого действия начинающий программист баз данных может просмотреть SQL-код, выполняемый при тех или иных операциях, что позволяет одновременно и работать, и изучать язык SQL. Quest TOAD состоит из следующих основных модулей. Модуль Schema Browser в TOAD позволяет быстро просматривать и управлять словарем данных. По щелчку мыши на выбранном объекте пользователь мгновенно получает подробную информацию, минуя длинную иерархию хранения объектов. В том же окне можно управлять всеми объектами. Мощные редакторы Toad повышают производительность разработчика, исключают ошибки и значительно сокращают сроки разработки. Редакторы позволяют пользователям работать одновременно с исходными кодами на нескольких языках (SQL, PL/SQL, HTML, Java) или с текстом. Заменяя традиционный способ выполнения запроса в командной строке или из сценария графическим интерфейсом, Toad обеспечивает быструю и удобную среду разработки, легко конфигурируемую под предпочтения пользователя. SQL Editor повышает производительность разработки за счет большого количества горячих клавиш, функций автокорректировки, опережающего ввода и цветового выделения синтаксиса:

Удобные закладки позволяют разработчикам быстро перемещаться между несколькими областями программного кода.
Полнофункциональная панель инструментов облегчает редактирование и тестирование.
Всплывающие селекторы для выбора имен таблиц, имен столбцов и функций/ключевых слов.
Procedure Editor позволяет пользователям работать с несколькими файлами, в параллельном режиме используя SCC-совместимое управление версиями. Одновременно могут компилироваться несколько объектов с согласованной компиляцией всех зависимых объектов.

Редакторы Toad тесно интегрированы с отладчиком PL/SQL Debugger, что позволяет пользователям тестировать только определенные области процедур, выполнять только текущий оператор, несколько операторов за курсором или только операторы до курсора. SQL Modeler - средство для быстрого и легкого построения запросов. Достаточно перенести таблицы в SQL Modeler, и модуль автоматически сформирует запрос SQL. Удобная интегрированная среда позволяет уточнять критерии запроса, тестировать автоматически сгенерированные запросы SQL, просматривать планы выполнения и результаты запросов, сохранять выражения или копировать их в редактор. Применяя SQL Modeler, даже неопытные пользователи могут быстро создавать сложные запросы на уровне экспертов. Модуль PL/SQL Debugger обеспечивает удобную среду отладки приложений, экономя время для разработки и тестирования больших проектов. За счет интеграции отладчика с редактором Procedure Editor разработчики могут редактировать и отлаживать хранимые процедуры построчно - так, как они выполняются на сервере. Отладчик полностью контролирует выполнение приложения, устанавливая наблюдение за любым количеством переменных с просмотром и изменением их значений в процессе выполнения. Нормальное выполнение приложения при этом не изменяется, чем устраняется потребность в написании обработчиков ошибок. Более того, сеанс отладки может выполняться во время работы программ в других сеансах. Toad позволяет разработчикам избегать утомительных задач отладки PL/SQL, экономя ценное время и улучшая общее качество приложений. Кроме всего вышеперечисленного, Quest TOAD умеет импортировать и экспортировать структуру базы данных или все ее содержимое. Благодаря этой способности Quest TOAD позволяет, к примеру, перевести уже существующую базу данных в кластерный вариант с минимальными временными затратами.

Oracle RAC в действии

Решения на базе СУБД Oracle активно применяются для автоматизации документооборота и наукоемких физических экспериментов с большим объемом данных, поступающих от экспериментальных установок. Координирование совместной работы значительного числа ученых (на сегодняшний день около 6500 человек), распределенных по всему миру, сопряжено со значительными административными затратами, для уменьшения которых в ЦЕРН была разработана и внедрена корпоративная система электронного документооборота (EDH). Система EDH автоматизирует практически все стороны хозяйственной деятельности ЦЕРН включая закупки, платежи, отпуска, командировки, кадровые вопросы, обеспечение безопасности работ, предоставление информационных услуг, материально-техническое снабжение, заявки на обучение и др. Система осуществляет верификацию данных и автоматическое прохождение документов по всем необходимым адресам, исходя из структуры организации и характера документов. Безопасность и конфиденциальность данных гарантируется применением новейших разработок в области защиты информации и электронно-цифровой подписи. Система EDH написана на языке программирования высокого уровня Java с использованием технологий разработки корпоративных приложений (Java 2 Enterprise Edition - J2EE). Документы представлены в EDH в виде электронных форм, доступных из любой точки земного шара через среду World Wide Web. При этом вся бизнес- логика находится на стороне сервера, а клиент реализован на языке разметки гипертекста HTML (т.н. "тонкий клиент"). В процессе создания EDH были формализованы понятия, используемые в бизнес-процессах ЦЕРН ("сотрудники", "коды затрат", "подразделения" и т.д.), и разработаны библиотеки объектов для их хранения, обработки и ввода/вывода. Все данные хранятся в реляционной СУБД Oracle, доступ к которой осуществляется при помощи языка SQL (Structured Query Language - структурированный язык запросов) через интерфейс JDBC (Java Database Connectivity - интерфейс подключения к базе данных для Java). Была разработана и внедрена базовая инфраструктура, позволяющая быстро автоматизировать любые бизнес-процессы. Данная инфраструктура реализует функции, общие для всех типов документов - такие, как ввод/вывод, контроль доступа, проверка целостности данных, функции сохранения и отсылки документов. Маршрутизация электронных документов реализуется с помощью системы Oracle Workflow, для чего бизнес- процессы вначале формализуются при помощи сетей Петри.

Разработанная архитектура EDH успешно эксплуатируется с 2000 года. За это время в системе было создано и маршрутизировано более миллиона электронных документов. С 1996 года в ЦЕРН ведется строительство нового ускорителя "Большой адронный коллайдер" (LHC). В LHC могут осуществляться столкновения протонных пучков с энергией 14 ТЭВ в туннеле протяженностью 27 км. LHC является крупнейшей в мире сверхпроводящей установкой с рабочей температурой -270°C. При строительстве LHC для уменьшения расходов по вводу системы в эксплуатацию была создана система EVM. Для системы EVM было адаптировано программное приложение, разработанное в ЦЕРН ранее в Oracle Designer. Данное приложение было перенесено на платформу Java Enterprise Edition с центральной базой данных Oracle. При этом была использована легковесная архитектура с четким разделением модели, вида и контроллера, так как оригинальная архитектура стандарта EJB (Enterprise Java Beans) была сочтена слишком тяжелой для данной задачи.

Перед инженерами-проектировщиками LHC была поставлена задача составления центрального формата рабочих единиц таким образом, чтобы длительность каждой задачи не превышала трех месяцев. В результате было идентифицировано 12.000 рабочих единиц. Поскольку определение большого количества взаимосвязанных рабочих единиц через web-интерфейс представляет определенные трудности, в системе EVM был предусмотрен модуль импорта/экспорта данных в электронную таблицу Microsoft Excel. Для оперативного анализа транзакций (Online Transaction Processing - OLTP) и оперативного анализа данных (Online Analytical Processing - OLAP) был разработан и внедрен автоматизированный модуль обработки суммарных данных, позволяющий руководителям проекта получать в реальном режиме времени информацию о ходе работ и обеспечивающий анализ этой информации в различных разрезах. Поскольку доступ к системе EVM был преднамеренно открыт для всех участников проекта, возникла необходимость отслеживания сделанных изменений. Для этого все отчеты о результатах, как сделанные через web-интерфейс, так и полученные из Excel, группируются в транзакции и записываются в центральную базу данных. Каждая транзакция может затем быть визуализирована и при необходимости отменена. В EVM входит система обработки событий, отслеживающая влияние транзакций на план и расходы и уведомляющая нужных участников проекта на основе подписки на предупреждения.

Заключение

В данной статье я постарался просто и доступно рассказать про особенности Oracle Database и, смею надеяться, заинтересовал вас данной СУБД. В таком случае вам стоит посетить сайт производителя Oracle Database

ОСНОВЫ СУБД ORACLE
Лекция №2
Основные объекты ORACLE. Средства
манипулирования данными языка SQL. Структура
запроса. Простейшие запросы. Формирование
критерия отбора. Сортировка

Объекты модели хранения данных ORACLE

ОБЪЕКТЫ МОДЕЛИ ХРАНЕНИЯ ДАННЫХ
ORACLE
Разделение логического и физического
хранения данных одна из необходимых частей
парадигмы реляционных баз данных. Как уже
говорилось, различается физическая и
логическая структуры.
Физическая структура включает в себя
файлы данных, управляющие файлы и
оперативные журналы.
Логическая структура – это табличные
пространства, сегменты, экстенты и блоки
данных.

Логические структуры

ЛОГИЧЕСКИЕ СТРУКТУРЫ
Табличные пространства – верхний уровень
абстракции.
Сегмент данных – пространство, выделенное для
логического объекта в табличном пространстве. Он
располагается только в одном табличном пространстве, но
может находится в любом файле этого табличного
пространства. Сегмент состоит из одного или более
экстентов.
Экстент – это последовательность физически
прилегающих друг к другу блоков данных. Табличное
пространство для сегментов выделяется путем добавления
экстентов.
Блок данных – наименьшая логическая единица, которую
ORACLE выделяет в файле данных. Блок данных
ORACLE состоит из одного или более блоков
операционной системы.

Взаимосвязь между логическими структурами

ВЗАИМОСВЯЗЬ МЕЖДУ ЛОГИЧЕСКИМИ
СТРУКТУРАМИ

Каталоги

КАТАЛОГИ
Объект каталог (directory) является
логической ссылкой в базе данных на каталог
файловой системы сервера, где установлена
БД ORACLE. Владельцем всех объектов
directory в базе данных является пользователь
SYS, даже если объект directory создан другим
пользователем. Имена объектов directory
уникальны внутри всей БД. Все объекты
Directory хранятся в табличном пространстве
SYS.

Пользователи

ПОЛЬЗОВАТЕЛИ
В базе данных учетная запись пользователя не является
физической структурой, но она связана важными
взаимоотношениями с объектами базы данных:
пользователям принадлежат объекты. Пользователь SYS
владеет таблицами словаря данных, содержащими
информацию об остальных структурах базы данных.
Пользователю SYSTEM принадлежат представления,
обращающиеся к этим таблицам словаря данных, что
позволяет остальным пользователям базы данных
использовать их.
Объекты в базе данных создаются с учетными записями
пользователей. Для каждой учетной записи можно задать
конкретное табличное пространство в качестве
табличного пространства по умолчанию.

Схемы

СХЕМЫ
Набор объектов, принадлежащих учетной записи
пользователя, называется схемой. Можно создать
пользователей, не имеющих права входа в базу данных.
Такие учетные записи предлагают схему, которую можно
использовать для хранения наборов объектов базы данных
отдельно от схем других пользователей.
В ORACLE схема привязывается только к одному
пользователю (USER) и является логическим набором
объектов базы данных. Схема создается при создании
пользователем первого объекта, и все последующие
объекты, созданные этим пользователем, становятся
частью этой схемы.
Схема может включать другие объекты, принадлежащие
этому пользователю.

Роли

РОЛИ
Для сокращения объема информации по управлению
доступом и для обеспечения более гибких возможностей
управления обе СУБД применяют группирование
привилегий – возможность одним действием
администратора предоставить разным пользователям
одинаковый набор привилегий. Однако представления
концепций группирования различны в наших двух СУБД.
ORACLE использует для этих целей роли. Роль – это объект
базы данных, представляющий собой именованный набор
привилегий, который может предоставляться
пользователю или другой роли.

Профили

ПРОФИЛИ
Профили имеют двойную функцию, это реализация
парольной политики и распределение ресурсов.
Парольная политика исполняется всегда, контроль за
использованием ресурсов осуществляется, если значение
параметра RESOURCE_LIMIT равно TRUE, по
умолчанию оно равно FALSE. Профили используются
автоматически, но профиль, назначаемый всем
пользователям по умолчанию, а именно пользователям
SYS, SYSTEM и др., – DEFAULT очень простой.

10. Таблицы

ТАБЛИЦЫ
Таблицы представляют собой механизм сохранения
информации в базе данных ORACLE. Они содержат
фиксированный набор столбцов, в которых описываются
атрибуты объекта, с которым эта таблица работает. У
каждого столбца есть имя и уникальные характеристики.
Временная таблица является механизмом хранения данных
в базе данных ORACLE. Временная таблица состоит из
столбцов, имеющих типы данных и длину. В отличие от
регулярной таблицы описание временной таблицы
сохраняется, но данные, внесенные в таблицу, остаются в
ней во время сеанса или во время транзакции.

11. Кластеры

КЛАСТЕРЫ
Таблицы, с которыми часто работают совместно,
можно физически хранить совместно. Для этого
создается кластер, который будет их содержать.
Данные таких таблиц сохраняются вместе в
кластере, что уменьшает число операций
ввода/вывода и повышает производительность.
Связанные столбцы таблиц называются
кластерным ключом. Кластерный ключ
индексируется с помощью кластерного индекса,
причем его значение сохраняется только один раз
для нескольких таблиц кластера. Кластерный
индекс необходимо создать до введения (insert)
новых строк в таблицы кластера.

12. Ограничения

ОГРАНИЧЕНИЯ
На столбцы таблицы можно налагать ограничения; при этом
каждая ее строка должна удовлетворять указанному в
описании ограничению.
Ограничение NOT NULL проверяет чтобы каждая строка
таблицы содержала значение для данного столбца.
Ограничение DEFAULT генерирует значение столбца при
включении (insert) строки в таблицу, но для него не
указывается никакого значения.
Ограничение CHECK позволяет удостовериться, что
значения в указанном столбце соответствуют
определенному критерию.

13. Ограничения

ОГРАНИЧЕНИЯ
Ограничение UNIQUE гарантирует уникальность
столбца, который должен быть уникальным, но не
является частью первичного ключа.
Ограничение первичного ключа PRIMARY KEY
гарантирует что каждая строка таблицы должна содержать
значение уникальное не пустое для данного столбца.
Ограничение внешнего ключа FOREIGN KEY
определяет природу взаимоотношений между таблицами.
Внешний ключ одной таблицы ссылается на первичный
ключ, который был ранее определен где-то в другом месте
базы данных.

14. Последовательности

ПОСЛЕДОВАТЕЛЬНОСТИ
Определение последовательностей (sequences) содержится в
словаре данных. Последовательности позволяют
упростить процесс программирования, поскольку
предоставляют последовательный список уникальных
номеров.
При первом обращении к последовательности в запросе она
возвращает предопределенное значение. Каждый
следующий запрос возвращает значение, которое больше
предыдущего на указанное приращение.
Последовательности могут быть циклическими, а могут
увеличиваться до достижения заданного максимального
значения.

15. Индексы

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

16. ROWID

Для того чтобы ORACLE мог найти данные, каждая строка в
каждой таблице помечается с помощью идентификатора
RowID. Этот идентификатор содержит информацию о
том, где конкретно расположена строка (файл, блок
внутри этого файла и строка внутри этого блока).
ВНИМАНИЕ: Таблица, организованная по индексу, не
содержит традиционных для ORACLE идентификаторов
RowlD. Вместо этого в качестве логических
идентификаторов используется первичный ключ.

17. Снимок

СНИМОК
Снимок – это только-читаемая копия таблицы или данных
из нескольких таблиц. Снимок периодически освежается,
чтобы отразить последнее согласованное состояние
таблиц, которые он отображает. Снимки содержатся в
схеме пользователя. Имя снимка должно быть
уникальным по отношению к другим объектам в этой
схеме.

18. Представление

ПРЕДСТАВЛЕНИЕ
На самом деле представление – это таблица, содержащая
столбцы, и обращение к нему осуществляется точно так
же, как и к таблице. Однако оно не содержит данных.
Концептуально представление можно считать маской,
перекрывающей одну или несколько таблиц, так как
столбцы представления содержатся в одной или
нескольких таблицах. Но физически представления не
содержат данных. Определение представления
(включающее запрос, на котором оно основано,
расположение его столбцов и назначенные привилегии)
содержится в словаре данных.

19. Хранимые процедуры и функции

ХРАНИМЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ
Процедура – это блок операторов PL/SQL, сохраняемый в
словаре данных и вызываемый приложениями.
Процедуры позволяют сохранять в базе данных часто
используемую логику приложений. При выполнении
процедуры все ее операторы выполняются как единое
целое. Процедуры не возвращают никаких значений
вызвавшей их программе.
Функции, как и процедуры, представляют собой блоки кода,
сохраняемые в базе данных. Однако в отличие от
процедур функции могут возвращать значения вызвавшей
их программе. Можно создавать свои собственные
функции и обращаться к ним в операторах SQL, а можно
использовать только те функции, которые
предоставляются средой ORACLE.

20. Пакеты

ПАКЕТЫ
С помощью пакетов можно упорядочить процедуры и
функции и объединять их в логические группы.
Спецификации и тела пакетов сохраняются в словаре
данных. Пакеты бывают очень полезны при решении
задач администрирования по управлению процедурами и
функциями.

21. Триггеры

ТРИГГЕРЫ
Триггеры – это процедуры, выполняемые при наступлении
указанного события базы данных. С помощью триггеров
можно укрепить ссылочную целостность, обеспечить
дополнительную безопасность или повысить доступные
возможности аудита.
Существуют два типа триггеров:
Операторные триггеры. Срабатывают один раз для
каждого активизирующего оператора.
Строковые триггеры. Срабатывают один раз для каждой
строки таблицы, на которую влияют данные операторы.
Для любого типа триггера можно создать триггеры BEFORE
(до) и AFTER (после), относящиеся к каждому типу
активизирующих событий. К числу таких событий
относятся команды insert, update и delete

22. Средства манипулирования данными языка SQL

СРЕДСТВА МАНИПУЛИРОВАНИЯ
ДАННЫМИ ЯЗЫКА SQL
ORACLE поддерживает 4 стандартных оператора
манипулирования данными:
INSERT – используется для ввода данных;
SELECT – используется для выборки данных;
UPDATE – используется для обновления данных;
DELETE – используется для удаления данных.

23. Ввод данных

ВВОД ДАННЫХ
Оператор INSERT используется для добавления строк в
таблицу. Вы можете указать следующую информацию при
использовании оператора INSERT:
Таблица, в которую необходимо добавить строку.
Список столбцов, для которых будут заданы значения.
Список значений, которые будут храниться в указанных
столбцах.
Во время добавления строки необходимо указать значения
для первичного ключа и всех других столбцов, которые
определены как NOT NULL. Нет необходимости
указывать значения для остальных столбцов; им
автоматически будет присвоено значение NULL.

24. Простые манипуляции по выборке данных из одной таблицы.

ПРОСТЫЕ МАНИПУЛЯЦИИ ПО ВЫБОРКЕ
ДАННЫХ ИЗ ОДНОЙ ТАБЛИЦЫ.
Оператор SELECT используется для выборки данных из
таблиц базы данных. В самом простом примере вы
указываете таблицу и столбцы, которые вам необходимо
выбрать из базы данных
Сразу за ключевым словом SELECT указываются имена
столбцов, которые вам необходимо получить, а после
ключевого слова FROM указывается имя таблицы.
Оператор языка SQL заканчивается точкой с запятой (;).
Операторы SELECT часто называют запросами.
SELECT <список столбцов>
FROM <список таблиц>;

25. Использование WHERE

ИСПОЛЬЗОВАНИЕ WHERE
Если необходимо вывести только определенные строки,
необходимо добавить к оператору SELECT ключевое
слово WHERE. Это очень важно, поскольку ORACLE
вмещает огромное количество строк в таблице, можно
получить небольшое подмножество этих строк. Для этого
необходимо после ключевого слова FROM и имени
таблицы поместить ключевое слово WHERE и указать
условие отбора:
SELECT <список столбцов>
FROM <список таблиц>
WHERE <условие отбора>;

26. Операторы сравнения применяемые с WHERE

ОПЕРАТОРЫ СРАВНЕНИЯ ПРИМЕНЯЕМЫЕ
С WHERE
Оператор
=
<> или!=
<
>
<=
>=
ANY
SOME
ALL
Описание
Равно
Не равно
Меньше
Больше
Меньше или равно
Больше или равно
Сравнивает значение с любыми
значениями из списка
Идентично оператору ANY;
используется реже, чем ANY
Сравнивает значение со всеми
значениями в списке.

27. Использование SQL операторов при формировании запросов

ИСПОЛЬЗОВАНИЕ SQL ОПЕРАТОРОВ ПРИ
ФОРМИРОВАНИИ ЗАПРОСОВ
Оператор
LIKE
IN
BETWEEN
IS NULL
IS NAN
IS INFINITE
Описание
Проверяет соответствие строки
заданному шаблону
Проверяет значение на присутствие
в списке
Проверяет значение на вхождение в
диапазон

пустым
Проверяет, является ли значение не
числовым значением
Проверяет, является ли значение
бесконечным BINARY_FLOAT или
BINARY_DOUBLE

28. Сортировка данных

СОРТИРОВКА ДАННЫХ
Для сортировки выбираемых строк используется ключевое
слово ORDER BY. При использовании ORDER BY можно
указать один и более столбцов по которым необходимо
отсортировать полученные строки. Выражение ORDER
BY должно следовать за выражением FROM или WHERE
(если с помощью WHERE указывается условие отбора).
Следующий пример использует ORDER BY для
сортировки строк из таблицы CUSTOMERS по столбцу
LAST_NAME:
SELECT *
FROM customers
ORDER BY last_name;

29. Обновление данных

ОБНОВЛЕНИЕ ДАННЫХ
Для изменения данных в таблице используется оператор UPDATE.
При использовании оператора UPDATE обычно указывается
следующая информация:
Имя таблицы
Выражение WHERE, определяющее какие строки будут
изменены.
Список столбцов и их значений, определенных с помощью
ключевого слова SET.
С помощью одного и того же запроса UPDATE можно изменить
одну и несколько строк. При изменении нескольких строк
нужно помнить, что новое значение будет применено во всех
строках. Например, следующий запрос UPDATE устанавливает
для столбца last_name значение Orange в строке, чей customer_id
равен 2.
UPDATE customers SET last_name = "Orange"
WHERE customer_id = 2;

30. Удаление данных

УДАЛЕНИЕ ДАННЫХ
Для удаления строк используется оператор DELETE.
Обычно необходимо указать с помощью выражения
WHERE строки, которые необходимо удалить; в
противном случае будут удалены все строки.
Следующий запрос DELETE удаляет из таблицы
покупателей строку, в которой customer_id равен 10:
DELETE FROM customers
WHERE customer_id = 10;
1 row deleted.
SQL*Plus подтверждает, что одна строка была удалена.
Также можно использовать подзапрос с оператором
DELETE. Подзапросы будут рассматриваться в 4-й
лекции.

31. Завершение работы с SQL*Plus

ЗАВЕРШЕНИЕ РАБОТЫ С SQL*PLUS
При использовании операторов INSERT, UPDATE и
DELETE необходимо фиксировать транзакции с помощью
оператора COMMIT, т.к. до момента выхода или
завершении сессии измененные значения хранятся только
во временном пространстве, а не в постоянной базе
данных. Если после подтверждения изменений
необходимо вернуть данные в исходное состояние можно
выполнить оператор ROLLBACK.

Для начала небольшое лирическое отступление. Компания Oracle была создана в 1977 году, в данное время директором компании является Лари Элисон. Компания насчитывает более 36 000 сотрудников (не считая нас пользователей), в более чем 90 странах мира. Годовой оборот компании составляет более 5,2 миллиарда долларов в год! Вот так работают ребята! Для примера сравните с бюджетом России скажем за прошлый год! :) Истории пока хватит.

Переходим к аппаратным требованиям. В принципе Oracle Personal Edition , ставиться на Пентиум 330 и 128 мег озу! Хотя возможно поэкспериментировать и с меньшими объемами, но я настоятельно не советую, так как заработаете "мозговую травму", пытаясь например понять почему все так медленно работает? Например, я на своей службе не имею машин ниже Celeron 1300 и 256 озу. Но это кому как повезет! Значит будем считать, что NT4.0 либо Advanced 2000 у вас установлен и в радостном ожидании встречи с Oracle Server уже все работает.

Сразу оговорюсь, все будем пробовать на платформу NT . Почему? Во-первых, засорять вам мозги операционкой типа AIX , Solaris , Linux , я не буду, тем более, что когда поумнеете и без меня сами разберетесь, а работать с Oracle , что на UNIX , что на NT , с точки зрения клиента особой разницы нет. Просто я хочу без лишних трений попытаться показать Вам всю мощь этой зверюги под именем ORACLE , а там флаг вам в руки, дерзайте изучайте операционные системы и юзайте его по полной!

Еще один щепетильный момент - МелкоМягкие очень не любят все, что производят в конторе Лари Элисона, по этому предупреждаю сразу не стоит эксперементировать и пытаться скрещивать на одном серваке MS SQL и Oracle !!! :(Результаты будут самые плачевные!!! Лучше отдельная машина и веселитесь в свое удовольствие!!! А по поводу какой сервер лучше MS SQL или Oracle , я полемику разводить уж тем более не буду!!! Да и вам не советую!!!

Переходим непосредственно к инсталяции, так как без это начинать работать с Oracle , не имеет особого смысла, а знать этот процесс, на будущее вам пригодиться! Я все поведу от Oracle 8.1.5.0 и вот почему! У меня на руках версия этого сервера наиболее правдоподобная и проверенная, 8.1.7.0 у меня тоже есть, но она имеет мало отличий от первой. Есть у меня и 9i, но для нее у меня еще нет путевого сервака, а посему делайте вывод. Можете отступать от моих инструкций благо я не страдаю манией величия и вообще всем свойственно ошибаться. Все замечания и дополнения будут приниматься дабы увеличить, долю истины в сим мероприятии познания Oracle Server !

Итак, кто не имеет дистрибутива 8.1.5.0 и иже с ними желательно приобрести, либо поспрашивать у друзей и знакомых!!! Кто-нибудь обязательно поможет и я в это искренне верю, время у вас еще есть!!!

Итак, устанавливаем диск в компашник и чутко прислушиваемся к процессу AutoRun ! Ух ты, и что мы видим!?

Oracle Universal Installer - сия прога поможет нам установить и сконфигурировать продукты Oracle на вашем сервере или рабочей станции. Предложение щелкнуть по кнопке "Установленные продукты" советую пропустить и не никуда пока не "щелкать", а просто кликнуть кнопочку "далее" насладившись приятным баннером со словами "Добро пожаловать"!!!

Далее попадаем на экран "Расположение файлов" - здесь думается нужно немного остановиться подробнее: позиция 1 - это то где расположены ваши файлы инсталляции, то есть компакт привод вашей машины, либо что-то еще. Позиция 2 - это системная переменная окружения Oracle , по которым ищутся компоненты сервера или клиента и соответственно путь к этим компонентам. Менять здесь, что либо до поры до времени не советую, но если очень чешутся ручки, можете попробовать, но за последствия не отвечаю!!! :)))))

Итак, кажется началось! Вот оно собственно сам сервер собственной персоной (хорошо, что не нон-грато:). Теперь давайте немного притормозим и разберемся. Позиция 1 указывает на то, что мы выбираем для инсталляции собственно сервер, но это не совсем так, потому что эта же позиция добавит на сервер NT и клиентскую часть, чтобы можно было общаться с сервером Oracle непосредственно с сервера! Во, туфтология началась! Вторая позиция это установка чистого клиента, его еще называют "толстым"! Но об этом чуть позже. И на конец третья позиция, это как не трудно догадаться для программера, дабы он своял нам что-то удобоваримое для работы с сервером!

Усидчивые и те кому я еще не надоел кликайте кнопочку далее и смотрите следующий экран!

А!, вот тоже кое что интересное! Сейчас нам предлагают, выбрать тип установки, пока выбирайте "типовая", она самая простая и задает меньше всего вопросов, а самое главное делает почти все до конца сама и не надоедает всякими глупыми предложениями! Выбирайте ее и не мудрите. Хотя, если кто выберет минимальную, тоже ничего, но вопросы по ходу будете решать сами! А вот пользовательскую пока не советую трогать вообще, так как у вас еще знаний маловато. Жмем далее и смотрим следующий экран!

Здесь советую оставить как есть опция CD-ROM , иначе она вам зафигачит к тем семистам еще 133 метра, на ваш диск! Так что как всегда Далее!!!

Так - ПРИЕХАЛИ!!! Не знаю даже с чего начать! Начнем с первой позиции Global DataBase Name - так как Oracle начиная с версии с буквой -i , означает что доменные имена БД имеют те же правила, что и в Интернете, следовательно получай фашист гранату! Необходимо писать Имя->Дот->Домен, то есть, например vasiapupkin.ru, либо что-то еще что придет в ваше окрыленное моментом сознание! Я написал просто proba.com , так как "он уважать себя заставил и лучше выдумать не мог"! Вторая позиция SID это все кроме .com , то есть имя экземпляра базы глобальное, с ним будет связан еще один момент, но о нем чуть позже! Так что, если здесь не соблюсти схему Имя->Дот->Домен, будете делать все заново!!! А ваш клиент так и не найдет экземпляр вашей базы!

Вот и открылась сводочка, здесь проследите только чтобы язык установки был русский! А он и так русский, вот и славненько!!! Кликать далее завязываем, так как вот он и настал долгожданный миг и со всей силы Жмем "Установка"!!!

Вокруг черной дыры начнет крутиться планета, а прогресбар начнет свое вечное синее движение вправо или голубое, а в прочем какая разница!!! Смотрим и наслаждаемся этим прекрасным зрелищем!!!

Полет планеты продолжается, но нас с вами уже благодарят за выбор сервера (показано стрелочкой) скрывая гордость продолжаем установку сервера!!!

Так, а вот и ответственный момент все вроде бы само собой, но вот именно сейчас рождается экземпляр БД!!! Очень ответственный участок, да пока "накорми собак и ничего не трогай!!!" :))

Ура!!! БД создана экземпляр запущен и готов к приему коннектов! Но вот здесь и начинается самое интересное. Вот это окошко рассказывает о трех танкистах, нет не о тех, что выпили по триста!!! А тех, которые отвечают за Администрирование только что новоиспеченного экземпляра БД!!! НЕ ТОРОПИСЬ НАЖИМАТЬ кнопку ОК!!! Выполни принтскрин и скопируй из буфера в паинтбраш, так я кстати и делал эти скриншоты!!! И вот почему. У этих трех, твои ключи от БД как администратора. Первого зовут sys он старший из братьев, его пароль по умолчанию change_on_install , второго зовут system , пароль по умолчанию manager ! Средний был и так и сяк, а вот младший совсем не дурак!!! Его зовут INTERNAL , его пароль (как его задавать это тема для отдельного шага) - правильно ORACLE ! Кто они такие и с чем их едят, я еще расскажу, пока это все на данный момент, жми OK!

А вот еще один способ, проверить как себя чувствует сервер. Надо открыть "Панель управления - Администрирование - Службы" и найти два сервиса, один в имени заканчивается так же как SID базы, а другой заканчивается TNSListener ! Так вот они должны оба быть запущены и оба стоять Automatic !!! Кто из них, для чего пока разбирать не будем.

А сделаем вот что. Нажмем на первом (...PROBA) правой кнопкой мыши и выберем пункт меню Stop . Надо не забыть запустить Диспетчер задач! Если после того как процесс остановится желтая линия расхода памяти резко опуститься вниз, значит сервер УПАЛ! Нет, вернее просто экземпляр базы остановлен, но в этом нет ничего страшного:)

Теперь там же правой кнопочкой мыши, только на этот раз Start , УРА!!! Память скакнула вверх! Экземпляр снова в работе. База доступна и снова ждет коннектов. Второй сервис пока не отключайте и остальные тоже пока не трогайте, с ними разберемся позже! Вот отсюда напрашивается вывод! Весь экземпляр БД живет в ОЗУ!!! И это одна из особенностей сервера Oracle ! А, особенностей у него уйма в чем мы и убедимся в дальнейшем! На этом с установкой пока все!



Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: