Oracle перенести схему на другой сервер

Обновлено: 06.07.2024

Если нужно перенести объекты схемы из одной базы в другую, то проще всего это сделать с помощью технологии Oracle Data Pump.

Прежде чем вникать в детали работы с Data Pump, давайте уточним: у нас есть физические резервные копии и логические дампы.

В физическую резервную копию включаются файлы данных (Data Files), в которых в виде блоков хранятся все данные Oracle.

Логический дамп содержит объекты БД (таблицы, индексы, процедуры, пакеты и т. д.) и другую информацию (привилегии пользователей, статистику и т.д.).

Логический дамп — это бинарный файл, который создаётся специальной утилитой экспорта. В последующем другой утилитой — импорта — из этого бинарного файла можно восстановить объекты схемы и данные.

Экспорт-импорт происходит на уровне объектов базы. т.е. работа происходит с определениями объектов (DDL) и данными, которые в них содержатся.

Логические дампы применяются главным образом для переноса данных из одной базы в другую, а также для миграции базы на другую платформу.

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

До версии Oracle 10g существовали только утилиты экспорта-импорта (exp и imp). Они работали как на сервере, так и на клиенте Oracle. В версии 10g и более поздних версиях утилиты остались, но считаются устаревшими.

Начиная с версии 10g появилась технология Oracle Data Pump.

Особенность утилиты в том, что она работает только на сервере.

С помощью Oracle Data Pump можно:

  • либо создать один или несколько файлов логического дампа БД в директории на сервере
  • либо перенести данные напрямую из одной БД в другую через dblink.

По сравнению с оригинальными утилитами exp/imp технология Data Pump значительно более быстрая. Имеет более гибкие настройки. Может вызываться, как из командной строки (утилиты), так и из PL/SQL с помощью пакетов DBMS_DATAPUMP и DBMS_METADATA.

Для вызова Data Pump из командной строки используются утилиты expdp и impdp

В общем, сейчас уже нет необходимости использовать оригинальные утилиты exp/imp, кроме случая, когда у вас нет доступа к файловой системе сервера Oracle.

Экспорт в Oracle Data Pump

Data Pump Export может работать в 5-ти режимах:

  1. Full Mode — выгрузка всей БД.
  2. Schema Mode — выгрузка выбранных схем.
  3. Table Mode — выгрузка отдельных таблиц.
  4. Tablespace Mode — выгрузка выбранных табличных пространств.
  5. Transportable Tablespace Mode — экспорт табличного пространства для переноса на другой сервер.

Пример вызова Data Pump Export в "Table Mode":

> expdp hr TABLES=employees DIRECTORY=DPUMP_DIR1 DUMPFILE=employees.dmp


Файлы дампа создаются в директории, на которую указывает объект базы данных Directory. По умолчанию параметр DIRECTORY=DATA_PUMP_DIR.

Если вы хотите выгрузить в другую директорию, то вам нужно:

  1. Cоздать другую directory с помощью команды (CREATE DIRECTORY .. AS '. ')
  1. Указать ее в параметре DIRECTORY=dpump_dir1 или перед именем файла дампа DUMPFILE=dpump_dir1:employees.dmp.

Экспорт может производиться не из текущей базы данных, а из удаленной базы по dblink. Для этого нужно указать существующий dblink на базу данных — источник, используя параметр NETWORK_LINK.

> expdp hr TABLES=employees DIRECTORY=DPUMP_DIR1 DUMPFILE=employees.dmp NETWORK_LINK=S101


Во-первых, можно создавать задания фильтры по метаданным, т.е. отбирать для экспорта объекты базыд данных как по типу, так и по имени. Для этого используются параметры: CONTENT, INCLUDE, EXCLUDE.

Во-вторых, можно выполнить фильтрацию строк выгружаемых таблиц с помощью параметра QUERY.

Импорт в Oracle Data Pump

Теперь перейдем к импорту.

Аналогично экспорту Data Pump Import также имеет 5 режимов:

  1. Full Mode — загрузка всего дампа.
  2. Schema Mode — загрузка выбранных схем.
  3. Table Mode — загрузка отдельных таблиц.
  4. Tablespace Mode — загрузка выбранных табличных пространств.
  5. Transportable Tablespace Mode — импорт табличного пространства.

Например, команда для полной загрузки дампа:

> impdp hr FULL=Y DIRECTORY=DPUMP_DIR1 DUMPFILE=employees.dmp


По-умолчанию выставлен параметр FULL=YES, то есть будет загружено все содержимое файла дампа. Но вы, также как и при экспорте, можете использовать параметры CONTENT, INCLUDE, EXCLUDE, QUERY для выбора нужных объектов и данных для загрузки.

Если при импорте вы указываете параметр NETWORK_LINK, то данные будут загружаться по указанному dblink напрямую из базы данных источника. В этом случае указывать файл дампа не нужно, а директория будет указывать только на размещение лога импорта.

> impdp hr TABLES=employees DIRECTORY=DPUMP_DIR1 NETWORK_LINK=S101


Итак: технология Oracle Data Pump позволяет быстро переносить данные из одной базы данных в другую как через файлы (дампы), так и напрямую по сети.

И конечно, создаваемые дампы могут использоваться и как резервные копии, особенно при небольших размерах базы данных. Но нужно учитывать следующее: если во время экспорта данные изменялись пользователями, то данные таблиц в дампе могут оказаться несогласованными.

Нюансы создания резервных копий базы дынных Oracle — это отдельная тема, которую рассмотрим в следующий раз.

Сергей Греховодов,
автор курсов по обучению Oracle

Похожие статьи:

Чтобы после сбоя в системе (например, отказа жесткого диска) восстановить базу нужно иметь под рукой резервную копию. (Нет резервной копии — прощай работа )) Чем свежее копия, тем лучше. Более того: резервная копия базы должна быть полной и непротиворечивой.

Если в таблице много записей, то порой достаточно выбрать первый десяток. В других СУБД для этого изначально были специальные конструкции в языке SQL. В Oracle всё это появилось гораздо позже. Есть несколько популярных способов.

Умеете делать резервную копию оракловой базы? Вопрос далеко-далеко не праздный (если вы уже знаете, как делать копию, то, наверное, догадываетесь, о чём пойдёт речь, правильно — о времени). Тема резервного копирования для администраторов оракла — одна из ключевых.

Oracle PL/SQL для администраторов баз данных
Толковая книга по PL/SQL. Читать и применять!

Джоэл. И снова о программировании (файл PDF) Всё знают Джоэла. Легенда. А это его сборник статей.

SQL и реляционная теория
Как грамотно писать код на SQL. Много примеров и советов по написанию SQL-запросов.

Пионеры программирования
Диалоги с создателями наиболее популярных языков программирования.

Из этого руководства вы узнаете, как перенести базы данных Oracle в SQL Server с использованием Помощника по миграции SQL Server для Oracle (SSMA для Oracle).

Предварительные требования

Прежде чем приступить к переносу базы данных Oracle в SQL Server, сделайте следующее:

  • Убедитесь, что ваша исходная среда поддерживается.
  • Скачайте и установите SQL Server.
  • Скачайте и установите SSMA для Oracle.
  • Получите необходимые разрешения для SSMA для Oracle и поставщик.
  • Получите возможность подключения и требуемые разрешения для доступа к исходному и целевому объектам.

Подготовка к миграции

При подготовке к миграции в облако убедитесь в том, что исходная среда поддерживается и все остальные предварительные требования выполнены. Так вам будет проще успешно и эффективно выполнить миграцию.

Этот этап процесса включает в себя инвентаризацию баз данных для переноса, проверку этих баз данных на отсутствие проблем или препятствий для миграции и устранение возможных проблем.

Обнаружить

Чтобы лучше понять процесс миграции и подготовиться к нему, используйте набор средств Microsoft Assessment and Planning Toolkit (MAP), который поможет выявить существующие источники данных и получить сведения о функциях, используемых вашей организацией. Этот процесс включает в себя сканирование сети для обнаружения всех экземпляров, версий и компонентов Oracle в организации.

Для проведения инвентаризации с помощью набора средств MAP сделайте следующее:

На панели Overview (Обзор) выберите Create/Select database (Создание или выбор базы данных).

Снимок экрана: ссылка Create/Select database (Создание или выбор базы данных) на панели Overview (Обзор) в наборе средств MAP.

В разделе Create or select a database (Создание или выбор базы данных) щелкните Create an inventory database (Создать базу данных инвентаризации), введите имя и краткое описание для новой базы данных инвентаризации, а затем нажмите кнопку ОК.

Снимок экрана: действие Create an inventory database (Создать базу данных инвентаризации) в наборе средств MAP.

Щелкните Collect inventory data (Сбор данных инвентаризации), чтобы открыть мастер инвентаризации и оценки.

Снимок экрана: ссылка Collect inventory data (Сбор данных инвентаризации) в мастере инвентаризации и оценки.

В этом мастере выберите Oracle, а затем щелкните Next (Далее).

Снимок экрана: выбор Oracle и нажатие кнопки Next (Далее) в мастере инвентаризации и оценки.

Выберите оптимальный вариант для поиска компьютеров с учетом среды и потребностей вашей организации, а затем щелкните Next (Далее).

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

Введите существующие учетные данные или создайте их для нужных систем, а затем щелкните Next (Далее).

Снимок экрана: панель мастера для ввода учетных данных компьютера.

Укажите очередность учетных данных и нажмите кнопку Next.

Снимок экрана: панель мастера для настройки порядка учетных данных.

Укажите учетные данные для каждого компьютера, который требуется обнаружить. Вы можете указать уникальные учетные данные для каждого компьютера или выбрать их из списка Computers (Компьютеры).

Снимок экрана: элемент Use all computers credential list (Использовать список учетных данных всех компьютеров), позволяющий указать учетные данные для каждого компьютера, который вы хотите обнаружить.

Проверьте выбранные настройки и нажмите кнопку Finish (Готово).

Снимок экрана: страница мастера со сводной информацией для проверки.

После завершения сканирования просмотрите сводный отчет Data Collection (Сбор данных). Это сканирование может занять несколько минут в зависимости от количества баз данных. По завершении нажмите кнопку Close (Закрыть).

Снимок экрана: страница сводного отчета по сбору данных.

Выберите Options (Параметры), чтобы создать отчет об оценке баз данных Oracle. Для создания отчета поочередно выберите оба параметра.

Оценка

Завершив выбор источников данных, с помощью SSMA для Oracle оцените тот экземпляр Oracle, который вы переносите на виртуальную машину SQL Server, чтобы увидеть различия между ними. Используя помощник по миграции, можно изучить объекты баз данных и данные в них, оценить возможности переноса баз данных, перенести объекты баз данных в SQL Server, а затем перенести данные в SQL Server.

Чтобы создать оценку, сделайте следующее:

Выберите File (Файл) и New Project (Создать проект).

Укажите имя и расположение проекта, а затем в раскрывающемся списке выберите целевой объект для миграции в SQL Server. Щелкните ОК.

Снимок экрана: панель New Project (Новый проект) в SSMA для Oracle.

Щелкните Connect to Oracle (Подключиться к Oracle), введите сведения о подключении к Oracle и нажмите кнопку Connect (Подключиться).

Снимок экрана: панель Connect to Oracle (Подключение к Oracle).

На панели Filter objects (Фильтрация объектов) выберите схемы Oracle, которые вы намерены перенести, и щелкните OK (ОК).

Снимок экрана: панель Filter objects (Фильтрация объектов) для выбора загружаемых схем.

На панели Oracle Metadata Explorer (Обозреватель метаданных Oracle) выберите нужную схему Oracle и щелкните Create Report (Создать отчет), чтобы создать отчет в формате HTML со статистикой преобразований и списком ошибок и предупреждений (при их наличии). Можно также выбрать вкладку Create Report (Создать отчет) в правом верхнем углу.

Снимок экрана: ссылки "Create Report" (Создать отчет) в обозревателе метаданных Oracle.

Ознакомьтесь с отчетом в формате HTML, чтобы получить сведения о статистике преобразований, а также об ошибках или предупреждениях. Также можно открыть отчет в Excel, чтобы получить список объектов Oracle и действий, необходимых для выполнения преобразований схемы. По умолчанию этот отчет находится в папке report в каталоге SSMAProjects. Пример:

Снимок экрана: отчет о преобразовании в SSMA.

Обновление типов данных

Проверьте сопоставления типов данных по умолчанию и измените их в зависимости от требований, если это необходимо. Для этого сделайте следующее:

Щелкните Tools (Средства) и выберите Project Settings (Параметры проекта).

Перейдите на вкладку Type mapping (Сопоставление типов).

Снимок экрана: панель Type mapping (Сопоставление типов) в SSMA для Oracle.

Сопоставление типов для каждой таблицы можно изменить, выбрав имя нужной таблицы в области Oracle Metadata explorer (Обозреватель метаданных Oracle).

Преобразовать схему

Чтобы преобразовать схему, сделайте следующее:

(Необязательно.) Чтобы преобразовать динамические или специализированные запросы, щелкните нужный узел правой кнопкой мыши и выберите пункт Add statement (Добавить инструкцию).

Перейдите на вкладку Connect to SQL Server (Подключение к SQL Server), а затем введите сведения о подключении к экземпляру SQL Server.

а. В раскрывающемся списке Database (База данных) выберите целевую базу данных или введите неиспользуемое имя, чтобы создать базу данных на целевом сервере.
b. Предоставьте сведения о проверке подлинности.
c. Выберите Подключиться.

Снимок экрана: область Connect to SQL Server (Подключение к SQL Server) в SSMA для Oracle.

На панели Oracle Metadata Explorer (Обозреватель метаданных Oracle) щелкните правой кнопкой мыши схему, с которой вы работаете, и выберите действие Convert Schema (Преобразовать схему). Также можно выбрать вкладку Convert Schema (Преобразовать схему) в правом верхнем углу.

Снимок экрана: пункт Convert Schema (Преобразовать схему) в области Oracle Metadata Explorer (Обозреватель метаданных Oracle).

Когда преобразование завершится, сравните преобразованные объекты с исходными, чтобы выявить возможные проблемы, и устраните их в соответствии с рекомендациями.

Снимок экрана: сравнение преобразованных объектов с исходными.

Сравните преобразованный текст Transact-SQL с исходным кодом и просмотрите рекомендации.

Снимок экрана: сравнение преобразованного текста с исходным кодом.

На панели выходных данных щелкните значок Review results (Проверка результатов), а затем просмотрите ошибки в области Error list (Список ошибок).

В качестве упражнения по исправлению схемы в автономном режиме сохраните проект на локальном устройстве, выбрав File > Save Project (Файл > Сохранить проект). Это позволит вам оценить исходную и целевую схемы в автономном режиме и устранить проблемы перед публикацией схемы в экземпляре SQL Server.

Перенос базы данных

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

Чтобы опубликовать схему и перенести базу данных, сделайте следующее:

Опубликуйте схему. В области SQL Server Metadata Explorer (Обозреватель метаданных SQL Server) щелкните базу данных правой кнопкой мыши и выберите Synchronize with Database (Синхронизировать с базой данных). Схема Oracle будет опубликована в экземпляре SQL Server.

Снимок экрана: команда Synchronize with Database (Синхронизировать с базой данных) в области SQL Server Metadata Explorer (Обозреватель метаданных SQL Server).

Проверьте результаты сопоставления исходного и целевого проектов, как показано ниже:

Снимок экрана: область Synchronize with Database (Синхронизация с базой данных) для просмотра сопоставлений базы данных.

Перенесите данные. В области Oracle Metadata Explorer (Обозреватель метаданных Oracle) щелкните правой кнопкой мыши схему или объект, которые вы хотите перенести, и выберите Migrate Data (Перенос данных). Также можно выбрать вкладку Migrate Data (Миграция данных) в правом верхнем углу.

Чтобы перенести данные всей базы данных, установите флажок рядом с ее именем. Чтобы перенести данные из отдельных таблиц, разверните базу данных, разверните Таблицы и установите флажок рядом с нужной таблицей. Чтобы не переносить данные из определенной таблицы, снимите флажок.

Снимок экрана: ссылки для переноса данных.

На панели Migrate Data (Перенос данных) введите сведения о подключении к Oracle и SQL Server.

После завершения миграции изучите отчет о переносе данных.

Снимок экрана: отчет о переносе данных.

Подключитесь к экземпляру SQL Server с помощью SQL Server Management Studio и проверьте результаты миграции, просмотрев данные и схему.

Снимок экрана: сервер управления SQL Server.

Помимо SSMA, для переноса данных можно использовать службы SQL Server Integration Services (SSIS). Дополнительные сведения см. на следующих ресурсах:

После миграции

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

Исправление приложений

После переноса данных в целевую среду все приложения, которые раньше использовали источник, должны переключиться на использование целевого объекта миграции. Для этого в некоторых случаях потребуется внести изменения в приложения.

Data Access Migration Toolkit — это расширение для Visual Studio Code, с помощью которого можно анализировать исходный код Java и отслеживать вызовы и запросы к API доступа к данным. Этот набор средств содержит представление с одной областью для задач, которые нужно решить для поддержки новой серверной части базы данных. Дополнительные сведения см. в записи блога Перенос приложения Java из Oracle.

Выполнение тестов

Тестирование переноса базы данных проводится следующим образом.

Разработка проверочных тестов. Чтобы протестировать перенос базы данных, необходимо использовать SQL-запросы. Следует создать проверочные запросы, которые будут выполняться в исходной и в целевой базах данных. Проверочные запросы должны охватывать всю определенную ранее область.

Настройка тестовой среды. Тестовая среда должна содержать копию исходной и целевой баз данных. Не забудьте изолировать тестовую среду.

Выполнение проверочных тестов. Выполните проверочные тесты в исходной и целевой базах данных, а затем проанализируйте результаты.

Выполнение тестов производительности. Запустите тесты производительности для исходной и целевой баз данных, а затем проанализируйте и сравните результаты.

Оптимизация

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

Дополнительную информацию об этих проблемах и мерах по их устранению см. в руководстве по проверке и оптимизации после миграции.

Ресурсы, посвященные миграции

Дополнительную помощь по этому сценарию миграции можно получить в приведенных ниже ресурсах. Они разработаны как вспомогательные материалы по реализации реальных проектов миграции.

Эти ресурсы разработали специалисты по разработке данных SQL. Основная задача этой команды — включить и ускорить комплексную модернизацию проектов миграции платформы данных на платформу данных Microsoft Azure.

Дальнейшие действия

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

Этапы импорта и экспорта данных базы данных Oracle (начало работы)

Описание:
1. Существует много способов импорта и экспорта данных базы данных, вы можете импортировать и экспортировать с помощью команды exp / imp, или вы можете использовать сторонний инструмент для экспорта, такой как: PLSQL
2. Если вы знакомы с командами, рекомендуется использовать команду exp / imp для импорта и экспорта, чтобы избежать проблем, вызванных различиями версий сторонних инструментов, и в то же время это более эффективно, но обратите особое внимание: обратите внимание на детали пользователя и его разрешения при использовании команды. к
3. Когда целевая база данных импортируется, необходимо создать то же имя пользователя, что и при экспорте (стараться быть согласованным), и предоставить не более низкие права, чем пользователь во время экспорта, и в то же время создать то же имя табличного пространства, что и исходная база данных, если локальная база данных уже существует. Одно и то же табличное пространство может быть только расширено.

1. Подготовка перед импортом (работа в целевой базе данных)

Дополнение знаний:
Табличное пространство
База данных Oracle хранит физические таблицы в табличных пространствах. Экземпляр базы данных может иметь N табличных пространств, а табличное пространство может иметь N таблиц. к
Табличное пространство является логическим разделением баз данных, и каждая база данных имеет по крайней мере одно табличное пространство (так называемое табличное пространство SYSTEM). Чтобы упростить управление и повысить эффективность работы, некоторые дополнительные табличные пространства могут использоваться для разделения пользователей и приложений. Например: табличное пространство USER предназначено для обычных пользователей, а табличное пространство RBS - для сегмента отката. Табличное пространство может принадлежать только одной базе данных.

1. Войдите на сервер

Вы можете использовать инструменты Xshell или secureCRT

2. Проверьте, достаточно ли места на диске

Выполните команду df -h или df -H для запроса. Если свободного места недостаточно, замените целевую среду новой целевой средой и продолжите другие операции.

3. Запрос информации о табличном пространстве

UsingВойдите в систему с помощью терминала и выполните команды в последовательности:
[oracle @ orac

] $ su-oracle (переключиться на пользователя oracle (имя пользователя для linux))

Создайте новую папку в каталоге / home / oracle / app / oradata, которая позже будет использоваться для создания табличного пространства. Путь не является уникальным и зависит от расположения целевой базы данных, где хранятся файлы данных.

OgВойдите в базу данных

Вы можете получить табличное пространство текущей базы данных, как показано ниже:


Вы также можете войти в базу данных с помощью стороннего инструмента для выполнения вышеуказанного оператора SQL (также возможны следующие шаги)
*Заметка: Если имя табличного пространства импортируемой базы данных совпадает с именем текущего существующего табличного пространства, нет необходимости создавать новое табличное пространство (не может быть перестроено), но вы должны убедиться, что размер существующего табличного пространства достаточен, или он был настроен для автоматического увеличения и автоматического увеличения максимума. Если значение достаточно велико, расширять табличное пространство не нужно, просто используйте уровень табличного пространства напрямую, пропустите четвертый шаг. к
Напротив, если нет табличного пространства с именем или табличное пространство недостаточно велико для хранения импортируемых данных, табличное пространство необходимо расширить и выполнить четвертый шаг.

4. Расширение табличного пространства

Есть много способов расширить табличное пространство, кратко представив некоторые из распространенных методов:
① напрямую увеличить размер табличного пространства:
Сначала проверьте расположение файла данных в табличном пространстве

После определения местоположения файла данных выполните команду:
Измените размер файла базы данных «путь к файлу данных», чтобы изменить размер
например:

нота : Этот метод сообщит об ошибке при увеличении табличного пространства с табличными данными, указывая, что увеличение не удалось. Рекомендуется следующий метод
② увеличить количество файлов данных
Изменить имя табличного пространства табличного пространства Добавить файл данных «Путь к добавленному файлу данных» Размер файла данных
например:

③ Установите табличное пространство для автоматического расширения
Изменение файла данных базы данных - табличного пространства, подлежащего расширению, - автоматическое расширение до следующего размера блока расширения. Максимальный максимальный размер расширения.
например:

замечания Методы могут использоваться в комбинации, особенно если вы не уверены в окончательном размере импортируемого файла, например:

После расширения табличного пространства вы можете выполнить sql, чтобы проверить размер табличного пространства на шаге 3., чтобы убедиться, что расширение табличного пространства прошло успешно.

5. Создайте временное табличное пространство и табличное пространство данных

Перед созданием пользователя необходимо сначала создать два табличных пространства: временное табличное пространство и табличное пространство базы данных, в противном случае системное табличное пространство по умолчанию вызовет другие проблемы. к
TemporaryСоздать временное табличное пространство
Создайте временное имя табличного пространства временного табличного пространства временный файл - расположение временного табличного пространства - размер размера временного табличного пространства автоматически расширяется на следующие 100 м maxsize 10240 м локальное управление экстентом;
например:

TableСоздать табличное пространство данных
Параметры примерно такие же, как при создании временного табличного пространства
например:

нота : Если вы выполняете шаг 4., то есть табличное пространство расширяется вместо нового, вам не нужно создавать табличное пространство данных (но также необходимо создать временное табличное пространство - личное мнение)

6. Создайте пользователя базы данных и укажите табличное пространство

Этот пользователь используется для управления данными, которые будут импортированы. При импорте он также переключится на этого пользователя для операции импорта (если вы используете команду imp для импорта, лучше всего, если это имя пользователя совпадает с именем пользователя, используемым при экспорте. Если оно отличается, это может быть Нужно сделать картографию), формат такой:
Создать имя пользователя пользователя, идентифицированное паролем пользователя. Табличное пространство по умолчанию. Указанное имя табличного пространства. Временное табличное пространство. Временное имя табличного пространства.
например:

7. Предоставьте права пользователя

Поскольку пользователь будет использоваться для операций импорта, разрешения, которые должны быть предоставлены пользователю, включают как минимум разрешения dba, IMP_FULL_DATABASE, и некоторые люди предполагают, что они должны соответствовать разрешениям пользователя при экспорте данных базы данных. к
SQL авторизации: (в зависимости от конкретной ситуации)

Во-вторых, используйте команду exp / imp

Расширение знаний:
Роль экспорта и импорта данных (EXPDP и IMPDP)
1. Реализовать логическое резервное копирование и логическое восстановление. к
2, перемещать объекты между пользователями базы данных. к
3. Перемещение объектов между базами данных
4, реализовать движение табличного пространства. к
Разница между экспортом и импортом данных и традиционным экспортом и импортом:
До 10g традиционный экспорт и импорт используют инструмент EXP и IMP соответственно. Начиная с 10g, сохраняются не только оригинальные инструменты EXP и IMP, но и инструменты экспорта и импорта данных EXPDP и IMPDP. При использовании EXPDP и IMPDP вам следует Вопросы, требующие внимания:
EXP и IMP являются инструментальными программами на стороне клиента, их можно использовать как на стороне клиента, так и на стороне сервера. к
EXPDP и IMPDP являются инструментами на стороне сервера и могут использоваться только на стороне сервера ORACLE, а не на стороне клиента.
IMP применяется только к файлам экспорта EXP, но не к файлам экспорта EXPDP; IMPDP применяется только к файлам экспорта EXPDP, но не к файлам экспорта EXP.

1. Экспортная команда

Существует три способа экспорта и импорта:
ExportПолный режим экспорта (импорта):
Экспортируйте все содержимое базы данных, но для работы требуются специальные разрешения,
Exp username / password buffer = 32000 file = экспортированный каталог заполнен = y
например:

ExportПользовательский режим экспорта (импорта)
Экспортировать все объекты указанного пользователя, например:

Table Экспорт (импорт) табличный режим
Экспортируйте все данные таблицы пользователя, например:

замечания : Вы можете выполнить exp help = y, imp help = y, чтобы просмотреть справочные команды, и выполнить exp или imp, чтобы просмотреть соответствующий номер версии.

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

Экспорт в соответствии с требуемым режимом экспорта

Параметр COMPRESS объединит фрагменты при экспорте, попытайтесь сжать данные в начальный экстент, по умолчанию N, как правило, рекомендуется. Параметр DIRECT сообщит EXP, что нужно читать данные напрямую, вместо использования SELECT для чтения данных в таблице, как в традиционном EXP, что уменьшает обработку операторов SQL. Как правило, рекомендуется. Однако в некоторых случаях параметр DIRECT не может быть использован. к
Другие параметры могут ссылаться на справочные команды или другие материалы для обучения. Я не буду повторять их здесь.

2. Импортировать команду

Войдите на сервер и переключитесь на пользователя оракула.

Выполнить команду импорта:
При импорте необходимо использовать нового пользователя, созданного в подготовительной работе, например: имя пользователя abc, пароль ABC
Imp username / password file = путь к файлу dmp log = полный путь к выходному журналу = y ignore = y;
например:

подсказки : Процесс импорта данных часто сталкивается с проблемами, поэтому рекомендуется обратиться к дополнительной информации, всегда есть способ ее решить. Я считаю, что всему есть необходимость в его существовании, проблема только временная, а успех неизбежен!

3. Используйте сторонние инструменты (возьмите PLSQL в качестве примера)

1. Введение в формат экспорта

① Формат Dmp: .dmp - это двоичный файл, который может быть кроссплатформенным и содержать разрешения, что является эффективным.
② Формат Sql: файлы в формате .sql можно просматривать с помощью текстового редактора. Он обладает большей гибкостью и не так эффективен, как первый. Он подходит для импорта и экспорта небольших данных. Особенно обратите внимание, что в таблице не может быть больших полей (blob, clob, long), если они есть, будет сообщено об ошибке.
③ Формат pde: файлы в формате .pde. .Pde - это собственный формат файлов PL / SQL Developer, который можно импортировать и экспортировать только с помощью инструмента PL / SQL Developer, и который нельзя просмотреть в текстовом редакторе. к
Примечания: Хотя формат dmp является наиболее предпочтительным, его нелегко реализовать по двум причинам: во-первых, этот формат требует установки полной версии oracle, поскольку при экспорте необходимо выбрать соответствующий exp.exe и imp.exe, а экспорт - это установленная версия для экспорта. Версия базы данных данных такая же, и то же самое применяется при импорте, иначе будут несовместимые версии (введенные в справочный материал, лично не подтвержденные), во-вторых, экспорт этого формата часто сталкивается с процессом экспорта в одно мгновение, но Причина неудачного экспорта неизвестна (вы можете сослаться на конфигурацию переменной среды. Конфигурация ORACLE_HOME верна, я пробовал много раз, но все еще есть проблемы, и, наконец, у меня нет выбора, кроме как экспортировать в формат pde).

2. Метод экспорта


Войдите в инструмент plsql. Используемый пользователь - это пользователь, имеющий разрешения на экспорт (exp_full_database, dba и т. Д.) Для исходной базы данных. к
Port Экспортировать оператор построения таблицы (включая структуру хранения)
Инструменты шага экспорта -> экспорт объекта пользователя, выберите объект для экспорта и экспортируйте файл .sql, как показано ниже:

Дождитесь завершения экспорта

Data Экспорт данных
Инструменты шага экспорта -> таблицы экспорта, выберите таблицу для экспорта и формат экспорта для экспорта. к
Экспорт в формат DMP, как показано ниже:


Экспорт в формат sql, как показано ниже:


Экспорт в формат pde, как показано ниже:



замечания : Если вы используете сторонний инструмент для экспорта и импорта всей базы данных, это займет много времени, и у вас должно быть достаточно времени для работы (это займет несколько часов, если объем данных большой)

3. Способ импорта

RMAN: перенос базы данных Oracle

В этом посте моего блога я покажу Вам как можно восстановить базу данных Oracle на другом хосте. В этом случае DBID базы данных будет таким же, как и исходная база данных. Вся сложность заключается в том, что когда вы хотите создать новую копию базы данных, используйте RMAN DUPLICATE . Это изменит DBID новой базы данных.

В этом примере имя моей тестовой базы данных dbase1 и она запущены на машине neptune. Целевая задача состоит в том, чтобы сделать резервную копию на машине neptune и залить эту копию на резервную машину saturn, и далее выполнить процесс восстановление экземпляра базы на машине saturn.

Шаг 1. На машине neptun делаем бэкап базы, выполняя команды в утилите RMAN:

Шаг 2. Передаем созданные две части бэкапа на целевую машину (с сервера neptune на saturn), используем команды оболочки bash на unix-сервере:

Шаг 3.Определяем DBID базы на исходной машине Neptune, обращаясь к представлению v$database :

Шаг 4.Теперь выполняем команды на целевой машине Saturn. Прежде всего установим ORACLE_SID

Шаг 5. Установим DBID и восстановим spfile из файла pfile:

Подсказка! Откройте pfile в редакторе, если хотите поменять расположение файлов базы данных

Шаг 6. Запускаем экземпляр с использованием pfile:

Шаг 7. Восстанавливаем управляющие файлы (controlfile) и монтируем базу:

Шаг 8. С помощью SQL*Plus указываем файлы данных (data file) и имена журналов redo log:

Шаг 9. Каталогизируем бекапы:

Шаг 10. Если вы хотите использовать имена файлов, отличные от исходных, то создаем специальный скрипт с использованием SET NEWNAME :

Шаг 11.Открываем базу данных (переводим в состояние Open) с использование опции resetlogs :

Читайте также: