Лабораторная работа №4 Дисциплина: Системы Управления Базами Данных Кафедра: Информатики и Прикладной Математики



Скачать 31.88 Kb.
Дата31.01.2019
Размер31.88 Kb.
#69041
ТипЛабораторная работа

Национальный Исследовательский Университет

Информационных Технологий, Механики и Оптики

Лабораторная работа №4

Дисциплина: Системы Управления Базами Данных

Кафедра: Информатики и Прикладной Математики

Студент: Петряков Станислав

Группа: 4120

Вариант: 111

Санкт-Петербург

2014 год


  1. Задание

Цель работы - создать резервную копию сконфигурированного в процессе выполнения предыдущей работы экземпляра Oracle, настроить процесс репликации, и осуществить процедуру восстановления БД с резервной копии.

Репликацию необходимо организовать двумя способами (в два разных каталога):



  1. С помощью Data Pump.

  2. С помощью автоматического периодического экспорта / импорта файлов.

Login: dba126 Password: qqpDzBHf

Требования к выполнению лабораторной работы:

  • Вся логика сервиса, осуществляющего репликацию БД, должна быть реализована в виде shell-скриптов.

  • Необходимо реализовать задачу для планировщика cron, осуществляющую периодический (например, раз в час) запуск скрипта репликации.

  • Каталог, в котором будет создаваться резервная копия экземпляра Oracle, выбирается на усмотрение студента.

  • Для того, чтобы можно было продемонстрировать корректность работы репликации, тестовая база не должна быть пустой. Т.е. предварительно в ней нужно создать тестовые таблицы и заполнить их тестовыми данными, осуществив несколько транзакций.

  1. Ход работы

  1. Тестовые таблицы и данные

$ sqlplus system/admin@s160579

SQL> @fill.sql



fill.sql

CREATE TABLE bbc (pktest NUMBER(5) PRIMARY KEY, vctest VARCHAR2(15) NOT NULL) TABLESPACE BUSY_BLUE_CITY STORAGE (INITIAL 50K);

INSERT INTO bbc VALUES (1, 'BBC_1');

CREATE TABLE bgh (pktest NUMBER(5) PRIMARY KEY, vctest VARCHAR2(15) NOT NULL) TABLESPACE BUSY_GREEN_HAIR STORAGE (INITIAL 50K);

INSERT INTO bgh VALUES (1, 'BGH_1');

CREATE TABLE lol (pktest NUMBER(5) PRIMARY KEY, vctest VARCHAR2(15) NOT NULL) TABLESPACE LEFT_ORANGE_LOVE STORAGE (INITIAL 50K);

INSERT INTO lol VALUES (1, 'LOL_1');


  1. Подготовка бэкапа

SQL> connect / as sysdba

SQL> create directory DATAPUMP_DIR as '/u01/bak/pump';

SQL> grant read,write on directory DATAPUMP_DIR to system;

SQL> exit

$ mkdir /u01/bak

$ mkdir /u01/bak/pump

$ mkdir /u01/bak/auto

$ lsnrctl start



  1. Скрипты репликации

$ chmod +x expdp.sh

expdp.sh

#!/usr/bin/ksh

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1

export ORACLE_SID=s160579

export EXPORT_FOLDER=/u01/app/oracle/admin/${ORACLE_SID}/datapump

ORACLE_USER=SYSTEM

ORACLE_PASSWORD=admin

DATE=$(date +"%Y%m%d-%H:%M")
$ORACLE_HOME/bin/expdp $ORACLE_USER/$ORACLE_PASSWORD full=y directory=DATAPUMP_DIR \

dumpfile=$DATE-${ORACLE_SID}_full_export.dmp logfile=$DATE-${ORACLE_SID}_full_export.log \

flashback_time=SYSTIMESTAMP


$ chmod +x exp.sh

exp.sh

#!/usr/bin/ksh

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1

export ORACLE_SID=s160579

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/local/lib

export ORACLE_HOME_LISTENER=LISTENER

export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/JDK/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib

PATH=/usr/sbin/:$ORACLE_HOME/bin:$PATH

export TMP=/tmp

export TMPDIR=$TMP

export ORATAB=/etc/oratab


DATE=$(date +"%Y%m%d-%H.%M")
exp system/system@s160579 file=/u01/bak/auto/$DATE-${ORACLE_SID}_full_export.dmp log=/u01/bak/auto/$DATE-${ORACLE_SID}_full_export.log statistics=none

  1. cron

$ crontab -e oracle

crontab –e oracle

0 * * * * /u01/app/oracle/exp.sh

0 * * * * /u01/app/oracle/expdp.sh


  1. Импорт через Data Pump и imp

$ imp system/admin@s160579 FULL=Y FILE=/u01/bak/auto/20141215-15.52-s160579_full_export.dmp

$ impdp system/admin@s160579 DIRECTORY=DATAPUMP_DIR DUMPFILE=20141215-15.58-s160579_full_export.dmp



  1. Вывод

В ходе данной работы была изучена репликация БД Oracle с помощью инструмента Data Pump (expdp/impdp) и обычных exp/imp. Были созданы записи для демона cron, который запускает каждый час скрипты для создания резервных копий.
Каталог: ifmo -> fourth-year -> databases -> labs
labs -> Лабораторная работа №1 Конфигурирация базы данных Oracle Работу
labs -> Понятие кластера. Аппаратная и программная реализация кластера. Масштабируемость и отказоустойчивость кластерных решений
ifmo -> 1. Основы реляционной алгебры
ifmo -> Обработка исключений
ifmo -> Основные понятия. Существует множество различных формулировок понятия ЭВМ от достаточно простых и понятных до чрезмерно вычурных, которые, однако, схожи по своей сути. По Э. Таненбауму
labs -> Лабораторная работа №1 Конфигурирация базы данных Oracle Работу

Скачать 31.88 Kb.

Поделитесь с Вашими друзьями:




База данных защищена авторским правом ©vossta.ru 2022
обратиться к администрации

    Главная страница