Мастер, обработка DEPO: скрипт джобы SQL Agent для администратора (пояснения, повторный запуск безопасен, скачивание), подсказка у варианта с логином sa

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014FsEKyJrYF69Cj9ZXzFLRi
This commit is contained in:
zuevav
2026-10-05 13:27:28 +03:00
parent 2999eaf189
commit df643e8c60
4 changed files with 44 additions and 4 deletions
@@ -190,14 +190,17 @@ a.wstep:hover .bub { box-shadow:0 0 0 4px var(--accent-weak); }
<input type="text" name="admin_user" autocomplete="off" placeholder="логин администратора SQL, например sa" style="padding:8px;width:100%;background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:4px">
<input type="password" name="admin_password" autocomplete="new-password" placeholder="пароль" style="padding:8px;width:100%;background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:4px">
</div>
<p id="wiz-job-auto-hint" class="muted" style="font-size:12.5px;margin:-4px 0 0">Нет логина администратора SQL или его не хотят давать — выберите ниже «Джоба SQL Server Agent, создаёт администратор по скрипту»: тот же результат, скрипт выполняет администратор.</p>
<div id="wiz-job-bj" style="display:none"><p style="margin:0 0 4px;font-size:13px"><b>Администратору SQL — выполнить один раз:</b></p><pre class="copyable" style="font-size:12px">{{.DepoJob.GrantScript}}</pre></div>
<div id="wiz-job-manual" style="display:none"><p style="margin:0 0 4px;font-size:13px"><b>Скрипт для администратора SQL:</b></p><pre class="copyable" style="font-size:12px;max-height:260px;overflow:auto">{{.DepoJob.AgentScript}}</pre></div>
<div id="wiz-job-manual" style="display:none"><p style="margin:0 0 4px;font-size:13px"><b>Скрипт для администратора SQL</b> — выполнить один раз под sysadmin, затем нажать «Проверить и далее». Повторный запуск безопасен.</p>
<a href="/admin/setup/fancy/depo-job/script.sql">Скачать скрипт bj-depo-job-mssql.sql</a>
<pre class="copyable" style="font-size:12px;max-height:260px">{{.DepoJob.AdminScript}}</pre></div>
<input type="hidden" name="action" value="" id="wiz-job-action">
<div style="display:flex;justify-content:space-between;margin-top:6px"><a href="/admin/wizard?step=3&sub=tables" class="btn" style="background:var(--card);color:var(--text);border:1px solid var(--border-strong,#c9cdd8);text-decoration:none">← Назад</a><button type="submit" class="btn" id="wiz-job-btn">Создать, проверить и далее →</button></div>
<p class="muted" style="font-size:12px;margin:0">Проверка: bj кладёт служебное событие и ждёт до 40 секунд, пока обработка его отметит.</p>
</form>
<script>function wizJob(){var f=document.getElementById('wiz-job'),m=f.depo_job_mode.value;
document.getElementById('wiz-job-auto').style.display=m==='sql-auto'?'grid':'none';document.getElementById('wiz-job-bj').style.display=m==='bj'?'block':'none';document.getElementById('wiz-job-manual').style.display=m==='sql-manual'?'block':'none';
document.getElementById('wiz-job-auto').style.display=m==='sql-auto'?'grid':'none';document.getElementById('wiz-job-auto-hint').style.display=m==='sql-auto'?'block':'none';document.getElementById('wiz-job-bj').style.display=m==='bj'?'block':'none';document.getElementById('wiz-job-manual').style.display=m==='sql-manual'?'block':'none';
document.getElementById('wiz-job-action').value=m==='sql-auto'?'':'check';document.getElementById('wiz-job-btn').textContent=m==='sql-auto'?'Создать, проверить и далее →':'Проверить и далее →';}wizJob();</script>
{{else if eq $sub "done"}}
@@ -99,7 +99,8 @@
<pre class="copyable">{{.DepoJob.AgentRights}}</pre></details>
{{else if eq .Settings.Fancy.DepoJobMode "sql-manual"}}
<div style="margin-top:12px"><b>Инструкция для администратора SQL клиента</b> — создать джобу (SQL Agent должен быть запущен, служебная учётная запись Agent должна иметь право выполнять процедуру):
<pre class="copyable">{{.DepoJob.AgentScript}}</pre></div>
<a href="/admin/setup/fancy/depo-job/script.sql">Скачать скрипт bj-depo-job-mssql.sql</a>
<pre class="copyable">{{.DepoJob.AdminScript}}</pre></div>
{{end}}
{{if .Settings.Fancy.DepoJobMode}}