Подключение oracle к ms sql
Соединитель с Oracle (Microsoft) позволяет экспортировать данные из источника данных Oracle в пакет служб SSIS и загружать их в него.
обязательные SQL Server разрешения
Для учетной записи, используемой для подключения к SQL Server , требуются другие разрешения в зависимости от действий, выполняемых учетной записью.
Чтобы преобразовать объекты Oracle в Transact-SQL синтаксис, обновить метаданные из SQL Server или сохранить преобразованный синтаксис в скрипты, учетная запись должна иметь разрешение на вход в экземпляр SQL Server .
Чтобы загрузить объекты базы данных в SQL Server , учетная запись должна быть членом роли базы данных db_ddladmin .
Для переноса данных в SQL Server учетную запись должны быть:
- Член роли базы данных db_owner , если используется модуль миграции данных на стороне клиента.
- Член роли сервера sysadmin , если используется модуль миграции данных на стороне сервера. Это необходимо для создания CmdExec SQL Server шага задания агента во время переноса данных для запуска средства SSMAного копирования.
SQL Server Учетные записи-посредники агентов не поддерживаются при переносе данных на стороне сервера.
Для запуска кода, созданного SSMA, учетная запись должна иметь EXECUTE разрешения для всех определяемых пользователем функций в схеме ssma_oracle целевой базы данных. Эти функции предоставляют эквивалентные функции системных функций Oracle и используются преобразованными объектами.
Обновление метаданных Oracle
Метаданные базы данных Oracle не обновляются автоматически. Метаданные в обозревателе метаданных Oracle — это моментальный снимок метаданных при первом подключении или при последнем обновлении вручную метаданных. Метаданные можно обновлять вручную для всех схем, одной схемы или отдельных объектов базы данных.
Обновление метаданных
Убедитесь, что вы подключены к базе данных.
В обозревателе метаданных Oracle установите флажок рядом с каждой схемой или объектом базы данных, которые необходимо обновить.
Щелкните правой кнопкой мыши схемы или отдельную схему или объект базы данных, а затем выберите пункт Обновить из базы данных.
если у вас нет активного подключения, SSMA отобразит диалоговое окно Подключение в Oracle , чтобы можно было подключиться.
В диалоговом окне Обновление из базы данных укажите объекты для обновления.
- Чтобы обновить объект, щелкните активное поле рядом с объектом, пока не появится стрелка.
- Чтобы предотвратить обновление объекта, щелкните активное поле рядом с объектом, пока не появится знак X .
- Чтобы обновить или отклонить категорию объектов, щелкните активное поле рядом с папкой категории.
Чтобы просмотреть определения цветового кодирования, нажмите кнопку Условные обозначения .
установка подключения SQL Server
Перед преобразованием объектов базы данных Oracle в SQL Server синтаксис необходимо установить соединение с экземпляром SQL Server , на котором необходимо перенести базу данных или базы.
При определении свойств соединения также указывается база данных, в которую будут перенесены объекты и данные. Это сопоставление можно настроить на уровне схемы Oracle после подключения к SQL Server . дополнительные сведения см. в разделе сопоставление схем Oracle с SQL Server схемами (OracleToSQL).
Прежде чем пытаться подключиться к SQL Server , убедитесь, что экземпляр SQL Server работает и может принимать подключения.
Чтобы подключиться к SQL Server :
в меню файл выберите Подключение для SQL Server. Если ранее вы подключились к SQL Server , имя команды будет повторно подключено к SQL Server.
В диалоговом окне Соединение введите или выберите имя экземпляра SQL Server .
- При подключении к экземпляру по умолчанию на локальном компьютере можно ввести localhost или точку ( . ).
- При подключении к экземпляру по умолчанию на другом компьютере введите имя компьютера.
- При подключении к именованному экземпляру на другом компьютере введите имя компьютера, затем обратную косую черту, а затем имя экземпляра, например MyServer\MyInstance .
Если экземпляр SQL Server настроен для приема подключений по нестандартному порту, введите номер порта, используемый для SQL Server соединений, в поле порт сервера . Для экземпляра SQL Server по умолчанию номер порта по умолчанию — 1433. Для именованных экземпляров SSMA попытается получить номер порта из SQL Server службы браузера.
В поле база данных введите имя целевой базы данных. Этот параметр недоступен при повторном подключении к SQL Server .
В поле Проверка подлинности выберите тип проверки подлинности, который будет использоваться для соединения. чтобы использовать текущую учетную запись Windows, выберите Windows проверка подлинности. чтобы использовать SQL Server имя входа, выберите SQL Server проверка подлинности, а затем укажите имя входа и пароль.
Для безопасного подключения добавляются два элемента управления: флажки Шифровать соединение и TrustServerCertificate . Флажок TrustServerCertificate отображается только при установленном шифровании соединения . Если флажок Шифровать соединение установлен (true) и TrustServerCertificate не установлен (false), сертификат SSL будет проверен SQL Server . Проверка сертификата сервера является частью SSL-подтверждения и гарантирует, что для подключения выбран правильный сервер. Чтобы убедиться в этом, сертификат должен быть установлен на стороне клиента, а также на стороне сервера.
Хотя вы можете подключаться к более поздней версии SQL Server , по сравнению с версией, выбранной при создании проекта миграции, преобразование объектов базы данных определяется целевой версией проекта, а не версией, SQL Server к которой вы подключены.
Подключение к Oracle с помощью драйвера Microsoft ODBC для Oracle
Повторное подключение к Oracle
Подключение к серверу базы данных остается активным до тех пор, пока проект не будет закрыт. При повторном открытии проекта необходимо выполнить повторное подключение, если требуется активное соединение с базой данных. Вы можете работать в автономном режиме, пока не захотите обновить метаданные, загрузить объекты базы данных в SQL Server и перенести данные.
Шаг 1 – Скачивание программы
Oracle SQL Developer доступен на официальном сайте Oracle, и его можно скачать абсолютно бесплатно, единственное, как и в случае с самой СУБД, необходимо авторизоваться или зарегистрироваться на сайте, при этом если Вы скачивали и устанавливали Oracle Database XE, то у Вас уже есть учетная запись Oracle и Вам достаточно авторизоваться на сайте.
Итак, переходим на страницу загрузки Oracle SQL Developer, вот она
Далее, нажимаем на ссылку «Download» в разделе Windows 64-bit with JDK 8 included.
После этого соглашаемся с условиями, отметив соответствующую галочку, и нажимаем на кнопку «Download sqldeveloper-20.2.0.175.1842-x64.zip». Если Вы еще не авторизованы на сайте, Вас перенаправит на страницу авторизации (где можно и зарегистрироваться), а если Вы уже авторизованы, то сразу начнется процесс загрузки.
В результате у Вас должен загрузиться ZIP-архив «sqldeveloper-20.2.0.175.1842-x64.zip» (на момент написания статьи это актуальная версия) размером около 500 мегабайт, в данном архиве находятся все необходимые для SQL Developer файлы.
Ввод строки подключения
Введите строку подключения в поле ConnectionString либо введите имя DSN в поле Dsn на странице Выбор источника данных или Выбор назначения. После того как вы введете строку подключения, мастер проанализирует ее и отобразит отдельные свойства и их значения в списке.
Ниже показан экран, который появляется после ввода строки подключения.
Ограничения и известные проблемы
- Представления не указаны в списке источников Oracle Имя таблицы или представления. В качестве временного решения используйте команду SQL и выполните действие по выбору * из представления или по заданию имени представления для свойства [Oracle Source].[TableName] в расширенном редакторе.
Удаление
Удалить соединитель Майкрософт для базы данных Oracle из SQL Server можно с помощью мастера удаления.
Чтобы перенести базы данных Oracle в SQL Server , необходимо подключиться к целевому экземпляру SQL Server . при подключении SSMA получает метаданные обо всех базах данных в экземпляре SQL Server и отображает метаданные базы данных в обозревателе метаданных SQL Server. SSMA хранит сведения о том, к какому экземпляру SQL Server вы подключены, но не хранят пароли.
Подключение будет SQL Server оставаться активным до тех пор, пока проект не будет закрыт. При повторном открытии проекта необходимо повторно подключиться к SQL Server , если требуется активное соединение с сервером. Вы можете работать в автономном режиме, пока объекты базы данных не будут загружены в SQL Server и не перенесены.
Метаданные экземпляра SQL Server не синхронизируются автоматически. вместо этого для обновления метаданных в SQL Server обозревателе метаданных необходимо вручную обновить SQL Server метаданные. дополнительные сведения см. в подразделе "синхронизация метаданных SQL Server" далее в этом разделе.
Другие поставщики данных и дополнительные сведения
Сведения о подключении к Oracle с помощью поставщика данных, не представленного в этом списке, см. в разделе Строки подключения Oracle. Этот сторонний сайт также содержит дополнительные сведения о поставщиках данных и параметрах подключения, описанных на этой странице.
Ранее, в материале «Установка Oracle Database 18c Express Edition (XE) на Windows 10», мы подробно рассмотрели процесс установки системы управления базами данных Oracle Database в бесплатной редакции, сегодня, как было уже отмечено, мы рассмотрим процесс установки бесплатного инструмента с графическим интерфейсом, с помощью которого мы можем подключаться к базе данных Oracle, писать и выполнять различные SQL запросы и инструкции, речь идет о стандартном инструменте – Oracle SQL Developer.
Oracle SQL Developer — это бесплатная графическая среда для работы с базами данных Oracle Database, разработанная компанией Oracle. SQL Developer предназначен для разработки баз данных, бизнес-логики в базах данных, а также для написания и выполнения инструкций на языках SQL и PL/SQL.
Установка Oracle SQL Developer на Windows 10
Весь процесс установки Oracle SQL Developer заключается в том, что необходимо скачать дистрибутив программы, извлечь файлы из скаченного ZIP-архива и запустить само приложение, иными словами, SQL Developer — это некая переносимая программа, которая не требует как таковой классической установки.
Сейчас мы рассмотрим те шаги, которые необходимо выполнить, чтобы начать использовать Oracle SQL Developer на Windows 10.
синхронизация метаданных SQL Server
Метаданные о SQL Server базах данных не обновляются автоматически. метаданные в SQL Server обозревателе метаданных являются моментальным снимком метаданных при первом соединении с SQL Server или при последнем обновлении метаданных вручную. Можно вручную обновить метаданные для всех баз данных или для любой отдельной базы данных или объекта базы данных. Чтобы синхронизировать метаданные, выполните следующие действия.
Убедитесь, что вы подключены к SQL Server .
в SQL Server обозревателе метаданных установите флажок рядом с базой данных или схемой базы данных, которую требуется обновить. Например, чтобы обновить метаданные для всех баз данных, установите флажок рядом с пунктом databases (базы данных).
Щелкните правой кнопкой мыши базы данных или отдельную базу данных или схему базы данных, а затем выберите синхронизировать с базой данных.
Чтобы перенести базы данных Oracle в SQL Server , необходимо подключиться к базе данных Oracle, которую требуется перенести. При подключении SSMA получает метаданные обо всех схемах Oracle, а затем отображает их на панели обозревателя метаданных Oracle. SSMA хранит сведения о сервере базы данных, но не сохраняет пароли.
Подключение к базе данных остается активным до тех пор, пока проект не будет закрыт. При повторном открытии проекта необходимо выполнить повторное подключение, если требуется активное соединение с базой данных.
Метаданные базы данных Oracle не обновляются автоматически. Вместо этого, если необходимо обновить метаданные в обозревателе метаданных Oracle, необходимо вручную обновить их. Дополнительные сведения см. в подразделе «обновление метаданных Oracle» далее в этом разделе.
Дальнейшие действия
следующим шагом процесса миграции является Подключение экземпляра SQL Server.
В этом разделе показано, как подключаться к источникам данных Oracle со страницы Выбор источника данных или Выбор назначения в мастере импорта и экспорта SQL Server. Для подключения к Oracle можно использовать ряд поставщиков данных.
Подробные требования и необходимые условия для подключения к базе данных Oracle выходят за рамки этой статьи Майкрософт. В ней предполагается, что у вас уже установлено клиентское программное обеспечение Oracle и вы можете успешно подключиться к целевой базе данных Oracle. Для получения дополнительных сведений обратитесь к администратору базы данных Oracle или к документации по Oracle.
Параметры подключения для этого поставщика данных одинаковы независимо от того, является ли Oracle источником или назначением. Таким образом, на страницах Выбор источника данных и Выбор назначения мастера отображаются одинаковые параметры.
Вам не нужно вводить строку подключения в поле ConnectionString списка. После ввода отдельных значений для имени сервера Oracle (источника данных) и информации для входа мастер собирает строку подключения из отдельных свойств и их значений.
Установка
Чтобы установить соединитель для базы данных Oracle, скачайте и запустите установщик со страницы последней версии соединителя Майкрософт для Oracle. Затем выполните указания мастера установки.
После установки соединителя необходимо перезапустить службу интеграции SQL Server, чтобы убедиться в том, что источник и назначение Oracle работают правильно.
Для выполнения пакета SSIS, предназначенного для SQL Server 2017 и более ранних версий, помимо соединителя Майкрософт для Oracle, необходимо установить клиент Oracle и соединитель Майкрософт для Oracle от Attunity соответствующих версий по следующим ссылкам:
Указываемые параметры (драйвер ODBC для Oracle)
Параметры подключения для этого поставщика данных и драйвера ODBC одинаковы независимо от того, является ли сервер Oracle источником или назначением. Таким образом, на страницах Выбор источника данных и Выбор назначения мастера отображаются одинаковые параметры.
Чтобы подключиться к Oracle с помощью драйвера ODBC для Oracle, соберите строку подключения, используя указанные ниже параметры и их значения. Полный формат строки подключения приведен после списка параметров.
Вы можете получить помощь в построении строки подключения. Кроме того, вместо указания строки подключения вы можете предоставить существующее имя DSN (имя источника данных) или создать новое. Дополнительные сведения об этих возможностях см. в разделе Подключение к источнику данных ODBC.
Драйвер
Имя драйвера ODBC — Microsoft ODBC for Oracle.
Server
Имя сервера Oracle.
Uid и Pwd
Идентификатор пользователя и пароль для подключения.
Формат строки подключения
Ниже приведен формат типичной строки подключения.
Настройка подключения к базе данных Oracle Database 18c Express Edition (XE)
Переходим к настройке подключения к базе данных Oracle Database 18c Express Edition (XE), для этого щелкаем на плюсик и выбираем «New Connection».
После чего у Вас откроется окно настройки подключения, необходимо ввести следующие данные:
- Name – имя подключения (придумываете сами);
- Username – имя пользователя, в данном случае подключаемся от имени системного пользователя SYS;
- Password – пароль пользователя SYS, это тот пароль, который Вы задали во время установки Oracle Database XE;
- Role – SYSDBA (пользовательSYS является администратором сервера, поэтому выбираем соответствующую роль);
- Hostname – адрес сервера, если Oracle Database установлен на этом же компьютере, то в поле оставляем Localhost;
- Port – порт подключения, по умолчанию 1521;
- Servicename – имя подключаемой базы данных Oracle Database. По умолчанию в Oracle Database 18c Express Edition (XE) создается база данных с именем XEPDB1, поэтому чтобы сразу подключиться к этой базе, вводим в это поле ее название, т.е. XEPDB
Чтобы проверить корректность всех введенных настроек, можно нажать на кнопку Test, и если Вы получили ответ в строке состояния «Успех», т.е. «Status: Success», то это означает, что все хорошо, сервер доступен и мы можем к нему подключиться с указанными настройками подключения.
Для сохранения подключения нажимаем «Save».
В результате Вы подключитесь к серверу и у Вас отобразится обозреватель объектов и окно для написания SQL запросов.
В Oracle Database 18c Express Edition (XE) есть схема «HR», которую можно использовать, например, для изучения языка SQL.
Заметка! Если Вас интересует язык SQL, то рекомендую почитать книгу «SQL код» – это самоучитель по языку SQL для начинающих программистов. В ней язык SQL рассматривается как стандарт, чтобы после прочтения данной книги можно было работать с языком SQL в любой системе управления базами данных.
Шаг 2 – Распаковка архива и запуск программы
После того как архив загрузится, его необходимо распаковать и запустить файл «sqldeveloper.exe».
При первом запуске у Вас могут спросить, есть ли у Вас сохраненные настройки, которые Вам хотелось бы импортировать, у нас таких нет, отвечаем «No».
В результате запустится программа и сначала появится окно, в котором Вас спросят, хотите ли Вы автоматически отправлять отчеты по работе программы в компанию Oracle, если не хотите, то снимите галочку и нажмите «OK».
Интерфейс Oracle SQL Developer выглядит следующим образом.
Установление соединения с Oracle
При подключении к базе данных SSMA считывает метаданные базы данных, а затем добавляет эти метаданные в файл проекта. Эти метаданные используются SSMA при преобразовании объектов в SQL Server синтаксис, а также при переносе данных в SQL Server . Эти метаданные можно просмотреть на панели Обозреватель метаданных Oracle и просмотреть свойства отдельных объектов базы данных.
Перед попыткой подключения убедитесь, что сервер базы данных работает и может принимать подключения.
Подключение к Oracle
в меню файл выберите Подключение для Oracle.
Если ранее вы подключились к Oracle, имя команды будет повторно подключено к Oracle.
В поле поставщик выберите поставщик клиента Oracle или поставщик OLE DB, в зависимости от того, какой поставщик установлен. Значение по умолчанию — клиент Oracle.
В поле режим выберите стандартный режим, режим тнснаме или режим строки подключения.
Используйте стандартный режим для указания имени и порта сервера. Используйте режим имени службы, чтобы вручную указать имя службы Oracle. Используйте режим строки подключения для предоставления полной строки подключения.
Если выбран стандартный режим, укажите следующие значения:
- В поле имя сервера введите или выберите имя или IP-адрес сервера базы данных.
- Если сервер базы данных не настроен для приема подключений через порт по умолчанию (1521), введите номер порта, используемый для соединений Oracle, в поле порт сервера .
- В поле ИД безопасности Oracle введите идентификатор системы.
- В поле имя пользователя введите учетную запись Oracle с необходимыми разрешениями.
- В поле пароль введите пароль для указанного имени пользователя.
Если выбран режим тнснаме, укажите следующие значения:
- в поле идентификатор Подключение введите идентификатор соединения (псевдоним TNS) базы данных.
- В поле имя пользователя введите учетную запись Oracle с необходимыми разрешениями.
- В поле пароль введите пароль для указанного имени пользователя.
Если выбран режим строка подключения, укажите строку подключения в поле строка подключения .
В следующем примере показана строка подключения OLE DB:
В следующем примере показана строка подключения клиента Oracle, использующая встроенную безопасность:
Data Source=MyOracleDB;Integrated Security=yes;
Поддерживаемые версии
Соединитель с Oracle (Microsoft) поддерживает следующие продукты Microsoft SQL Server:
- Версии начиная с Накопительного обновления 1 (CU1) для SQL Server 2019.
- SQL Server Data Tools (SSDT) 15.9.3 или более поздней версии для Visual Studio 2017
- Microsoft SQL Server Data Tools (SSDT) для Visual Studio 2019
Поддерживаются следующие версии Oracle Database и источника данных Oracle:
- Oracle 10.x;
- Oracle 11.x;
- Oracle 12c;
- Oracle 18c (без поддержки проверки подлинности Windows).
- Oracle 19c (без поддержки проверки подлинности Windows)
Oracle Database поддерживается всеми операционными системами и платформами.
Клиент Oracle не является обязательным для соединителя с Oracle Database (Microsoft) в SQL Server 2019.
Необходимые разрешения Oracle
Как минимум, учетная запись, используемая для подключения к базе данных Oracle, должна иметь следующие разрешения:
CONNECT
Требуется для подключения (создания сеанса) к базе данных.
SELECT ANY DICTIONARY
Требуется для запроса таблиц системных словарей (например, SYS.MLOG$ ), чтобы обнаружить все объекты.
Это позволит SSMA загрузить все объекты схемы, владельцами которых является подключающийся пользователь. В большинстве реальных сценариев существуют ссылки между схемами между хранимыми процедурами, и SSMA должен иметь возможность обнаружить все объекты, на которые имеются ссылки, для успешного преобразования. Чтобы получить метаданные для объектов, определенных в других схемах, учетная запись должна иметь следующие дополнительные разрешения:
SELECT ANY TABLE
Требуется для обнаружения таблиц, представлений, материализованных представлений и синонимов в других схемах.
SELECT ANY SEQUENCE
Требуется для обнаружения последовательностей в других схемах.
CREATE ANY PROCEDURE
требуется для обнаружения PL/SQL для процедур, функций и пакетов в других схемах.
CREATE ANY TRIGGER
Требуется для обнаружения определений триггеров в других схемах.
CREATE ANY TYPE
Требуется для обнаружения типов, определенных в других схемах.
Для некоторых функций SSMA требуются дополнительные разрешения. Например, если вы хотите использовать функции тестера и управления резервным копированием , необходимо предоставить подключенному пользователю следующее:
EXECUTE ANY PROCEDURE
Требуется для выполнения процедур и функций, которые необходимо протестировать во всех схемах.
CREATE ANY TABLE и ALTER ANY TABLE
Требуется для создания и изменения временных таблиц для отслеживания изменений и резервного копирования.
INSERT ANY TABLE и UPDATE ANY TABLE
Требуется для вставки данных отслеживания изменений и резервного копирования во временные таблицы.
DROP ANY TABLE
Требуется для удаления временных таблиц, используемых для отслеживания изменений и резервного копирования.
CREATE ANY INDEX и ALTER ANY INDEX
Требуется для создания и изменения индексов во временных таблицах, используемых для отслеживания изменений и резервного копирования.
DROP ANY INDEX
Требуется для удаления индексов во временных таблицах, используемых для отслеживания изменений и резервного копирования.
CREATE ANY TRIGGER и ALTER ANY TRIGGER
Требуется для создания и изменения временных триггеров, используемых для отслеживания изменений.
DROP ANY TRIGGER
Требуется для удаления временных триггеров, используемых для отслеживания изменений.
Это универсальный набор разрешений, необходимых для правильной работы SSMA. Если необходимо ограничить область миграции до подмножества схем, это можно сделать, предоставив выше разрешения для ограниченного набора объектов, а не ALL . Хотя это и возможно, может быть очень сложно правильно определить все зависимости, тем самым предотвращая неправильное функционирование SSMA. Настоятельно рекомендуется прикрепить к универсальному набору, как определено выше, чтобы устранить возможные проблемы с разрешениями в процессе миграции.
Какое имя у моего сервера Oracle?
Выполните один из следующих запросов, чтобы узнать имя сервера Oracle.
SELECT host_name FROM v$instance
SELECT sys_context('USERENV','SERVER_HOST') FROM dual
Читайте также: