Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 процедура  [new]
dimakz
Member

Откуда:
Сообщений: 1574
добрый день,

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

1) копирует файл с сервера A1 на сервер A2
\\A1\file_log\*.xls \\A2\Folders\file_log\*.*

2) после как скопировал, надо удалить на A1
\\A1\file_log\*.xls

как сделать?
2 фев 12, 07:57    [12016576]     Ответить | Цитировать Сообщить модератору
 Re: процедура  [new]
HandKot
Member

Откуда: Sergiev Posad
Сообщений: 3058
а в чем трудности?
автор
запускать джоб

sp_start_job

автор
копирует файл с сервера A1 на сервер A2

xp_cmdshell

автор
после как скопировал, надо удалить на A1

xp_cmdshell


или же в джобе выбрать тип шага
Operation system (CmdExec)

и в нем просто прописать команды
copy и delete, а лучше просто move
2 фев 12, 08:17    [12016606]     Ответить | Цитировать Сообщить модератору
 Re: процедура  [new]
dimakz
Member

Откуда:
Сообщений: 1574
я сделал через
Operation system (CmdExec)
copy и delete, а лучше просто move


и эти команды запускает SQL Server Agent Service Account
но у меня нет доступа этого SQL Server Agent Service Account на A1 и A2...
можно ли как-ниб прописать мою учетку (dima), т.к. под моим логином есть доступ на A1 и A2
2 фев 12, 10:37    [12017161]     Ответить | Цитировать Сообщить модератору
 Re: процедура  [new]
HandKot
Member

Откуда: Sergiev Posad
Сообщений: 3058
прописать прокси на агенте для типа Operation system (CmdExec)
для этого создаете креденшинал и на его основе прокси - это теория
практического опыта в данном вопросе нет :(

попробуйте по правильному, а если не получится, то есть команда ОС

RUNAS [ [/noprofile | /profile] [/env] [/savecred | /netonly] ]
        /user:<имя пользователя> <программа>

это решение через одно место, но имеет право на существование
2 фев 12, 11:22    [12017528]     Ответить | Цитировать Сообщить модератору
 Re: процедура  [new]
Glory
Member

Откуда:
Сообщений: 104751
dimakz
можно ли как-ниб прописать мою учетку (dima), т.к. под моим логином есть доступ на A1 и A2

Нужно создать и использовать SQL Server Agent proxy account
2 фев 12, 11:27    [12017560]     Ответить | Цитировать Сообщить модератору
 Re: процедура  [new]
dimakz
Member

Откуда:
Сообщений: 1574
спасибо...

подскажите, еще,

на диске C:\Copy_files\ есть батник, который копирует файлы - main.bat
этот батник хочу засунуть в джоб, чтоб джоб запускал main.bat

в джобе (Operation system (CmdExec)) прописываю
cd c:\copy_mmsc
main.bat


это правильно, он запустит батник?

у меня ничего не копируется
2 фев 12, 11:40    [12017679]     Ответить | Цитировать Сообщить модератору
 Re: процедура  [new]
Slava_Nik
Member

Откуда: из России
Сообщений: 901
dimakz
спасибо...

подскажите, еще,

на диске C:\Copy_files\ есть батник, который копирует файлы - main.bat
этот батник хочу засунуть в джоб, чтоб джоб запускал main.bat

в джобе (Operation system (CmdExec)) прописываю
cd c:\copy_mmsc
main.bat


это правильно, он запустит батник?

у меня ничего не копируется

права на копирование есть?
ошибка какая при запуска джоба?
2 фев 12, 11:42    [12017713]     Ответить | Цитировать Сообщить модератору
 Re: процедура  [new]
HandKot
Member

Откуда: Sergiev Posad
Сообщений: 3058
dimakz
это правильно, он запустит батник?

нет
насколько я понимаю должна быть одна строка с командой, а не набор команд
попробуйте заменить

cd c:\copy_mmsc
main.bat

на
c:\copy_mmsc\main.bat


полезно будет в св-вах шага указать выгрузку информации о выполнении в файл (вкладка Advanced), а потом его анализировать
2 фев 12, 13:36    [12018684]     Ответить | Цитировать Сообщить модератору
 Re: процедура  [new]
dimakz
Member

Откуда:
Сообщений: 1574
сделал
c:\copy_mmsc\main.bat


ошибка джоба

Executed as user: dima
C:\WINDOWS\system32>change_date.vbs  'change_date.vbs' is not recognized as an internal or external command,  operable program or batch file.    C:\WINDOWS\system32>run_ftp.bat  'run_ftp.bat' is not recognized as an internal or external command,  operable program or batch file.  Process Exit Code 1.  The step failed.
2 фев 12, 13:55    [12018895]     Ответить | Цитировать Сообщить модератору
 Re: процедура  [new]
HandKot
Member

Откуда: Sergiev Posad
Сообщений: 3058
ну вероятно надо в батнике первой строкой прописать
cd c:\copy_mmsc

или же при вызове скриптов внутри батника указывать полный путь
c:\copy_mmsc\change_date.vbs

и т.д
возможно надо при вызове скриптов указывать еще команду start
start c:\copy_mmsc\change_date.vbs

но это уже в другой раздел
2 фев 12, 14:02    [12018976]     Ответить | Цитировать Сообщить модератору
 Re: процедура  [new]
dimakz
Member

Откуда:
Сообщений: 1574
заработало...
теперь затык произошел тут в батнике run_ftp.bat
в нем команда
ftp -s:C:\Copy_MMSC\copy_ftp.txt


файл copy_ftp.txt
open 192.28.2.155
dima
password
cd /file_log/cmcs
bin
prompt
mget *20120201*
bye


теперь джоб когда доходит до запуска run_ftp.bat, он показывает сообщение



Executed as user: dima. ...:\Copy_MMSC\run_ftp.bat    C:\WINDOWS\system32>ftp -s:C:\Copy_MMSC\copy_ftp.txt   ftp> Connected to 192.28.2.155.open 192.28.2.155  220 dex1-c FTP server ready.  User (192.28.2.155:(none)):   331 Password required for dima.    230 User dima logged in.  ftp> cd /file_log/cmcs  250 CWD command successful.  ftp> bin  200 Type set to I.  ftp> Interactive mode Off .   ftp> promptmget *20120201*  200 Type set to I.  200 PORT command successful.  150 Opening BINARY mode data connection for tal_21.log.20120201000259+06 (3062980 bytes).226 Transfer complete.  ftp: 3062980 bytes received in 0,06Seconds 48618,73Kbytes/sec.   200 PORT command successful.  150 Opening BINARY mode data connection for tal_21.log.20120201010259+06 (2226761 bytes).226 Transfer complete.  ftp: 2226761 bytes received in 0,05Seconds 47377,89Kbytes/sec.   200 PORT command successful.    Process Exit Code 0.  The step succeeded.


а где сами файлы? я в C:\Copy_MMSC\ их не вижу
2 фев 12, 15:17    [12019826]     Ответить | Цитировать Сообщить модератору
 Re: процедура  [new]
dimakz
Member

Откуда:
Сообщений: 1574
файлы на шел
они попали сюда C:\WINDOWS\system32
а как сделать чтоб попали в c:\copy_log
2 фев 12, 15:24    [12019888]     Ответить | Цитировать Сообщить модератору
 Re: процедура  [new]
HandKot
Member

Откуда: Sergiev Posad
Сообщений: 3058
повторю, по работе батников и еже с ними в другой раздел/разделы форума
работа батников никак не коррелирует с MSSQL. здесь рассматривают немного другие вопросы :)
2 фев 12, 15:40    [12020064]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить