ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 12.04.2021
Просмотров: 1855
Скачиваний: 3

!
16
Пр
акт
ич
еск
ое
зан
ят
ие
2.
Ос
но
вн
ые
ути
ли
ты
!
!
E-
:
mar
ket
@re
lex.r
u
ЗАО
5.
В
диалоге
создания
таблицы
зададим
имя
таблицы
и
ее
столбцы
.
6.
Нажмем
на
кнопку
Ok
,
таблица
будет
создана
,
и
обновится
ветка
таблиц
в
дереве
.
Задача
2.
Добавление
пользователя
,
изменение
привилегий
доступа
к
таблице
.
1.
Запустим
утилиту
:
lindeskx
Если
утилита
запущена
без
параметров
,
то
необходимо
:
2.
Открыть
узел
Серверы
–
при
этом
появится
список
доступных
узлов
.
3.
Открыть
узел
сервера
,
с
которым
необходимо
установить
соединение
.
4.
В
диалоге
создания
соединения
указать
имя
пользователя
,
пароль
,
и
режим
обработки
транзакций
и
нажать
кнопку
Ok
.
5.
В
контекстном
меню
узла
Пользователи
выберем
пункт
Добавить
.
6.
В
диалоге
создания
пользователя
укажем
все
его
параметры
и
нажмем
кнопку
Ok
.
7.
В
подветке
Таблицы
выберем
таблицу
,
которой
следует
изменить
доступ
,
и
откроем
ее
узел
.
8.
Дважды
щелкнем
ЛК
мыши
на
узле
Дискреционный
доступ
.
9.
В
диалоге
дискрецинного
доступа
установим
флаги
для
тех
типов
доступа
и
тем
пользователям
,
которые
будут
разрешены
.
Задача
3.
Настройка
аудита
.
Просмотр
протоколируемых
событий
.
1.
На
узле
Соединение
в
контекстном
меню
вызовем
пункт
Настройки
протоколирования
(
предварительно
должен
быть
выполнен
скрипт
dict\security.sql)
.
2.
В
диалоге
выставим
флаг
Протоколировать
и
нажмем
кнопку
Ok
.
3.
На
узле
Соединение
в
контекстном
меню
вызовем
пункт
Протокол
.
4.
В
данном
диалоге
можно
:
•
задавать
протоколируемые
события
;
•
просматиривать
список
произошедших
событий
.
5.
Добавим
событие
Создание
таблицы
для
пользователя
SYSTEM.
6.
Закроем
диалог
.
7.
Создадим
таблицу
.
8.
Просмотрим
список
запротоколированных
событий
–
в
нем
появится
запись
о
событии
создания
таблицы
.
Задача
4.
Написание
и
выполнение
SQL-
запросов
.
1.
Запустим
утилиту
,
создадим
соединение
под
пользователем
SYSTEM.
2.
В
главном
меню
выберем
пункт
Вид
|
Расширенный
редактор
запросов
.
3.
В
появившемся
окне
можно
выполнять
редактировать
один
или
несколько
запросов
,
исполнять
их
все
,
или
только
текущий
запрос
(
в
тексте
котого
стоит
курсор
),
просматривать
список
ошибок
,
просматривать
результаты
выборки
.
4.
Выполним
запрос
:
select $$$S13, $$$S34 from $$$SYSRL, $$$USR where $$$S11 =
$$$S31;
5.
Просмотрим
список
выбранных
таблиц
с
именами
их
владельцев
.
Задача
5.
Просмотр
производительности
ядра
.
1.
Запустим
утилиту
,
создадим
соединение
под
пользователем
SYSTEM.
2.
У
узла
Соединение
вызовем
пункт
меню
Производительность
.

!
!
Пр
акт
ич
еск
ое
зан
ят
ие
2.
Ос
но
вн
ые
ути
ли
ты
!
17
E-
:
mar
ket
@re
lex.r
u
ЗАО
3.
В
появившемся
диалоге
просмотрим
динамику
изменения
шести
параметров
производительности
ядра
.
Задача
6.
Просмотр
производительности
канала
.
Удаление
канала
.
1.
Запустим
утилиту
,
создадим
соединение
под
пользователем
SYSTEM.
2.
Окроем
ветку
Каналы
.
3.
У
узла
Канал
вызовем
пункт
меню
Производительность
.
4.
В
появившемся
диалоге
просмотрим
динамику
изменения
шести
параметров
производительности
канала
.
5.
Для
закрытия
канала
вызовем
пункт
меню
Удалить
у
узла
Канал
.
Задача
7.
Работа
с
мандатным
доступом
.
1.
Создадим
таблицы
для
групп
и
уровней
доступа
–
для
этого
откроем
в
Расширенном
Редакторе
Запросов
файл
extsec.sql
и
выполним
все
его
запросы
.
2.
Добавим
в
подветвь
Группы
несколько
групп
доступа
,
назовем
их
«
Операторы
»,
«
Информаторы
»
и
«
Аналитики
».
3.
Добавим
в
подветвь
Уровни
несколько
уровней
доступа
,
назовем
их
«
Несекретно
», «
ДСП
»
и
«
Секретно
»
с
идентификаторами
1, 2, 3
соответственно
.
4.
Добавим
в
подветвь
Пользователи
несколько
пользователей
,
и
назначим
им
разные
уровни
и
группы
доступа
(
информаторам
–
чтение
«
несекретно
»,
запись
«
секретно
»;
аналитикам
все
«
секретно
»;
операторам
все
«
ДСП
»).
5.
Обновим
список
групп
,
нажав
F5
на
узле
Группы
.
6.
Откроем
узлы
групп
и
посмотрим
,
какой
пользователь
принадлежит
какой
группе
;
7.
Создадим
три
таблицы
и
наложим
на
них
разные
уровни
доступа
.
8.
Создадим
три
соединения
под
пользователями
различных
типов
.
9.
Попробуем
различными
пользователями
вносить
,
просматривать
данные
.

!
!
!
18
E-mail: market@relex.ru
ЗАО
НПП
«
РЕЛЭКС
»
http://www.relex.ru
Практическое
занятие
3
Загрузка
и
выгрузка
данных
Практика
1
час
,
при
повторной
проверке
2
часа
(
Лекция
3)
На
занятии
будут
рассмотрены
возможности
пакета
СУБД
ЛИНТЕР
по
загрузке
и
выгрузке
данных
в
различные
форматы
:
•
текстовый
файл
с
разделителями
;
•
XML;
•
DBF;
•
HTML;
•
SQL-
схемы
данных
.
Будет
проведен
обзор
средств
для
экспорта
-
импорта
данных
и
схем
данных
.
3.1.
Обзор
средств
для
экспорта
-
импорта
данных
Ниже
в
таблице
перечислены
основные
утилиты
пакета
СУБД
ЛИНТЕР
и
их
возможности
по
экспорту
-
импорту
данных
.
В
дальнейшем
будут
рассмотрены
утилиты
dbstore
и
loarel.
3.2.
Экспорт
данных
Для
экспорта
данных
из
базы
в
файлы
форматов
TXT, HTML, XML,
а
также
схем
данных
существует
специализированная
утилита
dbstore.
Она
предоставляет
интерфейс
командной
строки
и
существует
на
всех
программно
-
аппаратных
платформах
,
поддерживаемых
СУБД
ЛИНТЕР
.
Полный
формат
командной
строки
запуска
утилиты
:
Имп
Эксп
Название
утилиты
ОС
txt
dbf
xml
sql odbc
txt
html
xml
sql
odbc
loarel
все
+
-
+
+
-
-
-
-
-
-
dbf2lin
все
-
+
-
-
-
-
-
-
-
-
dbstore
все
-
-
-
-
-
+
-
+
+
-
ldba
все
+
+
+
+
-
+
+
+
+
-
lindesk
Win32
+
+
+
+
-
+
+
+
+
-
lindeskx
Linux, Free
BSD, Sun
Solaris, Win32
+
+
+
+
-
+
+
+
+
-
migration
Linux, Free
BSD, Sun
Solaris, Win32
+
+
+
+
-
+
+
+
+
-
datariver
Win32
-
-
-
-
+
-
-
-
-
+

!
!
Пр
акт
ич
еск
ое
зан
ят
ие
3.
Заг
руз
ка
и
вы
гру
зка
дан
ны
х
!
19
E-
:
mar
ket
@re
lex.r
u
ЗАО
DBSTORE [-u NAME/PASSWORD] [-d DIRNAME] [-n NODE]
[-o [D][B][T][S][F][M]] [-ot [TABLENAME[,...]]]
[-r RESERVEDPAGES] [-otrig [TRIGNAME[,...]]]
[-op [PROCNAME[,...]]] [-ou [USERNAME[,...]]]
[-or [ROLENAME[,...]]] [-ov [VIEWNAME[,...]]]
[-os [SYNONAME[,...]]] [-oq [SEQNAME[,...]]] [-s]
[-xml] [-version] [-?] [-end] [-w OWNERNAME]
Другими
словами
,
при
старте
должны
быть
указаны
параметры
соединения
(
узел
,
пользователь
,
его
пароль
).
Все
остальные
параметры
являются
необязательными
,
и
по
умолчанию
утилита
создаст
директорию
DB_STORE
в
своей
директории
,
и
выгрузит
туда
в
текстовом
формате
схему
базы
данных
и
всю
информацию
.
Ключ
–d
позволяет
задавать
директорию
,
куда
следует
выгружать
данные
.
Ключ
–o
позволяет
задать
опции
сохранения
:
метод
выгрузки
данных
,
включение
выгрузки
не
только
схемы
,
но
и
данных
.
Ключи
–t, -ot, -ou, -or, -ov
и
т
.
д
.
позволяют
произвести
выборочную
выгрузку
объектов
базы
данных
.
Ключ
–l
указывает
,
что
для
таблицы
следует
выгружать
только
данные
.
При
этом
может
использоваться
ключ
–f,
указывающий
имя
файла
,
куда
следует
выгружать
данные
таблицы
.
Ключ
–xml
указывает
,
что
данные
таблиц
должны
выгружаться
в
XML
формат
.
Задача
1.
Выгрузить
всю
базу
данных
,
с
сохранением
данных
таблиц
в
формате
XML.
1.
Запустим
ядро
;
2.
Создадим
в
рабочей
директории
(
пусть
она
называется
/home/linter/prac3)
директорию
dbstore_xml;
3.
Зайдем
в
директорию
,
содержащую
dbstore;
4.
Запустим
процесс
экспорта
данных
командой
:
./dbstore –u SYSTEM/MANAGER –d /home/linter/prac3/
dbstore_xml –xml
Задача
2.
Выгрузить
схему
базы
данных
.
1.
Создадим
в
рабочей
директории
директорию
dbstore_scheme;
2.
Зайдем
в
директорию
,
содержащую
dbstore;
3.
Запустим
процесс
экспорта
данных
командой
:
./dbstore –u SYSTEM/MANAGER –d /home/linter/prac3/
dbstore_scheme –o S
Задача
3.
Выгрузить
данные
таблицы
T1.
1.
Создадим
в
рабочей
директории
директорию
dbstore_tables;
2.
Зайдем
в
директорию
,
содержащую
dbstore;
3.
Запустим
процесс
экспорта
данных
командой
:
./dbstore –u SYSTEM/MANAGER –l T1 –f /home/linter/prac3/
dbstore_tables/t1.lod
Задача
4.
Выгрузить
все
объекты
пользователя
SYSTEM.

!
20
Пр
акт
ич
еск
ое
зан
ят
ие
3.
Заг
руз
ка
и
вы
гру
зка
дан
ны
х
!
!
E-
:
mar
ket
@re
lex.r
u
ЗАО
1.
Создадим
в
рабочей
директории
директорию
dbstore_systables;
2.
Зайдем
в
директорию
,
содержащую
dbstore;
3.
Запустим
процесс
экспорта
данных
командой
:
./dbstore –u SYSTEM/MANAGER –w SYSTEM –d /home/linter/
prac3/dbstore_systables
Задача
5.
(
студенты
выполняют
самостоятельно
)
Выгрузить
все
представления
пользователя
SYSTEM
в
формате
XML.
3.3.
Импорт
данных
Если
база
данных
восстанавливается
по
схеме
при
помощи
утилиты
inl,
то
для
импорта
данных
из
файлов
форматов
TXT(LOD)
и
XML
существует
специализированная
утилита
loarel.
Она
предоставляет
интерфейс
командной
строки
и
существует
на
всех
программно
-
аппаратных
платформах
,
поддерживаемых
СУБД
ЛИНТЕР
.
Общий
формат
запуска
утилиты
:
LOAREL [-u NAME/PASSWORD] [-d DIRNAME] [-n NODE]
[-t [TABLENAME[,...]]]
[-x] [-version] [-?] [-end] [<
прочие
ключи
>]
Полное
описание
ключей
loarel
можно
найти
в
разделе
«
Импорт
данных
»
пользовательской
документации
по
СУБД
ЛИНТЕР
.
Аналогично
утилите
по
экспорту
данных
,
указываются
параметры
соединения
,
формат
импортируемой
информации
,
и
список
таблиц
,
подлежащих
импорту
.
Задача
1.
Создать
и
загрузить
таблицу
ERRORS
из
каталога
dict
дистрибутива
СУБД
ЛИНТЕР
.
1.
Предполагаем
,
что
база
только
что
создана
и
запущено
ядро
;
2.
Перейдем
в
каталог
bin
дистрибутива
и
подадим
команду
на
создание
таблицы
при
помощи
утилиты
inl:
./inl –u SYSTEM/MANAGER –f ../dict/cerrors.sql
3.
Подадим
команду
на
загрузку
данных
в
таблицу
:
./loarel –u SYSTEM/MANAGER –t ERRORS –f ../dict/errors.lod
Задача
2.
Загрузить
данные
таблицы
T1.
1.
Предполагаем
,
в
файле
/home/linter/prac3/dbstore_tables/t1.lod
находится
информация
,
которую
следует
импортировать
в
таблицу
T1;
2.
Перейдем
в
каталог
bin
дистрибутива
и
подадим
команду
на
удаление
данных
из
таблицы
при
помощи
утилиты
inl:
./inl –u SYSTEM/MANAGER
SQL>delete from T1;
SQL>select * from T1;
(
проверим
,
что
в
таблице
записей
нет
)
3.
Запустим
процесс
импорта
данных
командой
:
./loarel –u SYSTEM/MANAGER –t T1 –f /home/linter/prac3/
dbstore_tables/t1.lod
4.
Проверим
,
что
данные
были
добавлены
: