• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Если сервер не отвечает, то открыть БД с другого сервера

  • Автор темы oxystile
  • Дата начала
O

oxystile

3 офиса, на каждом установим Domino, настроим репликации.
вопрос: если вдруг сервер на одном из офисов завалится и чел кликнет на открытие базы, то можно ли чтобы автоматом открылась база на работающем сервере, вместо появления сообщения "сервер не доступен." А когда сервер заработает, то базы уже будут открываться по умолчанию с этого сервера?
 

puks

Lotus Team
03.02.2007
1 919
55
BIT
3
Если у тебя три иконки есть на workspace для каждого сервера, ты все равно получаешь вопрос о недоступности сервера?

Если иконки сложены с стопку, то откроется верхняя, с которой работал в последний раз.

Может тебе сделать программную надстройку, где ты будешь (программно) пытаться открыть базу на каком-то сервере, а, если не получается, то уже на другом?
 
O

oxystile

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

программно надо, только вот как?
на постопен для каждой базы что ли писать...нет, гемморно, особенно, если вспомнить про почту
 
K

Kee_Keekkenen

нужно создать коннекшены ко всем серверам.. и раз это реплики, то поставить галку на свойстве рабочей области Stack replica icons (4-й пункт снизу вверх в свойствах рабочей области), т.о. иконка будет одна и открываться будет бд на том, что отображен или по доступности)
 
O

oxystile

конекшены ко всем серверам в лок. адр. книгах, же?
а как это сделать автоматически у всех, слышала что вроде либо через программу, а юсерам кнопочку отправить на запуск кода, либо через политики,
если кто поделится подробной информ., буду благодарна
 
C

collection

_http://www.ibm.com/developerworks/ru/library/local-mail-replicas/index.html
 
D

D!m@n

Если между серверами каналы с хорошей пропускной способностью, то можно объединить их в кластер, хотя для серверов в разных офисах это не лучшее решение.
Лучше вариант, который предложил уважаемый Kee_Keekkenen, только его можно слегка автоматизировать: например, разослать юзерам кнопку с кодом, создающим соответствующий документ Connection в локальной names.nsf.
 
O

oxystile

так а в чем "-" кластеризации, в случае, если серверы в разных офисах?

<<разослать юзерам кнопку с кодом, создающим соответствующий документ Connection в локальной names.nsf. >>
когда-то давно видела подобный код, но к сожалению не сохранила, может у кого есть хотя бы ссылочка?
 
D

D!m@n

так а в чем "-" кластеризации, в случае, если серверы в разных офисах?
Во-первых, кластер можно сделать только из серверов одного домена (как у Вас с этим? один домен или разные?).
А, во-вторых, считается, что между серверами кластера должна быть постоянная, стабильная высокоскоростная линия (а с этим у Вас как? хотя бы 10 Мбит/с между серверами есть?). Делать кластер из территориально удаленных друг от друга серверов - дурной тон, хотя и возможно. Но ради одной базы этого делать точно не стоит.
 
D

D!m@n

Сейчас время образовалось - написал Вам код кнопки, добавляющей док-т Connection в локальную names.nsf. Можно разослать юзерам.

Код:
	On Error Goto MyErr
Dim s As New NotesSession
Dim uiw As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Dim dbNames As NotesDatabase
Dim doc As NotesDocument
Dim viewConnections As NotesView

servername$="MyServer/MyOrg" ' здесь задать имя сервера
servernotes$=s.CreateName(servername$).Canonical

Set dbNames=s.GetDatabase("", "names.nsf", False)
Set viewConnections=dbNames.GetView("($Connections)")

Set doc=viewConnections.GetFirstDocument
Do Until doc Is Nothing
If s.CreateName(doc.Destination(0)).Canonical = servernotes$ Then Exit Do
Set doc=viewConnections.GetNextDocument(doc)
Loop

If doc Is Nothing Then
Set doc=dbNames.CreateDocument		
End If

doc.Form="Connection"
doc.ConnectionLocation="*"
doc.Source="*"
doc.ConnectionType="0"
doc.LanPortName="TCPIP" ' здесь задать имя порта
doc.Destination=servername$ 
doc.OptionalNetworkAddress="myserver.mydomain.ru" ' здесь задать доменное имя или IP-адрес сервера

Call doc.Save(1, 0)

Set uidoc=uiw.EditDocument(True, doc, False, , True)
uidoc.Refresh
uidoc.Save
uidoc.Close

Goto es
MyErr:
Msgbox Error$ & " в строке " & Erl
Resume es
es:
 
O

oxystile

спасибо огромное за совет и за код!:)
+1
да, 10 Мбит/с у нас не будет
 
D

D!m@n

да, 10 Мбит/с у нас не будет
В принципе, здесь все строго индивидуально. Надо смотреть, сколько баз, какие они по размеру и количеству документов, сколько пользователей и т.п. Если канал не потянет, можно ведь отключить в кластере кластерную репликацию (и пользоваться фактически только фэйл-сэйв перенаправлением), но тогда все равно надо будет, чтобы шедульная репликация была достаточно частой...
 
O

oxystile

Баз, которые должны реплицироваться с интервалом 10 минут будет от 4 до 6, они небольшие по размеру.
Все остальные бызы будут реплицироваться ночью.
Однако следует учесть папку mail, там порядка 150 ящиков...
 
D

D!m@n

Баз, которые должны реплицироваться с интервалом 10 минут будет от 4 до 6, они небольшие по размеру.
Все остальные бызы будут реплицироваться ночью.
Однако следует учесть папку mail, там порядка 150 ящиков...
Так почтовые базы - тоже реплики на всех трех серверах?
Если так, то кластер лучше не поднимать, т.к. кластерный репликатор может задохнуться просто...
Впрочем, если убрать файлик ncrepl.exe из папки сервера, то получится кластер без кластерной репликации. Можете попробовать такой вариант.
Если что - вернете все обратно, дело 5 минут.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!