Большой архив статей, книг, документации по программированию, вебдизайну, компьютерной графике, сетям, операционным системам и многому другому
 
<Добавить в Избранное>    <Сделать стартовой>    <Реклама на сайте>    <Контакты>
  Главная Документация Программы Обои   Экспорт RSS E-Books
 
 

  Раздел: Компьютерная документация -> Базы данных -> Oracle

 

XML DB - новое измерение в организации данных в Oracle

... К несчастию, никак не мог прибрать рифмы для
лядунок и киверов; итак, пусть будет это в прозе.
А. С. Грибоедов, Письмо из Бреста Литовского к издателю «Вестника Европы»

Аннотация

XML DB представляет собой набор средств и возможностей СУБД и БД в Oracle, ориентированный на работу с форматом XML как по части преобразования, так и хранения данных. Для изначально таблично-организованной базы данных XML DB открывает новый способ хранения и употребления данных, сочетающийся с табличным. В этой статье рассматриваются темы установки XML DB в существующую БД и организации внешнего доступа. В последующих статьях будут показано, какие возможности дает установленная XML DB.

Введение

В версии 9.2 в Oracle появилась XML DB - набор средств и возможностей СУБД и БД в Oracle, ориентированный на работу с форматом XML как по части преобразования, так и хранения данных. По сути, XML DB дополнила традиционную для Oracle табличную организацию хранения и доступа к данным новыми видами организации и доступа. Это не может не интересовать разработчика, поскольку XML все увереннее завоевывает себе место в информационных системах.

Возможности XML DB были развиты в версии 10, а судя по просачивающимся сведениям, получат дальнейшее развитие и в версии Oracle 11, существующей сегодня в бета-варианте и возможно планируемой к выпуску в 2007 году.

В этой статье рассказано, как можно установить XML DB в своей БД и как наладить внешнее взаимодействие с ней. В следующих статьях будет рассказано, как при установленной XML DB работать с репозитарием, регистрировать и использовать схему XML и создавать сервлеты в СУБД для досупа к данным.

Большинство возможностей Oracle XML DB, обозначенных ниже, обеспечены уже в версии Oracle 9.2.0.2, однако в некоторых технических подробностях могут иметься отличия по отношению к более поздним версиям.

Установка и убирание XML DB

Мура туфельку снимала,
В огороде закопала:
- Расти, туфелька моя,
Расти, маленькая !
Корней Чуковский,
Что сделала Мура, когда ей прочли сказку
"Чудо-дерево"

Установка XML DB может выполняться средствами Database Configuration Assistant (DBCA), либо вручную. Типовой вариант БД, начиная с версии 9.2, включает предустановленную XML DB и не требует дополнительной установки.

Узнать о наличии установленной XML DB и готовности к работе можно так:

SQL> CONNECT / AS SYSDBA
Connected.
SQL> SELECT count ( * )
  2  FROM dba_objects
  3  WHERE owner = 'XDB' AND status = 'INVALID';

  COUNT(*)
----------
         0

SQL> COLUMN comp_name FORMAT A30
SQL> SELECT comp_name, status, version
  2  FROM dba_registry
  3  WHERE comp_name = 'Oracle XML Database';

COMP_NAME                      STATUS      VERSION
------------------------------ ----------- ------------
Oracle XML Database            VALID       10.2.0.1.0

При полученных выше ответах может потребоваться, однако, разблокировать подключение к СУБД (уже имеющемуся) пользователю XDB, например:

ALTER USER xdb ACCOUNT UNLOCK IDENTIFIED BY xdb;

Если же в существующей БД XML DB не установлена, вручную это можно сделать следующей последовательностью действий от имени SYS:

  1. Завести табличное пространство для нужд пользователя XDB (желательно).
  2. Прогнать сценарий catqm.sql заведения необходимой инфраструктуры в БД (реестр XML DB, служебные пакеты PL/SQL и пр.):
    SQL> @?/rdbms/admin/catqm пароль_для_XDB 
    табличное_пространство_для_XDB 
    табличное_пространство_для_временных данных_XDB
    
  3. Прогнать сценарий catqm.sql заведения необходимых библиотек на Java и типов (они могут иметься и без этого):
    SQL> @?/rdbms/admin/catxdbj
  4. Прогнать сценарий создания пакетов из состава XDK (по желанию):
    SQL> @?/rdbms/admin/initxml
  5. Выполнить SHUTDOWN и STARTUP.

Для убирания из БД XML DB достаточно выполнить от имени SYS:

  1. SQL> @?/rdbms/admin/catnoqm
  2. SHUTDOWN и STARTUP

Пользователь XDB и сопутствующие пакеты будут удалены.

Как открыть доступ к репозитарию по протоколам HTTP и FTP

Результатом заведения XML DB в базе явилось появление в ее составе так называемого репозитария XML DB, фактически - файловой системы. Для работы с репозитарием извне возможно и удобно открыть доступ по протоколам HTTP и FTP.

Действия по открытию доступа

Во-первых, требуется удостовериться в нужных значениях параметров СУБД DISPATCHERS (обязательно) и LOCAL_LISTENER (при наличии нескольких процессов listener). Установка нужных значений может быть выполнена так:

ALTER SYSTEM 
SET dispatchers = '(PROTOCOL=TCP)(SERVICE=ORCLXDB)' 
SCOPE = SPFILE
;

ALTER SYSTEM 
SET local_listener =
'(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521))' 
;

При этом указываемое значение SERVICE формируется как имя_СУБДXDB (здесь считается, что INSTANCE_NAME = ORCL), а значения HOST и PORT соответствуют местонахождению и месту приписки процесса listener (когда этих процессов несколько - того, что будет обслуживать доступ через HTTP). В работе, получив заявку на соединение с XML DB, процесс listener передаст ее дистпетчеру, а тот - одному из общественных (shared) серверных процессов.

Во-вторых, требуется назначить или переназначить (при необходимости) порты для публичного доступа по HTTP и FTP. Порты по умолчанию соответственно 8080 и 2100, однако, начиная с версии 10.2, они изначально выставлены в 0. Для переустановки (а с версии 10.2 - для установки) требуется выполнить от имени SYS:

EXECUTE DBMS_XDB.SETFTPPORT ( 2100 )
EXECUTE DBMS_XDB.SETHTTPPORT ( 8080 )
ALTER SYSTEM REGISTER;

Выдача последней команды некритична. После этого по некоторым рекомендациям нужно перезапустить СУБД:

SQL> SHUTDOWN IMMEDIATE
SQL> STARTUP

В ОС следует выдать:

>lsnrctl status

Ожидаемый результат должен выглядеть примерно так:

...
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1ipc)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=FLEXIT-V3TNTGIS)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=FLEXIT-V3TNTGIS)
  (PORT=8080))(Presentation=HTTP)(Session=RAW))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=FLEXIT-V3TNTGIS)
  (PORT=2100))(Presentation=FTP)(Session=RAW))
Services Summary...
Service "PLSExtProc" has 1 instance(s).
  Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
Service "orcl" has 1 instance(s).
  Instance "orcl", status READY, has 1 handler(s) for this service...
Service "orclXDB" has 1 instance(s).
  Instance "orcl", status READY, has 1 handler(s) for this service...
...

В версии 10.2 появится также информация о службе имя_СУБД_XPT. При желании ее можно отключить скрытым параметром СУБД, однако ж и ее наличие не мешает обычной работе.

Проверка доступа по FTP

Проверка доступа к репозитарию- возможно наиболее эффектный шаг в освоении XML DB. Для FTP может выполняться двояко.

(А) Проверка средствами командной строки ОС:
>ftp
ftp> open localhost 2100
Connected to FLEXIT-V3TNTGIS.
220- FLEXIT-V3TNTGIS
Unauthorised use of this FTP server is prohibited and may 
be subject to civil and criminal prosecution.
220 FLEXIT-V3TNTGIS FTP Server (Oracle XML DB/Oracle Database) ready.
User (FLEXIT-V3TNTGIS:(none)): xdb
331 pass required for XDB
Password:
230 XDB logged in
ftp> ls
200 PORT Command successful
150 ASCII Data Connection
home
public
sys
xdbconfig.xml
226 ASCII Transfer Complete
ftp: 34 bytes received in 0,39Seconds 0,09Kbytes/sec.
ftp> get xdbconfig.xml
200 PORT Command successful
150 ASCII Data Connection
226 ASCII Transfer Complete
ftp: 11612 bytes received in 0,61Seconds 19,07Kbytes/sec.
ftp> bye
221 QUIT Goodbye.

Жирным шрифтом выделены команды, набранные пользователем (набор пароля для пользователя XDB на экране не отразился). По результату этих действий из репозитария XML DB в текущий каталог ОС скопировался файл xdbconfig.xml. Подключиться по FTP к репозитарию XML DB можно было и под любым другим именем пользователя Oracle, однако не все пользователи смогут совершать все операции с имеющимися файлами.

Упражнение:

  1. Проверить появление в текущем каталоге ОС файла xdbconfig.xml.
  2. Подключиться по FTP под именем SCOTT и удостовериться в невозможности извлечь файл из XML DB.
(Б) Проверка средствами браузера MS IE:

Войти в браузер MS IE, набрать в поле адреса следующие варианты и проверить работу:

Проверка доступа по HTTP

Войти в браузер Web, набрать в поле адреса следующие варианты и проверить работу:

Обратите внимание на доступность текстового вида страниц.

Организация доступа по WebDAV в Windows

При установленном доступе по HTTP, Oracle поддерживает также основанное на этом протоколе средство WebDAV (Web-based Distributed Authoring and Versioning, http://techinfo.net.ru/webdav.html). ОС Windows обеспечивает клиентский доступ к серверу WebDAV, позволяя обращаться к репозитарию XML DB как к каталогу собственной файловой системы.

Заведение каталога в Windows на основе доступа по WebDAV

Действия в Windows:

  1. Открываем форму My Network Places. Это пожно сделать через Internet Explorer или через форму Network Connections в установках компьютера.
  2. Открываем форму Add a network place. Входим в помошник установки (wizard)
  3. Выбираем Choose another network connect. Вводим адрес http://localhost:8080/. В появившемся окошке вводим имя и пароль пользователя Oracle, например xdb/xdb. Указываем имя сетевого соединения, например: XML DB Repository. Снимаем «галочку» с позиции выбора Open this network place … (необязательно) и нажимаем Finish.

Соединение заведено. Войти в репозитарий можно, нажав дважны на имя «каталога» XML DB Repository.

Проверка доступа

Подключиться в Windows Explorer к сетевому ресурсу с именем 'XML DB Repository' и копировать файлы между репозитарием XML DB и файловой системой ОС методом Drag and Drop.

Доступ по WebDAV обеспечивает не обязательно только Windows Explorer, но и целый ряд продуктов разных фирм.

Автор: Владимир Пржиялковский
Источник:www.ccas.ru/prz/

Ссылки по теме
Как организовать двойную парольную защиту данных в Oracle
Oracle Database 10g: интеграция и способность информации к соединению
Так как же восстановить данные таблицы?
Заморочки от Oracle, или знать бы, где упасть
Моделирование групп объектов в Oracle

Вся документация по Oracle

 

Компьютерная документация от А до Я - Главная

 

 
Интересное в сети
 
10 новых программ
CodeLobster PHP Edition 3.7.2
WinToFlash 0.7.0008
Free Video to Flash Converter 4.7.24
Total Commander v7.55
aTunes 2.0.1
Process Explorer v12.04
Backup42 v3.0
Predator 2.0.1
FastStone Image Viewer 4.1
Process Lasso 3.70.4
FastStone Image Viewer 4.0
Xion Audio Player 1.0.125
Notepad GNU v.2.2.8.7.7
K-Lite Codec Pack 5.3.0 Full


Наши сервисы
Рассылка новостей. Подпишитесь на рассылку сейчас и вы всегда будете в курсе последних событий в мире информационных технологий.
Новостные информеры. Поставьте наши информеры к себе и у вас на сайте появится дополнительный постоянно обновляемый раздел.
Добавление статей. Если вы являетесь автором статьи или обзора на тему ИТ присылайте материал нам, мы с удовольствием опубликуем его у себя на сайте.
Реклама на сайте. Размещая рекламу у нас, вы получите новых посетителей, которые могут стать вашими клиентами.
 
Это интересно
 

Copyright © CompDoc.Ru
При цитировании и перепечатке ссылка на www.compdoc.ru обязательна. Карта сайта.