|
SQL Server Management Studio (SSMS) Запросы между серверам
|
|||
---|---|---|---|
#18+
Здравствуйте! Подскажите, пожалуйста, интересует вот такой вопрос: Существует 2 сервера на первом сервере идет запись с измерительного прибора (прибор автоматически создал для себя БД и записывает данные в таблицу "Result") Необходимо запрашивать c таблицы "Result" нужные столбцы и записывать на второй сервер запрашиваемые данные. Запрос должен повтрятся раз в 10-20 минут. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.08.2020, 14:22 |
|
SQL Server Management Studio (SSMS) Запросы между серверам
|
|||
---|---|---|---|
#18+
ArtDem, на втором сервере делаешь линк.сервер для первого - https://docs.microsoft.com/en-us/sql/relational-databases/linked-servers/create-linked-servers-sql-server-database-engine?view=sql-server-ver15 и дальше создаешь Job с нужным расписанием, в котором и будет "запрашивать c таблицы "Result" нужные столбцы и записывать на второй сервер запрашиваемые данные" ... |
|||
:
Нравится:
Не нравится:
|
|||
25.08.2020, 15:43 |
|
SQL Server Management Studio (SSMS) Запросы между серверам
|
|||
---|---|---|---|
#18+
court ArtDem, на втором сервере делаешь линк.сервер для первого - https://docs.microsoft.com/en-us/sql/relational-databases/linked-servers/create-linked-servers-sql-server-database-engine?view=sql-server-ver15 и дальше создаешь Job с нужным расписанием, в котором и будет "запрашивать c таблицы "Result" нужные столбцы и записывать на второй сервер запрашиваемые данные" вариант 2 - SSIS пакет + тот же Job, но, имхо, тебя это не заинтересует (но при большом объеме загружаемых/синхронизируемых данных, этот вариант может существенно выигрывать ...) ... |
|||
:
Нравится:
Не нравится:
|
|||
25.08.2020, 15:47 |
|
SQL Server Management Studio (SSMS) Запросы между серверам
|
|||
---|---|---|---|
#18+
court, не все так просто - прибору нельзя мешать записывать в таблицу. Здесь нужен вариант с темпоральной таблицей или CDC. Первый вариант заметно проще. Также можно настроить репликацию для передачи данных, если позволяет конфигурация. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.08.2020, 16:42 |
|
SQL Server Management Studio (SSMS) Запросы между серверам
|
|||
---|---|---|---|
#18+
court на втором сервере делаешь линк.сервер для первого - https://docs.microsoft.com/en-us/sql/relational-databases/linked-servers/create-linked-servers-sql-server-database-engine?view=sql-server-ver15 и дальше создаешь Job с нужным расписанием, в котором и будет "запрашивать c таблицы "Result" нужные столбцы и записывать на второй сервер запрашиваемые данные" Спасибо! Я сделал линк, можно поподробнее, как создать Job ? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.08.2020, 16:02 |
|
SQL Server Management Studio (SSMS) Запросы между серверам
|
|||
---|---|---|---|
#18+
ArtDem, Агент SQL сервер, задания, добавить. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.08.2020, 16:09 |
|
SQL Server Management Studio (SSMS) Запросы между серверам
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
26.08.2020, 16:09 |
|
SQL Server Management Studio (SSMS) Запросы между серверам
|
|||
---|---|---|---|
#18+
Владислав Колосов, Владислав Колосов, Я имел виду, как реализовать вот такую задачу: запись данных на второй сервер. Что я сделал, создал задачу с помощью вставил запрос: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
Понимаю, что этого не достаточно, нужно, как то теперь это записать в БД Match на сервере 2. Есть возможность подсказать ? Спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
26.08.2020, 17:43 |
|
SQL Server Management Studio (SSMS) Запросы между серверам
|
|||
---|---|---|---|
#18+
авторкак то теперь это записать в БД Match на сервере 2Командой insert конечно https://docs.microsoft.com/en-us/sql/t-sql/statements/insert-transact-sql?view=sql-server-ver15 ... |
|||
:
Нравится:
Не нравится:
|
|||
26.08.2020, 17:54 |
|
SQL Server Management Studio (SSMS) Запросы между серверам
|
|||
---|---|---|---|
#18+
ArtDem как то теперь это записать в БД Match на сервере 2. в шаге Job-а измени запрос на INSERT Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20.
... |
|||
:
Нравится:
Не нравится:
|
|||
26.08.2020, 17:55 |
|
SQL Server Management Studio (SSMS) Запросы между серверам
|
|||
---|---|---|---|
#18+
court, Спасибо! Я правильно понимаю, что расписание тут надо настраивать (см.скрин). Я так настраивал для бэкапа и у меня все работает, а вот тут нет, запись прошла после того как вызвал контекстное меню "Запустить задание на шаг" и после этого таблица не обновляется. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.08.2020, 21:04 |
|
SQL Server Management Studio (SSMS) Запросы между серверам
|
|||
---|---|---|---|
#18+
ArtDem, проверьте выполнение по журналу задания. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.08.2020, 21:25 |
|
SQL Server Management Studio (SSMS) Запросы между серверам
|
|||
---|---|---|---|
#18+
Владислав Колосов, Да,ошибки выдает. Не удалось завершить задание. Запуск задания был произведен Расписание 19 (SA). Последним выполнявшимся шагом был шаг 1 (SE). ... |
|||
:
Нравится:
Не нравится:
|
|||
26.08.2020, 22:17 |
|
SQL Server Management Studio (SSMS) Запросы между серверам
|
|||
---|---|---|---|
#18+
ArtDem Владислав Колосов, Да,ошибки выдает. Не удалось завершить задание. Запуск задания был произведен Расписание 19 (SA). Последним выполнявшимся шагом был шаг 1 (SE). Бэкап выполняется без проблем, агент работает. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.08.2020, 22:55 |
|
SQL Server Management Studio (SSMS) Запросы между серверам
|
|||
---|---|---|---|
#18+
ArtDem ArtDem Владислав Колосов, Да,ошибки выдает. Не удалось завершить задание. Запуск задания был произведен Расписание 19 (SA). Последним выполнявшимся шагом был шаг 1 (SE). Бэкап выполняется без проблем, агент работает. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.08.2020, 23:00 |
|
SQL Server Management Studio (SSMS) Запросы между серверам
|
|||
---|---|---|---|
#18+
Гавриленко Сергей Алексеевич, Первый вариант, я уже настраивал джоп для бэкапа и все работает. Настроил доступ к папкам, так же агент был подключен адекватно, через администратора. Бэкап по сей день работает. Запрос тоже адекватно написан, я проверял. Мне кажется, что это из за первого сервера, так как там нет агента, но с другой стороны, я же сделал линк между первым и вторым сервером. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.08.2020, 23:34 |
|
SQL Server Management Studio (SSMS) Запросы между серверам
|
|||
---|---|---|---|
#18+
Стало понятнее, ага. Давайте для простоты вы забудете про джоб с бэкапом и чётко так прям по пунктам расскажете следующее: 1. На каком сервере есть данные. 2. На какой сервер их надо перетащить. 3. На каком сервере из двух вы сделали линкованный сервер. 4. На каком сервере из двух вы пытаетесть сделать джоб. 5. На каком сервере из двух есть агент, а на каком нет. А то серверов аж целых два, и за вашими руками и мыслями не уследить. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.08.2020, 23:52 |
|
SQL Server Management Studio (SSMS) Запросы между серверам
|
|||
---|---|---|---|
#18+
Гавриленко Сергей Алексеевич Стало понятнее, ага. Давайте для простоты вы забудете про джоб с бэкапом и чётко так прям по пунктам расскажете следующее: 1. На каком сервере есть данные. 2. На какой сервер их надо перетащить. 3. На каком сервере из двух вы сделали линкованный сервер. 4. На каком сервере из двух вы пытаетесть сделать джоб. 5. На каком сервере из двух есть агент, а на каком нет. А то серверов аж целых два, и за вашими руками и мыслями не уследить. 1. Первый сервер имя "WIN-PIGV1ANGL00" - этот сервер был установлен автоматически при установки ПО от прибора, Второй сервер был создан мною так как нужен был Агент имя сервера "WIN-PIGV1ANGL00\MSSQLSERVER02" тут я создал БД Match и таблицу Result. 2. На второй. 3. На втором. 4. На втором. 5. На первом нет, на втором есть. Добавлю от себя, удалил джоп и таблицу, и сделал все заново, агент сработал один раз, второй запуск был уже с ошибкой. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2020, 00:27 |
|
SQL Server Management Studio (SSMS) Запросы между серверам
|
|||
---|---|---|---|
#18+
ArtDem Гавриленко Сергей Алексеевич Стало понятнее, ага. Давайте для простоты вы забудете про джоб с бэкапом и чётко так прям по пунктам расскажете следующее: 1. На каком сервере есть данные. 2. На какой сервер их надо перетащить. 3. На каком сервере из двух вы сделали линкованный сервер. 4. На каком сервере из двух вы пытаетесть сделать джоб. 5. На каком сервере из двух есть агент, а на каком нет. А то серверов аж целых два, и за вашими руками и мыслями не уследить. 1. Первый сервер имя "WIN-PIGV1ANGL00" - этот сервер был установлен автоматически при установки ПО от прибора, Второй сервер был создан мною так как нужен был Агент имя сервера "WIN-PIGV1ANGL00\MSSQLSERVER02" тут я создал БД Match и таблицу Result. 2. На второй. 3. На втором. 4. На втором. 5. На первом нет, на втором есть. Добавлю от себя, удалил джоп и таблицу, и сделал все заново, агент сработал один раз, второй запуск был уже с ошибкой. См. Скрин ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2020, 00:36 |
|
SQL Server Management Studio (SSMS) Запросы между серверам
|
|||
---|---|---|---|
#18+
Там еще плюсики есть на вашем скрине, вы их пробовали нажимать, ошибки читать? В которых скорее всего написано, что в таблице [Match].[dbo].[Results] уже есть записи с каким-то идентификатором. Надо как бы понимать, что вы делаете, а не слепо верить, что ваш запрос адекватный. Не адекватный он. Из таблицы [WIN-PIGV1ANGL00].[NordSteam].[dbo].[Results] надо выбирать не все записи, а только те, которых еще нет в [Match].[dbo].[Results]. Или, если предположить, что ID монотонно возрастает, то те, у которых идентификатор больше, чем максимальный в [Match].[dbo].[Results]. Как-то так: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22.
... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2020, 01:19 |
|
SQL Server Management Studio (SSMS) Запросы между серверам
|
|||
---|---|---|---|
#18+
Спасибо большое ребята. Все работает. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2020, 21:16 |
|
SQL Server Management Studio (SSMS) Запросы между серверам
|
|||
---|---|---|---|
#18+
ArtDem Бекап делается каждые 10 СЕКУНД??? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2020, 08:12 |
|
SQL Server Management Studio (SSMS) Запросы между серверам
|
|||
---|---|---|---|
#18+
SQL2008, Нет, это для теста было сделано, два раза в неделю. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2020, 16:01 |
|
SQL Server Management Studio (SSMS) Запросы между серверам
|
|||
---|---|---|---|
#18+
Добрый день! Возник один вопрос, как записывать только новые данные в таблицу? Запрос между двумя таблицами. Запрашиваем новые данные с таблицы dbo.Results и записываем в таблицу dbo.Match. Столбцов Point_ID=24 есть еще столбец Epoch - время измерения. Нужно, чтобы записывались только свежие данные. Подскажите, как правильно это сделать? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2020, 13:04 |
|
SQL Server Management Studio (SSMS) Запросы между серверам
|
|||
---|---|---|---|
#18+
ArtDem Добрый день! Возник один вопрос, как записывать только новые данные в таблицу? Запрос между двумя таблицами. Запрашиваем новые данные с таблицы dbo.Results и записываем в таблицу dbo.Match. Столбцов Point_ID=24 есть еще столбец Epoch - время измерения. Нужно, чтобы записывались только свежие данные. Подскажите, как правильно это сделать? Использовать MERGE. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2020, 13:07 |
|
|
start [/forum/topic.php?fid=46&msg=39993501&tid=1685704]: |
0ms |
get settings: |
12ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
45ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
60ms |
get tp. blocked users: |
1ms |
others: | 256ms |
total: | 412ms |
0 / 0 |