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

Практическое
занятие
2
Основные
утилиты
Практика
2
часа
(
начальная
оценка
), 3
часа
(
последняя
оценка
) (
Лекция
2)
2.1.
Основные
утилиты
администрирования
На
занятии
будут
рассмотрены
возможности
основных
утилит
СУБД
ЛИНТЕР
,
предназначенных
для
администрирования
БД
: inl (
Диалоговый
SQL), ldba (
Администратор
),
lindeskx (
Рабочий
стол
).
Диалоговый
SQL
Как
уже
было
сказано
,
утилита
inl
предоставляет
интерфейс
командной
строки
и
существует
на
всех
платформах
,
поддерживаемых
СУБД
ЛИНТЕР
.
Синтаксис
командной
строки
запуска
inl:
inl [-u <
имя
пользователя
>[/<
пароль
пользователя
>]][-n <
имя
сервера
>] [-f <
спецификация
файла
>][-t] [-s] [-q] [-h| ?]
[-I <
код
завершения
>]
При
запуске
можно
указать
узел
(
зарегистрированный
в
файле
nodetab),
с
которым
следует
соединиться
при
запуске
,
имя
пользователя
и
пароль
.
Также
можно
указать
файл
,
в
котором
находятся
запросы
для
пакетного
выполнения
.
Для
этого
предназначен
ключ
–f.
В
пакетном
выполнении
файла
,
при
ошибках
и
предупреждениях
выполнение
прерывается
.
Для
игнорирования
ошибок
предназначен
ключ
–I.
Предупреждения
об
удалении
несуществующих
объектов
снимаются
указанием
ключа
–s.
Рассмотрим
процесс
пакетного
выполнения
запросов
.
Пусть
имя
рабочего
каталога
/
export/home/lindesk/linter/bin.
Файлы
с
запросами
находятся
в
директории
/export/home/
lindesk/linter/course.
Предполагается
,
что
директория
bin
дистрибутива
ЛИНТЕР
прописана
в
переменной
окружения
PATH.
Выполняем
команды
:
•
запускаем
локальное
ядро
;
•
перейти
в
директорию
,
содержащую
файл
inl_t1.sql;
•
запускаем
inl,
передавая
имя
пользователя
,
пароль
и
имя
файла
на
исполнение
:
inl -u SYSTEM/MANAGER -f inl_t1.sql
Данный
файл
создает
таблицы
(T1
и
T2),
но
не
проверяет
на
существование
таблиц
с
этими
же
именами
.
Поэтому
повторный
запуск
данного
скрипта
вызовет
ошибки
.
Файл
inl_t2.sql
перед
созданием
таблицы
производит
удаление
таблицы
с
этим
именем
.
Выполним
данный
скрипт
:
inl -u SYSTEM/MANAGER -f inl_t2.sql
Удалим
таблицы
T1
и
T2.
Для
этого
:
•
запускаем
inl,
передавая
имя
пользователя
:
inl -u SYSTEM/MANAGER
•
подаем
два
запроса
:
SQL> drop table T1;

!
12
Пр
акт
ич
еск
ое
зан
ят
ие
2.
Ос
но
вн
ые
ути
ли
ты
!
!
E-
:
mar
ket
@re
lex.r
u
ЗАО
SQL> drop table T2;
•
завершаем
работу
приложения
:
SQL> exit;
В
случае
,
если
таблицы
отсутствовали
,
то
inl_t2.sql
будет
выдавать
предупреждения
при
удалении
.
Для
игнорирования
предупреждений
,
используем
ключ
–s.
inl -u SYSTEM/MANAGER -f inl_t2.sql –s
В
обычном
режиме
(
диалоговом
),
пользователь
вводит
запрос
, inl
передает
запрос
серверу
, inl
отображает
время
выполнения
запроса
,
количество
обработанных
сервером
записей
,
и
выборку
(
если
это
был
SELECT-
запрос
).
Выполним
запросы
,
позволяющие
просмотреть
содержимое
таблиц
T1
и
T2:
•
запускаем
inl,
передавая
имя
пользователя
:
inl -u SYSTEM/MANAGER
•
подаем
запрос
:
SQL> select * from T1;
•
просматириваем
результаты
;
SQL> select * from T2 order by 2;
•
просматириваем
результаты
;
•
завершаем
работу
приложения
:
SQL> exit;
2.2.
Администратор
LDBA
Псевдографическ ая
утилита
LDBA
существует
на
всех
платформах
,
поддерживаемых
СУБД
ЛИНТЕР
.
Она
позволяет
:
•
создавать
,
удалять
,
модифицировать
таблицы
;
•
создавать
и
удалять
представления
;
•
создавать
и
удалять
синонимы
таблиц
и
представлений
;
•
просматривать
,
вносить
и
редактировать
данные
таблиц
,
представлений
и
синонимов
;
•
экспортировать
и
импортировать
данные
;
•
экспортировать
схемы
таблиц
;
•
создавать
,
удалять
пользователей
,
назначать
им
привилегии
доступа
к
объектам
базы
данных
,
работать
с
ролями
;
•
работать
с
протоколом
событий
.
При
запуске
утилиты
ldba
также
можно
указывать
параметры
соединения
(
имя
и
пароль
пользователя
,
имя
узла
).
Задача
1.
Создадим
таблицу
,
добавим
в
нее
данные
.
1.
Запустим
утилиту
:
ldba –u SYSTEM/MANAGER
2.
Выберем
пункт
меню
Таблицы
(
навигация
производится
клавишами
Esc, Tab,
Enter,
стрелки
);
3.
Выберем
кнопку
Создать
;
4.
В
появившемся
диалоге
зададим
имя
таблицы
– PHONES;
5.
Добавим
два
столбца
: NUM
типа
integer
и
OWNER_NAME
типа
CHAR(50);

!
!
Пр
акт
ич
еск
ое
зан
ят
ие
2.
Ос
но
вн
ые
ути
ли
ты
!
13
E-
:
mar
ket
@re
lex.r
u
ЗАО
6.
Создадим
таблицу
,
выбрав
кнопку
Создать
;
7.
a)
Выберем
кнопку
Просмотр
;
(Linux)
b)
В
списке
таблиц
выделим
таблицу
PHONES
и
нажмем
Enter;
(Windows)
8.
Для
добавления
новой
строки
нажмем
сочетание
клавиш
:
a) Ctrl+A, I;
(Linux)
(
не
удалось
добавить
строки
,
удалось
только
через
меню
Sql)
б
) Alt+I;
(Windows)
9.
В
диалоге
новой
записи
для
ее
добавления
необходимо
нажать
:
а
) Ctrl+E;
(Linux)
б
) Ctrl+End;
(Windows)
10.
Таким
образом
,
добавим
несколько
записей
.
Задача
2.
Создадим
нового
пользователя
USER_VIEW
с
правами
CONNECT
и
паролем
98.
1.
Выберем
пункт
меню
Администратор
|
Пользователи
;
2.
В
списке
пользователей
выберем
кнопку
Добавить
;
3.
В
диалоге
укажем
имя
пользователя
,
пароль
и
права
.
Затем
нажмем
кнопку
Добавить
(Linux)
,
Создание
(Windows)
.
Задача
3.
Создадим
представление
PUB_PHONES
и
разрешим
его
просмотр
пользователю
USER_VIEW.
1.
Выберем
пункт
меню
Sql
;
2.
В
открывшемся
редакторе
запросов
наберем
запрос
:
create view PUB_PHONES as select * from SYSTEM.PHONES;
Примечание
:
У
казание
пользователя
в
«SYSTEM.PHONES»
необходимо
,
поскольку
иначе
,
при
просмотре
представления
другим
пользователем
будет
подразумеваться
таблица
текущего
пользователя
,
а
не
SYSTEM.
3.
Выполним
запрос
;
4.
Закроем
редактор
запросов
;
5.
Откроем
список
таблиц
;
6.
Выберем
таблицу
PUB_PHONES
и
нажмем
кнопку
Права
;
7.
В
появившемся
диалоге
добавим
новые
права
только
на
SELECT
для
пользователя
USER_VIEW;
8.
Закроем
список
таблиц
и
перерегистрируемся
(
пункт
меню
>>>
)
под
именем
USER_VIEW;
9.
В
списке
таблиц
появилось
представление
PUB_PHONES
с
ограничением
доступа
;
10.
а
)
Откроем
его
на
просмотр
;
(Linux)
б
)
Выделим
PUB_PHONES
и
нажмем
Enter;
(Windows)
11.
Попытаемся
вставить
запись
–
получим
ошибку
по
доступу
.
Задача
4.
Выгрузим
данные
представления
PUB_PHONES.
1.
Выберем
пункт
меню
Файлы
|
Выгрузка
таблицы
;
2.
Выберем
для
выгрузки
представление
PUB_PHONES;
3.
Добавим
в
целевой
список
все
столбцы
и
нажмем
кнопку
Выполнить
;
4.
Укажем
имя
файла
PUB_PHONES.LOD,
разделитель
,
нажмем
кнопку
Выполнить
;
5.
Закроем
диалоги
.
Задача
5.
Импортируем
выгруженные
данные
в
новую
таблицу
.
1.
Перерегистрируемся
под
пользователем
SYSTEM;
2.
Создадим
новую
таблицу
PHONE1
со
столбцами
NUM
и
NAME;

!
14
Пр
акт
ич
еск
ое
зан
ят
ие
2.
Ос
но
вн
ые
ути
ли
ты
!
!
E-
:
mar
ket
@re
lex.r
u
ЗАО
3.
Выберем
для
выгрузки
представление
PUB_PHONES;
4.
Добавим
в
целевой
список
все
столбцы
и
нажмем
кнопку
Выполнить
;
5.
Укажем
имя
файла
PUB_PHONES.LOD,
разделитель
,
нажмем
кнопку
Выполнить
;
6.
Проверим
,
что
в
текущем
каталоге
сгенерирован
файл
PUB_PHONES.LOD;
7.
Закроем
диалоги
.
2.3.
Рабочий
стол
Существуют
две
версии
данной
утилиты
:
старая
,
функционирующая
под
управлением
ОС
семейства
Win32,
и
новая
,
поддерживающая
Linux, Free BSD, Sun Solaris,
Win32.
В
данном
разделе
будет
рассмотрена
новая
версия
,
поскольку
она
полностью
перекрывает
функции
существующих
утилит
администрирования
и
имеет
схожий
интерфейс
со
старой
версией
.
Данная
утилита
администрирования
(
в
дальнейшем
приложение
)
представляет
собой
многооконное
графическое
приложение
,
выполняющее
следующие
функции
:
•
Работа
с
таблицами
данных
:
их
создание
,
редактирование
структуры
таблиц
,
занесение
данных
,
их
модификация
,
наложение
ограничений
ссылочной
целостности
:
создание
,
удаление
внешних
ключей
,
ограничений
уникальности
,
индексов
.
Тестирование
,
сжатие
,
перестроение
таблиц
.
Обмен
данными
–
экспорт
данных
из
таблиц
в
файлы
различных
форматов
(
текстовые
,
гипертекстовые
, XML, DBF).
•
Работа
с
видами
,
синонимами
таблиц
–
создание
,
удаление
,
просмотр
их
свойств
.
•
Работа
с
пользователями
,
создание
пользователя
,
внесение
его
в
группу
доступа
,
назначение
прав
доступа
к
таблицам
данных
,
назначение
расписания
соединений
с
БД
,
просмотр
отчета
по
доступу
к
объектам
БД
,
редактирование
его
свойств
.
•
Работа
со
специфическими
объектами
БД
,
такими
как
станции
,
устройства
,
каналы
.
Разрешение
и
запрещение
доступа
группам
к
устройствам
,
станциям
.
•
Администрирование
БД
,
включающее
в
себя
создание
и
удаление
ролей
,
уровней
и
групп
доступа
,
назначение
пользователям
ролей
,
включение
их
в
группы
доступа
,
управление
различными
видами
доступа
к
таблицам
–
мандатным
и
дискретным
.
•
Возможность
создания
,
редактирования
и
выполнения
произвольных
SQL-
запросов
.
•
Возможность
построения
SELECT-
запросов
визуальными
инструментами
приложения
.
•
Возможность
отладки
триггеров
и
хранимых
процедур
.
Интерфейс
приложения
состоит
из
следующих
окон
:
•
Главная
Панель
;
•
Инспектор
БД
;
•
Браузеры
Объектов
;
•
Браузеры
Данных
;
•
Редакторы
Запросов
;
•
Расширенные
Редакторы
Запросов
;
•
Дизайнеры
Запросов
;
•
Отладчики
процедур
;
•
Диалоги
создания
и
просмотра
свойств
объектов
;
•
Диалог
настроек
приложения
;
•
Диалог
списка
окон
приложения
.

!
!
Пр
акт
ич
еск
ое
зан
ят
ие
2.
Ос
но
вн
ые
ути
ли
ты
!
15
E-
:
mar
ket
@re
lex.r
u
ЗАО
При
запуске
приложения
появляется
Главная
Панель
в
верхней
части
,
и
Инспектор
БД
в
левой
части
экрана
.
Основными
функциями
главной
панели
являются
:
быстрый
доступ
к
вызову
объектов
БД
в
виде
списков
(
браузеры
объектов
),
доступ
к
настройкам
приложения
,
доступ
к
списку
открытых
окон
приложения
,
работу
по
упорядочению
дочерних
окон
.
Кроме
того
,
Главная
Панель
имеет
динамическое
меню
,
изменяющееся
в
зависимости
от
типа
узла
,
активного
в
Инспекторе
БД
.
Основным
функциональным
окном
является
Инспектор
БД
.
Обеспечивая
отображение
информации
об
администрируемых
БД
в
виде
дерева
,
он
обладает
динамической
инструментальной
панелью
в
верхней
части
окна
и
списком
соединений
.
Работа
с
деревом
объектов
осуществляется
либо
через
контекстные
меню
узлов
дерева
,
либо
через
динамическую
инструментальную
панель
.
Практически
каждый
узел
дерева
имеет
реакцию
на
двойной
щелчок
мыши
(
например
,
для
узла
"
Таблицы
" –
открытие
Браузера
Объектов
со
списком
таблиц
,
а
для
узла
типа
"
Таблица
" –
открытие
Браузера
Данных
с
выборкой
из
данной
таблицы
).
Некоторые
узлы
имеют
реацию
на
нажатие
кнопок
<Ins>, <Del>, <Enter>.
Альтернативную
работу
с
БД
можно
осуществлять
,
используя
Браузеры
Объектов
.
Браузер
Объектов
представляет
собой
список
однородных
объектов
базы
,
отображенных
в
виде
таблицы
,
и
инструментальную
панель
для
работы
с
данным
списком
.
Данный
интерфейс
,
по
сравнению
с
деревом
,
более
удобен
для
сравнения
объектов
,
но
сильно
загромождает
экран
разнородными
окнами
при
работе
с
разнотипными
объектами
.
Браузер
Данных
преставляет
собой
окно
,
имеющее
таблицу
и
инструментальную
панель
,
и
предназначен
для
работы
с
данными
конкретной
таблицы
(
представления
,
синонима
).
Редактор
Запросов
предназначен
для
работы
с
БД
через
SQL-
запросы
в
стиле
LINDESK.
Расширенный
Редактор
запросов
представляет
собой
мощный
SQL-
редактор
с
подсветкой
лексем
,
настройкой
цветовых
схем
,
работы
с
большим
количеством
запросов
,
поддержки
запросов
с
параметрами
.
Он
обладает
закладками
,
на
каждой
из
которых
может
располагаться
большое
количество
SQL-
запросов
.
Также
предусмотрена
возможность
выбора
активного
соединения
,
по
которому
будет
подаваться
текщий
запрос
.
Дизайнер
запросов
представляет
собой
инструмент
для
визуального
создания
сложных
SELECT
запросов
.
Работу
с
различными
объектами
БД
обеспечивают
различные
диалоги
(
например
,
"
Создание
пользователя
", "
Дискреционный
доступ
пользователя
", "
Параметры
БД
"
и
т
.
д
.)
Диалог
настроек
приложения
представляет
собой
окно
,
имеющее
закладки
для
:
•
Настройки
шрифтов
приложения
в
различных
элементах
управления
;
•
Выбора
текущего
языка
приложения
;
•
Настройки
подтверждений
;
•
Выбора
директорий
;
•
Настройки
расширенного
редактора
SQL.
Диалог
для
отображения
списка
окон
позволяет
быстро
перейти
к
нужному
окну
приложения
.
Задача
1.
Просмотр
объектов
в
виде
дерева
.
Знакомство
с
интерфейсом
.
Добавление
таблицы
.
1.
Запустим
утилиту
:
lindeskx –u SYSTEM/MANAGER
при
этом
появится
в
верхней
части
экрана
Главная
Панель
,
а
слева
–
Инспектор
Базы
Данных
.
В
Инспекторе
в
виде
дерева
отображены
уровни
иерархии
объектов
ЛИНТЕР
.
2.
Откроем
каждую
ветвь
дерева
,
просмотрим
их
содержимое
.
3.
При
двойном
щелчке
левой
кнопкой
мыши
на
элементе
-
контейнере
,
например
,
Таблицы
появится
список
таблиц
(
окно
Браузер
Таблиц
).
Просмотрим
названия
кнопок
на
панели
браузера
.
4.
Более
мощная
функциональность
доступна
из
контекстного
меню
каждого
узла
дерева
(
правая
кнопка
мыши
на
элементе
дерева
).
В
контекстном
меню
узла
Таблицы
выберем
пункт
Добавить
.