powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Репликация. Помогите новичку.
18 сообщений из 18, страница 1 из 1
Репликация. Помогите новичку.
    #32475376
stas2111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
День добрый! Помогите новичку!

Имеется ASA703 на двух машинах. Сеть.
Подскажите как настроить on-line (или с минимальными промежутками времени) репликацию между двумя БД. Как сделать, чтобы реплицировалась вся схема пользователя "одним махом". И лучше чтобы использовалось добавление строк в таблицы


Пробую MobiLink. Получается репликация по каждой таблице (их очень много), надо писать скрипты, и "перегоняет" все данные (таблицы большие).
Надо добавлять столбец в таблицы для сохранения времени репликации. База и структура не мои.


С уважением, Стас
...
Рейтинг: 0 / 0
Репликация. Помогите новичку.
    #32476063
Фотография Рыжий Кот
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вам в поиск, ищите слово "репликация".

У меня вопрос к спецам.
Рассмотрим репликацию двух таблиц Master-Detail.
В мастере есть поле confirmed (bit). В публикации есть условие для данной таблицы WHERE confirmed=1. Мне кажется, что при репликации строки из зависимой таблицы реплицируются автоматически без проверки на наличие в главной строке поля со значением confirmed=1.
Т.е. получаю все строки из зависимой таблицы, потом начинают приходить строки из мастера, и оказывается что, например, данная строка confirmed содержит 0. Следовательно мастер-строка не проходит, но тут же выходит сообщение о нарушении foreign key - оно и понятно - нет соответствующей строки из главной таблицы.

Что посоветуете? Т.е. мне нужно чтобы мастер-строка и ее соответствующие строки реплицировались ТОЛЬКО, если в мастер-строке стоит флажок.


...
Рейтинг: 0 / 0
Репликация. Помогите новичку.
    #32476358
Фотография Рыжий Кот
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Млин, пока только придумал в зависимые строки включить такое же поле и тригерами определять значение этого поля...
Но что делать если иерархия "главный-подчиненный" окажется достаточно вложенной...

...
Рейтинг: 0 / 0
Репликация. Помогите новичку.
    #32476577
Sergey Orlov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никто тебе не поможет, поскольку в твоем вопросе мало данных. Абсалютно не понятно как у тебя построена база, что имеется под словом сеть, репликация напрвлена в одну сторону или 2-х сторонняя, ну и т.д.
...
Рейтинг: 0 / 0
Репликация. Помогите новичку.
    #32476619
Sergey Orlov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Первое ссобщение я отправил новичку.
Рыжему Коту, репликация обрабатывает лог, поэтому в публикацию передаются данные основной таблицы с наложенным условием, а из подчиненной все данные, которые занесены в лог. Тебе просто надо наложить условие и на подчиненную таблицу.
...
Рейтинг: 0 / 0
Репликация. Помогите новичку.
    #32476746
Фотография Рыжий Кот
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Сергей Орлов,
Спасибо, я так и сделал.
В моем случае это просто, так как всего две таблички попали под такое условие.
Мне почему-то казалось, что в репликацию данные попадают "умно", т.е. проверяется foreign key, оказалось что нет...

...
Рейтинг: 0 / 0
Репликация. Помогите новичку.
    #32477188
stas2111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
День добрый!

По поиску мне ничего не помогло.
Суть такая: есть ASA7.
консолидированная (основная) база - на ней работает приложение и складываются данные. Много больших таблиц, как по кол-ву столбцов, так и кол-ву строк, при чем изменять таблицы на предмет добавления столбцов нельзя.
Надо сделать "горячий" резерв этой базы.
Поднял второй сервер ASA7 на другой машине, которая в этой же сети.
Надо просто добовлять данные в одну сторону из основной базы в резервную.
Обмен информацией через FTP, Mail, Http - как то не понятно, если машины стоят рядом.

Пробую через Mobilink.
На основной машине запустил Mobilink server, через ODBC подцепил его к серверу основной базы. Определил какие таблицы надо синхронизировать.
Событие download_cursor в котором select * from xxxxx.

На резервном сервере определил definition на синхронизируемые таблицы и запускаю dbmlsynk к резервной базе.

Данные перегоняет из одной в другую.

Мне вот что не понятно: как сделать, чтобы после commit в основнй базе, данные сами передавались в резервну базу.
Вообще есть такая возможность. Или то, что я настроил может реплицировать дискрето и всю информацию базы

С уважением, Стас
...
Рейтинг: 0 / 0
Репликация. Помогите новичку.
    #32479742
PaulJB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 stas2111
>>> Надо сделать "горячий" резерв этой базы.

Если тебе надо делать бекап в одной сетке, то зачем надо юзать репликации ?
Есть SQL-комманда:

BACKUP DATABASE
DIRECTORY backup-directory
[ WAIT BEFORE START ]
[ WAIT AFTER END ]
[ DBFILE ONLY ]
[ TRANSACTION LOG ONLY ]
[ TRANSACTION LOG RENAME [ MATCH ] ]
[ TRANSACTION LOG TRUNCATE ]

или подобная (см. хелп). Там можно все заделать довольно гибко. Покопай в этом направлении ...

Может и не надо огород городить с репликациями ?
Репликации для этого можно использовать, если между базами возможна связь только через файлы (FILE,FTP протоколы) или посредством EMail (SMTP протокол).

Если всетаки решишь использовать репликации, то используй DBRemote с публикациями для всех таблиц и файловым протоколом.
...
Рейтинг: 0 / 0
Репликация. Помогите новичку.
    #32482929
stas2111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Настроил полный Backup и дополнительно backup с ключем -l

от идеи репликации пока не отказываюсь, буду делать SQL Remote
...
Рейтинг: 0 / 0
Репликация. Помогите новичку.
    #32488198
Lamr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Правильно stas вопрос ставит. У меня та же проблема. Бэкап - это
слишком долго, нужна актуальная база на случай поломки сервера с основной.
Чтобы синхронизировалась как можно чаще.
Этот ваш бэкап сколько времени будет выгружаться-загружаться?
Надо, чтобы перекинул патч-корд - и дело с концом!!

Stas!
А ты не пробовал поменять местами сервера и клиента?
Тогда на commit-е можно и остановиться!
Если получиться, не мог бы подробней описать процесс, я чего-то еб..сь - не
выходит!
...
Рейтинг: 0 / 0
Репликация. Помогите новичку.
    #32488739
Фотография tchingiz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нифига бекап не долго.\r
не надо никаких репликаций для сохранения копии бд.\r
/*\r
мобиЛинк вообще редкая дрянь. кстати там политика продаж лицензий очень подозрительная и не выгодная для покупателя. в моей лично истории, весь процесс синхронизации через мобилинк заваливался по причине разных кодовых страниц.\r
база была создана со английской страницей (машина №1), пытались использовать мобилинк на машине со страницей 1251. методом деления пополам за 2 недели удалось выяснить, что репликация заваливалась изза одного единственного символа шиллинга, введенного на машине № 1\r
\r
*/\r
после бекапа получается именно актуальная копия базы.\r
ничего не надо загружать - выгружать.\r
\r
\r
работает секундами буквально. правда сетка 100мегабитная\r
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
\r
rem\r
rem   to backup the mlc database in success case\r
rem          parameters\r
rem                                                         report file\r
rem\r
rem \r
dbbackup -q -y -d  -c  "uid=dba;pwd=%5 ;eng= %1 ;dbn= %2 ;Links=tcp" -o  %3 / %4 .rpt   %3 / %4 \r
\r
if errorlevel  255  goto m255\r
if errorlevel  254  goto m254\r
if errorlevel  11   goto m11\r
if errorlevel  10   goto m10\r
if errorlevel  9    goto m9\r
if errorlevel  8    goto m8\r
if errorlevel  7    goto m7\r
if errorlevel  6    goto m6\r
if errorlevel  5    goto m5\r
if errorlevel  4    goto m4\r
if errorlevel  3    goto m3\r
if errorlevel  2    goto m2\r
if errorlevel  1    goto m1\r
\r
\r
\r
вот размер моей\r
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
\r
 Volume in drive C has no label.\r
 Volume Serial Number is 0C9E-EB6B\r
\r
 Directory of C:\\db\\mmb\\main\r
\r
>20 .04  .2004    12  :34        <DIR>          .\r
>20 .04  .2004    12  :34        <DIR>          ..\r
>30 .05  .2003    22  :58                      0  exclude.lst\r
>20 .04  .2004    12  :34                      0  list\r
>30 .03  .2004    15  :41             17   209   344  test_db.db\r
>07 .04  .2004    16  :14             20   905   984  test_db.log\r
                4  File(s)      38   115   328  bytes\r
                2  Dir(s)   20   201   631   744  bytes free\r
\r
\r
\r
кроме того есть еще инкрементал бекап.\r
если хочется ускорения.\r
\r
\r
тут живут дополнительные подробности.\r
у нас база, по историческим причинам содержит ссылки на файлы (а не файлы в блобах), поэтому отдельно надо бекапить базу и отдельно файлы.
...
Рейтинг: 0 / 0
Репликация. Помогите новичку.
    #32488747
Фотография tchingiz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пошел проверил скорость
собственно утилиты
Код: plaintext
1.
2.
3.
dbvalid -c  "uid=dba;pwd=%5 ;eng= %1 ;dbn= %2 ;links=tcp" >> %3 \\ %4 .rpt

dbbackup -q -y -d  -c  "uid=dba;pwd=%5 ;eng= %1 ;dbn= %2 ;Links=tcp" -o  %3 / %4 .rpt   %3 / %4 

проработали за 55 секунд.
и еще 45 секунд pkzip обновлял архив файласторадж

Lamr>Чтобы синхронизировалась как можно чаще.
это не технические требования, а детский лепет.
всю жизнь поддерживал копии на неделю, день и 4 часа и все были счастливы.
...
Рейтинг: 0 / 0
Репликация. Помогите новичку.
    #32488748
Фотография tchingiz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
зы
сетка у меня 10 мегабитная. в конторе стоит 100 мегабитная, но я принес свой личных 10мегабитный хаб что бы держать десктоп и лаптоп на одной дырке.
...
Рейтинг: 0 / 0
Репликация. Помогите новичку.
    #32489080
Kuzya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Это все замечательно. Вот только что делать если у меня дамп базы 7Гб весит (то он со сжатием:) ) и сам процесс бекапа часика так полтора - два идет? Да и не будете же вы бекап после каждого коммита делать, а человеку нужна постоянно актуальная, рабочая копия базы!
Посмотрите на Replication Server. У SQL Remote есть задержка при синхронизации баз.
...
Рейтинг: 0 / 0
Репликация. Помогите новичку.
    #32489133
Akni
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
По-моему, как раз для описанных целей и служит бекап с опцией -L

В хелпе по этому поводу написано следующее:

Live backup (-l lower-case L) This option is provided to enable a secondary system to be brought up rapidly in the event of a server crash. A live backup does not terminate, but continues running while the server runs. It runs until the primary server crashes. At that point, it is shut down, but the backed up log file is intact and can be used to bring a secondary system up quickly.

Насколько я понимаю, данные передаются на другой сервер постоянно, причем только актуальные изменения. И в случае краха основной базы достаточно просто стартовать базу на втором сервере.
...
Рейтинг: 0 / 0
Репликация. Помогите новичку.
    #32490898
Фотография tchingiz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну да
у новичка база часами бекапиться.
...
Рейтинг: 0 / 0
Репликация. Помогите новичку.
    #32497953
stas2111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Репликация в моей базе, по моему мнению новичка, отстой.
Много таблиц с множеством столбцов. И синхронизировать все.


В доке написано: есть консолидированная база и торговые агенты забирают и (или) добовляют свои "кусочки"

Я остановился на Dbbackup -l с резервной машины, где стоит запасной сервер БД и запасная база

Пробовал восстановление dbserv -a
на базе 2Гб и лог файле 200 Мб не более 5-10 минут.
...
Рейтинг: 0 / 0
Репликация. Помогите новичку.
    #32498216
Фотография Рыжий Кот
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторРепликация в моей базе, по моему мнению новичка, отстой.
Много таблиц с множеством столбцов. И синхронизировать все.

Все равно лучше поиграться с SQL Remote - и опыт будет, и в будущем вдруг понадобится реплицироваться по слабым каналам...

...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Репликация. Помогите новичку.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]