Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Кои потребителски идентификационни данни използва Integration Services Catalog за изпълнение на пакети?

Изпълнения на пакети:

Инструменти за данни на SQL Server:

Потребителски идентификационни данни, под които SQL Server Data Tools (SSDT) работи, ще се използва за изпълнение на пакетите, които се изпълняват в SSDT.

Под Windows Start \ All Programs \ Microsoft SQL Server 2012, ако щракнете върху SQL Server Data Tools, той ще се изпълнява под вашите идентификационни данни. За да стартирате под различен потребителски акаунт, можете да натиснете Ctrl + Shift за да изберете Run as different user опция.

Интеграционни каталожни услуги:

Когато щракнете с десния бутон върху пакет под Integration Services Catalog \ SSISDB \ <Folder name> \ Projects \ <Project name> \ Packages \ <Package name> и изберете Execute... за стартиране на пакет. Пакетът ще работи под идентификационните данни, използвани за свързване към SQL Server Management Studio.

Обърнете внимание, че ако се опитате да стартирате пакет с помощта на удостоверяване на SQL Server, ще получите следното съобщение за грешка:

След като натиснете Execute... , SQL Server завърта процес ISServerExec.exe , който стартира Console Window Host процес:

ISServerExec.exe е програма, която изпълнява пакети в SSIS каталога. В този случай той се стартира под същия потребител, който изпълнява SSIS пакет от SQL Server Management Studio.

Задача на SQL Server Agent без прокси:

Когато стартирате SSIS пакет от Задание на SQL Server Agent , стъпката на заданието по подразбиране се изпълнява под SQL Server Agent Service Account . Свързаният потребителски акаунт SQL Server Agent Service може да бъде намерен чрез навигиране до Windows Start \ Administrative Tools \ Services , потърсете услугата SQL Server Agent (Your Instance Name ) и намерете потребителския акаунт, посочен под Log On As

Задача на SQL Server Agent с прокси:

Можете също така да стартирате работа на SQL Server Agent под различни идентификационни данни, като създадете прокси акаунт. Когато стъпките на заданието се изпълняват под прокси акаунт, пакетът в стъпката на заданието ще се изпълни под идентификационните данни, посочени в прокси акаунта.

По-долу SO отговор предоставя инструкции стъпка по стъпка за създаване на прокси акаунт за изпълнение на SQL Server Agent Jobs.

Как да създам стъпка в моята работа на SQL Server Agent, която ще изпълнява моя SSIS пакет?

Как да потвърдите:

Примерен пакет SSIS 2012:

Ето какво направих, за да проверя горните твърдения по отношение на потребителските акаунти, използвани за изпълнение на пакети.

  • Отворете SQL Server Data Tools и създайте SSIS 2012 пакет с име SO_15289442.dtsx .

  • Създайте променлива с име ExecutionUser от тип данни String . Присвоете израза @[System::UserName] към променливата. UserName е системна променлива, която предоставя информация за потребителя, изпълняващ пакета.

  • Плъзнете и пуснете Задача за изпращане на поща към потока от данни раздел.

  • Създайте SMTP връзка и я задайте на SmtpConnection на страницата Редактор на задачите за изпращане на имейл - Поща.

  • Посочете From и To имейл адреси.

  • Променете MessageSourceType към Variable .

  • Задайте MessageSource до User::ExecutionUser .

  • Щракнете с десния бутон върху пакета и изберете Разполагане, за да разположите проекта в каталога на услугите за интеграция, достъпен на сървър по ваш избор.

Изпълнения на пакети

  • Стартирайте пакета в SSDT.

  • Отворете SSDT, като използвате опцията Изпълни като различен потребител. Предоставете различни идентификационни данни, различни от вашите, и стартирайте пакета отново.

  • Стартирайте пакета от каталога на Integration Services.

  • Създайте задание на SQL Server Agent, за да стартирате пакета с помощта на SQL Server Agent Service Account.

  • Създайте задание на SQL Server Agent, за да стартирате пакета с помощта на прокси акаунт.

За всяко изпълнение, споменато по-горе, ще получите имейл с потребителския акаунт, който е бил използван за изпълнение на пакета.

Вашият проблем:

Във вашия случай пакетът ще се изпълни под вашия акаунт (ако приемем, че използвате идентификационните си данни за достъп до SSISDB ), ако щракнете с десния бутон и изберете Изпълнение от каталога на Integration Services. Уверете се, че акаунтът има достъп до мрежовия път.

Ако изпълнявате своя пакет от SQL Server Agent Job, прокси акаунтът е run as another user опция, която разглеждате.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SSIS пакетът се проваля с грешка Ако 64-битовият драйвер не е инсталиран, стартирайте в 32-битов режим

  2. Предаване на динамични параметри към съхранена процедура в SQL Server 2008

  3. Импортирайте CSV файл в SQL Server

  4. SSIS - Преобразуване на множество стойности на колони в нула

  5. Пуснете външния ключ, без да знаете името на ограничението?