Программа оракл как работать

Конечно, переопределение таблицы не приводит автоматически к обновлению какого бы то ни было прикладного кода, который обращается к этой таблице. Приложения должны быть изменены и протестированы отдельно. Однако то, что делает DBMS_REDEFINITION, сокращает время, в течение которого таблица недоступна пользователям во время переключения.

Убеждение № 10: только владелец таблицы может предоставить разрешение на ее использование

Когда я объяснял организацию безопасности Oracle в предыдущих версиях, клиенты не могли поверить, что АБД не мог предоставить разрешение на таблицу, если владелец таблицы сначала не предоставит его АБД. Тем не менее, исторически это действительно имело место. Ограничение было частью дизайна Oracle, но это делало администрирование трудным. В Oracle 9 i новая системная привилегия изменяет такое положение вещей.

Теперь роль АБД имеет системную привилегию по имени GRANT ANY OBJECT PRIVILEGE. В прошлом оператор типа

GRANT SELECT ON scott.emp TO giselle;

Урок 1 — Введение в Oracle APEX

завершился бы неудачей, если SCOTT не предоставил сначала АБД привилегию SELECT WITH GRANT OPTION на его таблицы. Теперь, тот же самый оператор будет работать. Эта привилегия может также использоваться ведущими разработчиками, чтобы предоставить разрешение на объекты схемы, не имея необходимости регистрироваться, как владелец этой схемы.

Убеждение № 11: единственными подстановочными знаками в SQL являются % и _

Делая запросы на соответствие шаблону с оператором LIKE, как АБД, так и разработчики учились мириться с наличием в их распоряжении всего двух групповых символов: процента (%), который соответствует чему угодно, и символу подчеркивания (_), который соответствует одному любому символу. Для обеспечения более сложного соответствия им приходилось писать на PL/SQL.

Начиная с Oracle 10 g , подобное дополнительное кодирование перестало быть необходимым. Полный набор синтаксиса регулярных выражений, типа того, что используется в UNIX для создания сценариев, теперь доступен непосредственно в SQL. Oracle поддерживает полный набор расширенных регулярных выражений (Extended Regular Expressions – ERE) стандарта POSIX. Перечень этих выражений можно найти в Приложении C к документу Oracle 10 g SQL Reference.

Оператор REGEXP_LIKE заменяет LIKE, и регулярное выражение должно быть заключено в круглые скобки и в одиночные кавычки. Например, следующая фраза WHERE ищет A1, A2, или A3, встречающиеся только в начале номера детали:

WHERE REGEXP_LIKE (partno, ‘^A[123]’)

Обратите внимание, что в конце регулярного выражения не требуется групповой символ *. В отличие от групповых символов, используемых с оператором LIKE, регулярные выражения предполагают частичное соответствие, если Вы не установите в принудительном порядке полного соответствия. Таким образом, вышеупомянутому выражению будет соответствовать “A1” и “A3”, но также и “A234”. Чтобы вызвать точное соответствие, используйте знак $, чтобы указать конец строки:

Курс SQL Базы данных ORACLE. Илья Хохлов. Урок 1-1. Реляционные базы данных

WHERE REGEXP_LIKE (partno, ‘^A[123]$’)

Функции REGEXP_INSTR, REGEXP_SUBSTR и REGEXP_REPLACE расширяют функции INSTR, SUBSTR и REPLACE, чтобы использовать регулярные выражения в параметре соответствия. И снова, описание этого можно найти в документе Oracle 10 g SQL Reference.

Убеждение № 12: вы должны перестроить таблицу, чтобы сбросить ее маркер максимального заполнения

Конечные пользователи часто задаются вопросом, почему поиск в таблице с небольшим количеством строк может отнять довольно много времени. АБД знает, что, если в таблице когда-то было большое количество строк, поиск может замедлиться, потому что Oracle должен просмотреть каждый блок, в котором когда-либо содержались данные – вплоть до маркера максимального заполнения таблицы (High Water Mark – HWM). Кроме того, они могут также полагать, что единственный способ сбросить значение HWM состоит в том, чтобы повторно создать таблицу, либо посредством экспорта/удаления/импорта, либо с помощью команды ALTER TABLE MOVE.

Читайте также:
Программа психологическая подготовка к егэ

В 10 g это больше не является необходимым. Новая опция, названная Online Segment Shrink (оперативное сжатие сегмента), может возвратить свободное пространство в таблице, а также скорректировать вниз HWM. Синтаксис опции:

ALTER TABLE имя_таблицы SHRINK SPACE [COMPACT] [CASCADE];

Задание этой команды без опций приводит к дефрагментации таблицы и уплотнению ее строк. Затем HWM корректируется к новой высокой позиции и освобождает высвободившееся пространство.

Опция COMPACT проводит дефрагментацию, но не корректирует HWM, и не освобождает высвободившееся пространство. Опция CASCADE сжимает не только названную таблицу, но и любые зависимые объекты, например, индексы.

А теперь то, о чем обычно говорится “мелким шрифтом”. Табличное пространство, в котором хранится таблица, должно быть установлено для автоматического управления пространством в сегментах (Automatic Segment Space Management), а для самой таблицы должно быть активировано перемещение строк. Поскольку перемещенные строки будут иметь новый ROWID, Вы должны отключить любые триггеры, которые срабатывают на основании ROWID, или они будут выполнены повторно. Имеются также и другие ограничения: проконсультируйтесь в документации.

Убеждение № 13: неполные восстановления требуют восстановления старых файлов данных

АБД Oracle знают, что Oracle полностью восстанавливает себя (recovers) после отказа экземпляра при последующем запуске, а от физических отказов, типа отказов носителя, с помощью команды RECOVER в RMAN или в SQL*Plus. Однако, они полагают, что когда происходит логическое повреждение, то единственным способом помочь может быть восстановление файлов базы данных с резервных копий, снятых до того, как произошла проблема, и “накат вперед” (roll forward) к требующемуся времени через журналы.

В Oracle 10 g стал возможен другой вариант: откатывать базу данных к моменту времени перед повреждением, используя текущие файлы данных. Эта возможность может сэкономить много времени в сценарии неполного восстановления.

Опция Flashback, введенная в Oracle 9 i, была поразительно расширена в 10 g путем введения опции FLASHBACK DATABASE (доступной и как команда в RMAN, и как оператор в SQL*Plus). При надлежащей настройке Вы можете теперь восстановить базу данных, прокручивая ее назад от ее текущего состояния, вместо того, чтобы прокручивать ее вперед от старой копии-отображения. Это может быть намного быстрее, поскольку работа ведется с существующими файлами данных. Не требуется восстановления никаких старых версий.

  1. Отведите для области группового восстановления (flash recovery area) на диске достаточно большой экстент, чтобы хранить в нем журналы Flashback и другие резервные копии RMAN, типа управляющих файлов. Задайте параметры DB _RECOVERY_FILE_DEST и DB_RECOVERY_FILE_SIZE, чтобы указать экземпляру, где ее можно найти.
  2. . Установите параметр DB_FLASHBACK_RETENTION_TARGET равным максимальному числу минут, на которое Вы хотели бы быть в состоянии возвратиться в прошлое.
  3. Активируйте опцию Flashback, когда база данных будет в режиме монтирования (MOUNT), используя команду ALTER DATABASE FLASHBACK ON. После этого переведите (ALTER) базу данных в режим OPEN. База данных начнет автоматически копировать измененные блоки на регулярной основе в область ретроспективного восстановления. Думайте об этом, как о непрерывном инкрементальном резервировании на уровне блоков.
  1. Переведите экземпляр в режим MOUNT
  2. Соединитесь с экземпляром в RMAN и используйте команду FLASHBACK DATABASE. Эта команда определяет местонахождение самых свежих изображений блока, предшествующих запрашиваемому Вами времени ретроспекции, и восстанавливает их. После этого она использует журнальные файлы, чтобы выполнить накат вперед к точному времени ретроспекции. Поскольку блоки копируются достаточно часто, потребуется выполнить намного меньше работы, чтобы сделать этот блок актуальным. Плюс к этому, удается избежать потерь времени на восстановление файлов данных.

Эта методика подходит не для каждого экземпляра, но, как и с любым страховым полисом, Вы регулярно выплачиваете небольшие суммы, чтобы избежать намного больших выплат в случае, если проблема все-таки произойдет. Для получения дополнительной информации обратитесь к документу Oracle Database Backup and Recovery Advanced User’s Guide, Глава 9 (“Flashback Technology: Recovering from Logical Corruptions”).

Читайте также:
Программа торговый дом как пользоваться

Убеждение № 14: табличные пространства могут транспортироваться только на ту же самую платформу

Опция переносимого табличного пространства, введенная в Oracle 8 i , позволяет непосредственно копировать файлы данных из одного экземпляра в другой. Поскольку различные операционные системы используют для хранения данных различный порядок байтов (“endianness”), многие АБД полагают, что Вы не можете транспортировать табличные пространства в экземпляр с другим размером блока или на другую аппаратную платформу.

В Oracle 9 i ушли проблемы с размером блока, потому что было разрешено иметь в одном экземпляре несколько размеров блока. В Oracle 10 g точно так же ушла и проблема endianness (порядка следования байтов), потому что Вы можете использовать RMAN, чтобы преобразовать порядок следования байтов для данных. В результате получается копия файла данных, предназначенная для определенной операционной системы. Когда такие файлы транспортируются, они уже находятся в правильном формате, необходимом для включения их в другой экземпляр.

Для этого используется команда RMAN CONVERT. Например:

CONVERT TABLESPACE example TO PLATFORM ‘HP-UX (64-bit)’;

Представление V$TRANSPORTABLE_PLATFORMS содержит информацию, о том, какие платформы являются совместимыми, а для каких требуется использовать команду CONVERT.

В главе 8 (“Управление табличными пространствами”) документа Database Administrator’s Guide можно найти дополнительные детали относительно транспортировки табличных пространств.

Убеждение № 15: роли CONNECT, RESOURCE и DBA – это удобный способ создания пользователей

Многие АБД все еще используют роли CONNECT, RESOURCE и DBA для создания новых учетных записей пользователей, как в автоматизированных сценариях, так и при работе вручную, просто по привычке. Иногда вещи, от которых мы должны отвыкнуть – это такие простые и удобные вещи, как старая трикотажная рубашка или пара старых, давно износившихся ботинок. Эти доставшиеся нам в наследство роли были введены еще в Oracle 7 – да-да, уже три основные версии назад – как мост между простой моделью защиты Oracle 6 и более детальной, которую мы получили с тех пор. Но это – все, что у них есть: временное удобство.

Принцип наименьшего количества привилегий в компьютерной безопасности утверждает, что пользователи должны иметь только минимальные привилегии, необходимые для выполнения поручаемых им заданий. Роль CONNECT, например, включает системные разрешения, типа CREATE TABLE и CREATE SEQUENCE, вещи, в которых вряд ли будет нуждаться большинство конечных пользователей. Роль RESOURCE содержит мощную привилегию UNLIMITED TABLESPACE, которая отменяет систему квот табличного пространства.

Более эффективно было бы проанализировать требования различных ролей заданий и в соответствии с этими требованиями создать заказные роли. Предоставьте этим ролям необходимые системные и объектные привилегии, а затем предоставьте роли пользователям. Предоставьте пользователям квоты для табличных пространств только в тех случаях, если они будут создавать в этих табличных пространствах объекты. (Хотя квоты должны быть установлены непосредственно для пользователей, а не для ролей, Вы можете упростить процесс в Enterprise Manager путем использования команды «Create like», чтобы клонировать существующую учетную запись пользователя.)

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

Источник: www.oszone.net

Читайте также:
Как автоматически запустить программу в определенное время

Oracle PL/SQL. Для профессионалов.

Данная книга является подробнейшим руководством по языку PL/SQL, представляющему собой процедурное языковое расширение для SQL. В ней детально рассмотрены основы PL/SQL, структура программы, основные принципы работы с программными данными, а также методика применения операторов и инструкций для доступа к реляционным базам данных. Большое внимание уделяется вопросам безопасности, влиянию объектных технологий на PL/SQL и интеграции PL/SQL с XML и Java. За последние 18 лет, в течение которых переиздается эта книга, она стала незаменимым руководством по PL/SQL для сотен тысяч программистов, как начинающих, так и профессионалов. Шестое издание книги полностью обновлено под версию Oracle12c.

Thumbnails Document Outline Attachments Layers

Current Outline Item

Highlight All Match Case

Match Diacritics Whole Words

Presentation Mode Open Print Download Current View

Go to First Page Go to Last Page

Rotate Clockwise Rotate Counterclockwise

Text Selection Tool Hand Tool

Page Scrolling Vertical Scrolling Horizontal Scrolling Wrapped Scrolling

No Spreads Odd Spreads Even Spreads

Источник: www.kavserver.ru

Что такое Oracle?

Oracle – это система управления базами данных (СУБД), которая была создана одноименной компанией. Её основал Ларри Эллисон, который родился в США 1994 года от девятнадцати летней еврейки, муж которой ее бросил еще до появления ребенка. В конце семидесятых этот человек создал первую версию системы, ее назвали Oracle версия 2. Именование продукта было взято из одного из проектов ЦРУ, остановка от работы над ним заставила Ларри подыскать работу получше. Стартовая версия сего продукта была написана на assembler, который вскоре заменили. Был выбран язык Си для написания последующих версий, ибо Паскаль был дороже по лицензии, а про Аду ничего не известно, хоть и была популярной в те времена.

Ларри очень был категоричным к СССР, писав в 1988 году, что в матушку-Россию эта СУБД попадет лишь с ядерными бомбами, ведь Oracle была на счету Министерства обороны США. Первая незаконная русификация СУБД очень огорчила дядю Ларри, который принял меры к наказанию этих ребят-энтузиастов. Но в настоящее время очень активно используются продукты этой компании как Java, Virtual Box и Oracle DataBase.

Смешной факт таков, что компания очень «эффективно» боролась с терроризмом, ведь любой пользователь кто бы ни качал с сайта версию программы, обязан был поставить галочку под соглашением, что он не террорист и не будет использовать программу для незаконных действий.

Основное что известно об этой компании, что она в 2009 году поглотила Sun Microsystems вместе с правами на язык программирования Java и другими пирожками. Уволили с Ларри-несогласных людей, позакрывав кучу проектов, например OpenSolaris. Хотел придушить еще OpenOffice, но это у него, к счастью, не получилось. Довольствовался лишь сменой названия на LibreOffice.

Спустя 10 лет со времени создания корпорации Ларри все еще проводил собеседования абсолютно с каждым новым сотрудником, пришедшем в эту компанию.

На сегодняшний день компания Oracle является лидером на рынке разработки ПО для управления данными и вторым по масштабу независимым производителем различного полезного софта. Трудно представить программиста на Java, который ничего не знает об этой корпорации. Но их главный продукт Oracle DataBase занимает достойное место среди различных систем управления базами данных, которые используются чуть ли не на каждом предприятии. А основатель компании Ларри Элиссон в 2010 году был на шестой позиции в мировом рейтинге миллиардеров. Его состояние измерялось в двадцать семь миллиардов долларов США, и, судя по темпам развития компании, его достаток будет лишь расти.

Источник: support-rb.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru