|
Скрипт перестает работать если его запустить через джобу сиквела
|
|||
---|---|---|---|
#18+
Добрый день, У меня есть скрипт PowerwShell, который прекрасно работает если его запустить вручную. Если я его помещаю в джобу, то получаю ошибку: Код: sql 1. 2. 3. 4. 5. 6. 7. 8.
Тип шага джобы: "Operating system(CmdExec)" Команда: Код: powershell 1.
Если закоментить вторую строчку в команде ниже, то все работает: Код: powershell 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2020, 09:34 |
|
Скрипт перестает работать если его запустить через джобу сиквела
|
|||
---|---|---|---|
#18+
Ну дык, твоя учетная запись и учетная запись Агента имеют разные права на сервере. В том числе и на удаленном сервере. ЗЫ. Самое правильное - ЯВНО авторизоваться на удаленном сервере в скрипте powershell. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2020, 09:58 |
|
Скрипт перестает работать если его запустить через джобу сиквела
|
|||
---|---|---|---|
#18+
aleks222 Ну дык, твоя учетная запись и учетная запись Агента имеют разные права на сервере. В том числе и на удаленном сервере. ЗЫ. Самое правильное - ЯВНО авторизоваться на удаленном сервере в скрипте powershell. Я этот шаг выполняю через прокси с credentials с моей учетной записью. Это чтобы не возникло проблем с правами. Дело все-таки в "Write-SqlTableData". Без нее к серверу все прекрасно подключается. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2020, 10:37 |
|
Скрипт перестает работать если его запустить через джобу сиквела
|
|||
---|---|---|---|
#18+
Errorlog сиквела смотрите, чтобы узнать что скрывается за "Failed to connect to server server2\instance2" ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2020, 10:44 |
|
Скрипт перестает работать если его запустить через джобу сиквела
|
|||
---|---|---|---|
#18+
Roust_m Без нее к серверу все прекрасно подключается. Наивный. Ну... не пиши данные на сервер. Только, ведь, тебя это не устроит. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2020, 10:46 |
|
Скрипт перестает работать если его запустить через джобу сиквела
|
|||
---|---|---|---|
#18+
invm Errorlog сиквела смотрите, чтобы узнать что скрывается за "Failed to connect to server server2\instance2" Единственное сообщение за сегодня: Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2020, 11:09 |
|
Скрипт перестает работать если его запустить через джобу сиквела
|
|||
---|---|---|---|
#18+
aleks222 Roust_m Без нее к серверу все прекрасно подключается. Наивный. Ну... не пиши данные на сервер. Только, ведь, тебя это не устроит. Ну хорошо, а как мне явно авторизоваться на сервере? Ведь у меня их два: $SrvSource и $SrvDestination Код: powershell 1. 2.
Причем, $SrvDestination он не удаленный, на нем сама джоба и исполняется. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2020, 11:12 |
|
Скрипт перестает работать если его запустить через джобу сиквела
|
|||
---|---|---|---|
#18+
Roust_m, Если в errorlog нету сообщений вида login failed - значит либо до соединения с сервером вообще не доходит, либо смотрите не тот (не там) errorlog ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2020, 11:22 |
|
Скрипт перестает работать если его запустить через джобу сиквела
|
|||
---|---|---|---|
#18+
invm Roust_m, Если в errorlog нету сообщений вида login failed - значит либо до соединения с сервером вообще не доходит, либо смотрите не тот (не там) errorlog ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2020, 11:27 |
|
Скрипт перестает работать если его запустить через джобу сиквела
|
|||
---|---|---|---|
#18+
Roust_m, Пара наивных вопросов: 0. Сервера в одном домене? Имена полные? 1. Пробовали ли создать явное описание подключения? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2020, 11:47 |
|
Скрипт перестает работать если его запустить через джобу сиквела
|
|||
---|---|---|---|
#18+
env Roust_m, Пара наивных вопросов: 0. Сервера в одном домене? Имена полные? 1. Пробовали ли создать явное описание подключения? Да в одном. Я видоизменил скрипт: Код: powershell 1. 2. 3.
В этом виде все работает. Как только начинаю использовать Write-SqlTableData, все ломается нафик. :( ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2020, 12:13 |
|
Скрипт перестает работать если его запустить через джобу сиквела
|
|||
---|---|---|---|
#18+
Похоже я начинаю нащупывать проблему. Перед выполнением Код: powershell 1. 2.
Я перезаписал запрос, сделав его очень маленьким: Код: powershell 1.
После этого все начало работать и в джобе. Похоже дело в длине запроса. Когда он большой, то Write-SqlTableData начинает глючить. Мой реальный запрос таков: Код: powershell 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82.
Осталось понять, как этот скрипт заставить работать в джобе и большим и сложным запросом. Хранимые процедуры или вообще какие-либо объекты на сервере $SrvSource я создавать не могу. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2020, 12:39 |
|
Скрипт перестает работать если его запустить через джобу сиквела
|
|||
---|---|---|---|
#18+
Roust_m, авторЯ перезаписал запрос, сделав его очень маленьким: $Query = "select name from master.sys.databases (nolock) where database_id > 5" Дело не в размере, это запрос никуда ничего не записывает. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2020, 13:02 |
|
Скрипт перестает работать если его запустить через джобу сиквела
|
|||
---|---|---|---|
#18+
Владислав Колосов Roust_m, авторЯ перезаписал запрос, сделав его очень маленьким: $Query = "select name from master.sys.databases (nolock) where database_id > 5" Дело не в размере, это запрос никуда ничего не записывает. ну логично тогда попробовать элементарный апдейт-Insert в тестовую таблицу и глянуть прокатит или нет чтобы локализовать проблему. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2020, 13:34 |
|
Скрипт перестает работать если его запустить через джобу сиквела
|
|||
---|---|---|---|
#18+
Гулин Федор Владислав Колосов Roust_m, пропущено... Дело не в размере, это запрос никуда ничего не записывает. ну логично тогда попробовать элементарный апдейт-Insert в тестовую таблицу и глянуть прокатит или нет чтобы локализовать проблему. Гораздо логичнее - перестать жрать кактус. Если у тредстартера фсе это безобразие творится на ОДНОМ сервере, то нахера ваще Write-SqlTableData? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2020, 13:39 |
|
Скрипт перестает работать если его запустить через джобу сиквела
|
|||
---|---|---|---|
#18+
Ах да, поскольку мышей не отучишь жрать кактус, то можно ишо профайлер запустить. И узрить воотчую разницу между "прекрасно работает если его запустить вручную" и "Если я его помещаю в джобу, то получаю ошибку". Экономия кактуса может быть изрядной. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2020, 14:07 |
|
Скрипт перестает работать если его запустить через джобу сиквела
|
|||
---|---|---|---|
#18+
Гулин Федор Владислав Колосов Roust_m, пропущено... Дело не в размере, это запрос никуда ничего не записывает. ну логично тогда попробовать элементарный апдейт-Insert в тестовую таблицу и глянуть прокатит или нет чтобы локализовать проблему. Уже прокатило: Код: powershell 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2020, 16:05 |
|
Скрипт перестает работать если его запустить через джобу сиквела
|
|||
---|---|---|---|
#18+
aleks222 Гулин Федор пропущено... ну логично тогда попробовать элементарный апдейт-Insert в тестовую таблицу и глянуть прокатит или нет чтобы локализовать проблему. Гораздо логичнее - перестать жрать кактус. Если у тредстартера фсе это безобразие творится на ОДНОМ сервере, то нахера ваще Write-SqlTableData? В том-то и дело, что не на одном: (Invoke-Sqlcmd -query $Query -ServerInstance $SrvSource -database master -OutputAs DataTables) | Write-SqlTableData -ServerInstance $SrvDestination -Database mydb -SchemaName dbo -TableName mytable -Force ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2020, 16:06 |
|
Скрипт перестает работать если его запустить через джобу сиквела
|
|||
---|---|---|---|
#18+
Roust_m, авторПосле этого все начало работать и в джобе. Здесь еще интереснее - зачем Вы выполняете в джобе PS скрипт? Я бы еще понял, если это был бы планировщик windows. Что мешает использовать Integration Services, например? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2020, 18:54 |
|
Скрипт перестает работать если его запустить через джобу сиквела
|
|||
---|---|---|---|
#18+
Владислав Колосов Roust_m, авторПосле этого все начало работать и в джобе. Здесь еще интереснее - зачем Вы выполняете в джобе PS скрипт? Я бы еще понял, если это был бы планировщик windows. Что мешает использовать Integration Services, например? Всяческие ограничения, принятые прежде решения, безопасность и т.д. Идти обратно к начальству, просить пересмотреть дизайн из-за того, что одна команда не работает? Я попробую планировщик Windows, но хотелось бы иметь возможность использовать сиквел джобы, ибо они как-то привычней и более знакомы. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.07.2020, 03:05 |
|
Скрипт перестает работать если его запустить через джобу сиквела
|
|||
---|---|---|---|
#18+
Попробовал планировщик Windows, вылезает ошибка: --------------------------- Task Scheduler --------------------------- An error has occurred for task MyDB Refresh. Error message: The following error was reported: 2147944309. --------------------------- OK --------------------------- Вот по этой причине и хотелось бы иметь возможность использовать джобы сиквела, ибо они очень знакомы. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.07.2020, 03:22 |
|
Скрипт перестает работать если его запустить через джобу сиквела
|
|||
---|---|---|---|
#18+
Фиксанул эту ошибку и запустил задачу. Тот же шаг не отрабатывает и в планировщике Windows. История задач планировщика ужасная, сплошная абра-кадабра, понять почему шаг падает непросто. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.07.2020, 03:46 |
|
Скрипт перестает работать если его запустить через джобу сиквела
|
|||
---|---|---|---|
#18+
Roust_m, что хотите делать вашим скриптом? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.07.2020, 11:55 |
|
Скрипт перестает работать если его запустить через джобу сиквела
|
|||
---|---|---|---|
#18+
Roust_m aleks222 пропущено... Гораздо логичнее - перестать жрать кактус. Если у тредстартера фсе это безобразие творится на ОДНОМ сервере, то нахера ваще Write-SqlTableData? В том-то и дело, что не на одном: (Invoke-Sqlcmd -query $Query -ServerInstance $SrvSource -database master -OutputAs DataTables) | Write-SqlTableData -ServerInstance $SrvDestination -Database mydb -SchemaName dbo -TableName mytable -Force Мыши кололись, плакали, но продолжали жрать кактус... ... |
|||
:
Нравится:
Не нравится:
|
|||
30.07.2020, 14:30 |
|
Скрипт перестает работать если его запустить через джобу сиквела
|
|||
---|---|---|---|
#18+
Критик Roust_m, что хотите делать вашим скриптом? Мне нужно на базе истории бекапов на одном сервере построить команды восстановления этих бекапов на другом сервере. Linked Servers к источникам я создавать не могу, поэтому приходится использовать PowerShell. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.07.2020, 10:23 |
|
|
start [/forum/topic.php?fid=46&startmsg=39984825&tid=1685812]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
45ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
54ms |
get tp. blocked users: |
2ms |
others: | 275ms |
total: | 419ms |
0 / 0 |