|
Как по ночам народ из баз выгонять? | ☑ | ||
---|---|---|---|---|
0
Shur1cIT
18.07.12
✎
14:10
|
причём заметил такую вещь что перезагрузка сервера не помогает открываешь а он всёравно висит(((
|
|||
1
zlnk
18.07.12
✎
14:11
|
из консоли?
|
|||
2
shuhard
18.07.12
✎
14:11
|
(0) неудачник
|
|||
3
Крапивница
18.07.12
✎
14:12
|
через администрирование серверов, находишь там сеансы и по одному их выкидываешь
|
|||
4
Нуф-Нуф
18.07.12
✎
14:12
|
это призрак предыдущего адинеснега
|
|||
5
Фдулич
18.07.12
✎
14:12
|
кто висит? народ?
|
|||
6
Shur1cIT
18.07.12
✎
14:14
|
Блин как руками выкинуть я знаю мне автоматом надо)))) батником сервер 1с перезапускал иногда народ остаёться)))
|
|||
7
n koretsky
18.07.12
✎
14:14
|
О_О
полуночнеги юзвери! работают 7/24/365 иногда народ остаёться (с) неубиенные, прям как "иногда они возвращаются" |
|||
8
Крапивница
18.07.12
✎
14:15
|
(6) я ж тебе пор руки и говорю
|
|||
9
n koretsky
18.07.12
✎
14:15
|
прибивай сеансы и соединения в консоли управления сервером.
поставь галку запрета входа в базу. и делай там шохош. да будет тебе счастье. |
|||
10
Shur1cIT
18.07.12
✎
14:19
|
Обясняю ситуацио))) каждую ночь на серваке дераються бекапы, ночью я обычно сплю))) некоторые неродивые юзверя не выходят из 1с вот их перед запуском бекапа надо автоматом срубать, пытался срубать с помощью пуска и остановки сервака, но после перезапуска ервака связь с открытыт клиентом иногда востанавливаеться тоесть он продолжает висеть........
|
|||
11
Ахиллес
18.07.12
✎
14:20
|
Соединение с агентом сервера (IServerAgentConnection)
TerminateSession (TerminateSession) Синтаксис: TerminateSession(<Кластер>, <Сеанс>) Параметры: <Кластер> (обязательный) Тип: Кластер серверов. Кластер, из которого должен быть удален сеанс. Должен содержать объект, полученный методом GetClusters. <Сеанс> (обязательный) Тип: Сеанс. Сеанс, который должен быть удален. Должен содержать объект, полученный методом GetSessions или GetInfoBaseSessions. Описание: Удаляет сеанс. Попытка обращения к кластеру серверов от имени удаленного сеанса вызывает исключение. Доступность: Интеграция. Оно? |
|||
12
shuhard
18.07.12
✎
14:20
|
(9)[прибивай сеансы и соединения в консоли управления сервером. ]
ржака чего только по тупости и лени одинэсники не предложат |
|||
13
Shur1cIT
18.07.12
✎
14:22
|
(11) изучаю...... тоесть необходимо создать базу которая будет рубить?
|
|||
14
aleks-id
18.07.12
✎
14:23
|
>>на серваке дераються бекапы
и чем тебе рабочие юзеры помешали? скуль замечательно делает бэкапы. или ты DT выгружаешь? |
|||
15
Фдулич
18.07.12
✎
14:24
|
неужели dt?
|
|||
16
Shur1cIT
18.07.12
✎
14:26
|
(14) DT так проще востанавливать так как востановление может быть и в фаловую и в другую версию скуль итд
|
|||
17
stix2010
18.07.12
✎
14:27
|
(6) если службу перезапускаешь, то в 8.2 валидные сессии на клиентах живут 20 минут и могут обратно подключится после того как сервер снова станет доступным
|
|||
18
lordmb
18.07.12
✎
14:27
|
создай регламентное задание, в котором:
ОбработкаБлокировки = Обработки.БлокировкаСоединенийСИнформационнойБазой.Создать(); ОбработкаБлокировки.КодРазрешения = КодРазрешения; ОбработкаБлокировки.НачалоБлокировки = НачалоБлокировки; ОбработкаБлокировки.ОкончаниеБлокировки = ОкончаниеБлокировки; ОбработкаБлокировки.Сообщение = "вон отсюда"; ОбработкаБлокировки.УстановитьБлокировкуСоединений = Истина; ОбработкаБлокировки.УстановитьБлокировку(); |
|||
19
Kreont
18.07.12
✎
14:28
|
в DT делать архив не рационально, разве только 1 раз в месяц на "всякий случай" :)
|
|||
20
Tata001
18.07.12
✎
14:29
|
(16) смысл...т.е. бэкап делается 1 раз в сутки ? маловато
|
|||
21
stix2010
18.07.12
✎
14:30
|
лучше бэкап sql
(19) может ему ТИИ надо запускать |
|||
22
aleks-id
18.07.12
✎
14:46
|
(16) это хавно а не бэкапы. и в один прекрасный момент, когда у тебя все накроется медным тазом, ты вспомнишь мои слова...
|
|||
23
Shur1cIT
18.07.12
✎
14:47
|
(22) почему не бекапы?
|
|||
24
trambalda
18.07.12
✎
14:47
|
(2) Заржал в голос.
Рыдаю... |
|||
25
Bliz
18.07.12
✎
14:48
|
решал такую задачу с помощью AutoIT, с ним знаком?
|
|||
26
Bliz
18.07.12
✎
14:49
|
если надо могу скинуть готовый скрипт, правда он там сиильно наворочен=) тебе много не надо будет.
|
|||
27
Bliz
18.07.12
✎
14:49
|
много=многое
|
|||
28
stix2010
18.07.12
✎
14:50
|
ТС применительно к твоему вопросу разнеси стоп и старт службы на 30 минут, или существуют vbs скрипты работающие через com connector
|
|||
29
aleks-id
18.07.12
✎
14:53
|
(23) потому что тыщу раз обсуждали. это не бэкап и даже 1с не гарантирует что из дт-шника развернется нормальная база. только скулевый бэкап. точка.
|
|||
30
Bliz
18.07.12
✎
14:55
|
А так кури "Средства интеграции и администрирования"-> Менеджер COM-соединений в синтак помощнике
|
|||
31
LYuri
18.07.12
✎
14:55
|
(29) согласен, но пока что DT не подводил и все архивы развертывались. А если база работает в файловом то тут и вариантов нету
|
|||
32
aleks-id
18.07.12
✎
14:56
|
(31) если база файловая, то копирование 1CD
|
|||
33
LYuri
18.07.12
✎
14:56
|
у меня вот такая вот обработочка по регламенту выгоняла всех
Если Найти(СтрокаСоединенияИнформационнойБазы(), "Srvr") > 0 Тогда // серверный вариант Поиск1 = Найти(СтрокаСоединенияИнформационнойБазы(), "Srvr="); ПодстрокаПоиска = Сред(СтрокаСоединенияИнформационнойБазы(), Поиск1 + 6); ИмяСервера = Лев(ПодстрокаПоиска, Найти(ПодстрокаПоиска, """") - 1); // теперь ищем имя базы Поиск1 = Найти(СтрокаСоединенияИнформационнойБазы(), "Ref="); ПодстрокаПоиска = Сред(СтрокаСоединенияИнформационнойБазы(), Поиск1 + 5); ИмяБазы = Лев(ПодстрокаПоиска, Найти(ПодстрокаПоиска, """") - 1); Сообщить("Сервер="+ИмяСервера+"; База="+ИмяБазы); Иначе // для других способов подключения алгоритм не актуален Возврат; КонецЕсли; Коннектор = Новый COMОбъект("v82.COMConnector"); Агент = Коннектор.ConnectAgent(ИмяСервера); Кластеры = Агент.GetClusters(); Для каждого Кластер из Кластеры Цикл //АдминистраторКластера = "Имя администратора кластера"; //ПарольКластера = "Пароль администратора кластера"; Агент.Authenticate(Кластер, ,); Процессы = Агент.GetWorkingProcesses(Кластер); Для каждого Процесс из Процессы Цикл Порт = Процесс.MainPort; // теперь есть адрес и порт для подключения к рабочему процессу РабПроц = Коннектор.ConnectWorkingProcess(ИмяСервера + ":" + СтрЗаменить(Порт, Символы.НПП, "")); РабПроц.AddAuthentication(,); ИнформационнаяБаза = ""; Базы = Агент.GetInfoBases(Кластер); Для каждого База из Базы Цикл Если База.Name = ИмяБазы Тогда ИнформационнаяБаза = База; Прервать; КонецЕсли; КонецЦикла; Если ИнформационнаяБаза = "" Тогда // база не найдена Сообщить("База не найдена"); КонецЕсли; Сеансы = Агент.GetInfoBaseSessions(Кластер, ИнформационнаяБаза); Для каждого Сеанс из Сеансы Цикл Если нРег(Сеанс.AppID) = "backgroundjob" ИЛИ нРег(Сеанс.AppID) = "designer" Тогда // если это сеансы конфигуратора или фонового задания, то не отключаем Продолжить; КонецЕсли; Если Сеанс.UserName = ИмяПользователя() Тогда // это текущий пользователь Продолжить; КонецЕсли; Агент.TerminateSession(Кластер, Сеанс); КонецЦикла; СоединенияБазы = Агент.GetInfoBaseConnections(Кластер, ИнформационнаяБаза); // Разорвать соединения клиентских приложений. Для Каждого Соединение Из СоединенияБазы Цикл Попытка Если нРег(Соединение.Application) = "backgroundjob" ИЛИ нРег(Соединение.Application) = "designer" Тогда // если это соединение конфигуратора или фонового задания, то не отключаем Продолжить; КонецЕсли; Если Соединение.UserName = ИмяПользователя() Тогда // это текущий пользователь Продолжить; КонецЕсли; РабПроц.Disconnect(Соединение); Исключение КонецПопытки; КонецЦикла; КонецЦикла; КонецЦикла; //После дисконнекта пользователей устанавливаем монопольный режим. Попытка УстановитьМонопольныйРежим(Истина); Сообщить("Монопольный режим установлен"); Исключение Сообщить("Не удалось установить монопольный режим"); КонецПопытки; //Обработка сделана по материалам статьи с сайта http://infostart.ru/public/77671/ |
|||
34
aleks-id
18.07.12
✎
14:56
|
ладно, делайте что хотите, ведь это ваши данные а не мои.
|
|||
35
LYuri
18.07.12
✎
14:57
|
раньше пользовался на 8.1, на 8.2 тоже вроде, но было давно. Можно довести до ума при желании
|
|||
36
LYuri
18.07.12
✎
14:57
|
(34) уговорил )))
|
|||
37
aleks-id
18.07.12
✎
15:00
|
||||
38
aleks-id
18.07.12
✎
15:02
|
плюс к этому. бэкап 50-гиговой базы скулем длится 9 минут. выгрузка в ДТ длится 1.5 часа.
загрузка бэкапа скуля в новую базу длится 8 минут, загрузка ДТ в новую базу длится 2.5 часа. |
|||
39
Fedot200
18.07.12
✎
15:04
|
(38) Согласен, скуль бэкап рулит!
|
|||
40
0_Serg_0
18.07.12
✎
15:08
|
(38) зато файловую из ДТ можно себе на локалку кинуть, а с бэкапа тока на серваке
|
|||
41
aleks-id
18.07.12
✎
15:09
|
(40) это если дт не бит. по ссылкам сходил бы из (37)
|
|||
42
aleks-id
18.07.12
✎
15:11
|
+(41) и вообще на кой ляд тебе база на локалке? чо - на сервере религия не позволяет работать? ну подними у себя сервер и скуль экспресс.
|
|||
43
LYuri
18.07.12
✎
16:55
|
(42) вопрос по скулу, експресс лцензия позволяет юзать чтоли легально без покупки?
|
|||
44
LYuri
18.07.12
✎
17:04
|
+(43) у себя скуль и сервер поднять, как минимум для сервера нужен ключ, если опять же говорить о легальности...
|
|||
45
kn
18.07.12
✎
17:25
|
закладка
|
|||
46
fisher
18.07.12
✎
17:33
|
(0) Простейший скрипт (vbs или js к примеру), который стучится по COM к менеджеру кластера и киляет сеансы. А бэкапить надо средствами сиквела. Миллион раз обсасывалось.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |