Как мы на Managed Service for SQL Server в Yandex.Cloud переезжали

19.03.21

База данных - Администрирование СУБД

Рассказ про грабли при переезде на Yandex Managed Service for SQL Server и DataLens.

Сразу скажу - смысл статьи не в критике. Я просто решил предупредить тех, кто решил проделать тот же путь, что и мы. Показать, какие вопросы пока не решены на текущий момент.

Немножко информации по сервису Managed Service for SQL Server:

Managed Service for SQL Server был запущен на Yandex.Cloud 18.12.2020 -> Сервис Yandex Managed Service for SQL Server™ перешел в общий доступ

Подробный рассказ в официальном видео:

 

Нам обещано, что почти всю головную боль на себя берет Yandex Managed Service for SQL Server

 

 

Мы знали про это решение до того, как оно появилось в декабре, решили, что после январских праздников будем перепрыгивать на Yandex Managed Service for SQL Server.

Нам надо было перенести несколько 1С баз и несколько баз других систем и подключить к одной из баз Yandex DataLens.

Задача простейшая, но…

 

Первым делом я решил перенести 1С базы.

1 Снял бекап средствами MSSQL

2 В Managed Service for SQL Server создал пустые базы и пользователя с правами владельца (DB_OWNER) на эти базы.

3 Попытался средствами MSSQL загрузить бекапы… Поковырялся пару часов и решил дедовским методом перенести через конфигуратор dt-ки.

Самое интересное, на видео выше показан именно этот метод, но почему-то я решил, что это просто совпадение.

Переезд состоялся без осложнений.

 

Осталось перенести не 1С базу и дело сделано…

Первым делом я решил-таки попробовать подсунуть бекап.

Я пытался подсунуть бекап через консоль:

Я пытался перенести бекап через Yandex Object Storage.

Не вышло...

 

В Яндекс мне порекомендовали следующее решение:

Здравствуйте. Пока единственный вариант развернуть бэкап — воспользоваться средствами экспорта-импорта в Management Studio или SSIS пакетом для загрузки данных.

Мои действия:

Я воспользовался мастером Импорт и экспорт данных в SQL Server. Данные перенеслись, но в процессе были ошибки, и система чью базу я переносил сообщила мне что база не ее. То есть при переносе что-то не перенеслось. Я повторил попытку, но и она закончилась фиаско.

Я опять обратился за советом.

 

В Яндекс мне порекомендовали следующее решение:

Концептуально сейчас есть такой порядок действий:

1. Экспорт структуры БД через SQLPackage.exe без пользователей https://docs.microsoft.com/ru-ru/sql/tools/sqlpackage/sqlpackage?view=sql-server-ver15 формат DACPAC. BACPAC не подойдёт, т.к. его импорт подразумевает право на создание БД и в существующую БД он импортироваться не умеет.

2. Создание в облаке пустой БД

3. Применение к этой БД структуры из шага 1 через тот же SQLPackage.exe

4. Загрузка данных в таблицы через средства экспорта-импорта или SSIS.

 

На каждом этапе мы сильно зависим от того, что есть в БД. Например, если окажется, что есть функции или процедуры, ссылающиеся на объекты, которых нет, то экспорт не удастся, придётся исключать отдельные объекты.

 

Мои действия:

1 Скачал последнюю версию SqlPackage.exe

2 Создал DACPAC
Команда:
sqlpackage.exe /TargetFile:"C:\Back_up_For_ya\sqlpackageoutput\output_current_version.dacpac" /Action:Extract /SourceServerName:"MSSQL" /SourceDatabaseName:"МояБаза"

3 Создал в Managed Service for SQL Server базу "МояБаза", создал пользователя "МойПользователь" и дал права DB_OWNER

4 Попытался загрузить DACPAC
Команда:
SqlPackage.exe /Action:Publish /SourceFile:"C:\Back_up_For_ya\sqlpackageoutput\output_current_version.dacpac" /TargetDatabaseName:"МояБаза" /TargetServerName:"МойСерверНаЯндексе" /TargetUser:"МойПользователь " /TargetPassword:"ПарольПользователя"

 
 Получил ошибку:

5 Запустил SqlPackage.exe так же как в 4 пункте, но добавил ключ расшифровки /Diagnostics:True

 
 Получил больше представления по ошибкам, вырезка из лога:

 

Дальше я все логи отдал в Яндекс и после нескольких дней ожеданий предложил такой вариант:

1 Я создам бекап и закину его в Object Storage.

2 Создам ссылку и дам специалистам Yandex.

3 Специалисты перенесут данный файл в место доступное для восстановления базы по средствам Microsoft SQL Server Management Studio

4 Я восстановлю базу из этого бекапа.

Возможен такой вариант?

 

В Яндекс мне ответили:

Такой вариант возможен. Только пункт 4 тоже сделают специалисты сервиса. Этот сценарий пока отрабатывается на тестовой базе. Если вы не против, можем попробовать импортировать сразу вашу базу. Для этого создадим чат в телеграме со специалистами сервиса и интерактивно все сделаем. Сообщите, пожалуйста, если такой вариант вас устроит.

 

Я естественно согласился и на следующий день мы со специалистами Яндекс довели дело до конца, но у меня было ощущение что я что-то не так делал, и я спросил:

Вопрос. Если нам еще нужно будет перенести базу через месяц, два. Мы сами сможем это сделать?

 

В Яндекс мне ответили:

пока вряд ли.
я буду готов оперативно помочь до появления надлежащих средств.

 

 

Вопрос с Yandex Managed Service for SQL Server закрыли. Переехать можно но сложно.

Я уверен на 90% что если бекап сохранить в MS Azure, то оттуда можно его и поднять без помощи Яндекс, но это не точно…

 

Немножко информации по сервису DataLens:

Сервис DataLens позволяет визуализировать данные для анализа.

 

Мое обращение в Яндекс:

У нас куплены Managed Service for SQL Server и Managed Service for PostgreSQL. В Yandex DataLens подключение к PostgreSQL создается без проблем, а к MS SQL Server подконектится не получается.

В Managed Service for SQL Server создана база и пользователь с ролями на эту базу (DB_DATAREADER DB_DENYDATAWRITER) Использовал инструкцию https://cloud.yandex.ru/docs/datalens/operations/connection/create-mssql-server#ms-sql-server-connection

Подключение не проходит. Database error.

Есть ли такая возможность в принципе или мы зря пытаемся?

 

Ответы Яндекс:

 

 

UPD 15.02.2021

Ответ Яндекс:

 

Сегодня 18.02.2021 и УРА! Подключение DataLens заработало!

 

UPD 19.03.2021

Все это время мы никак не могли протестировать DataLens, так как из-за ожидании его починки фокус сместился на другие задачи.

Вчера я все таки добрался до тестирования и... 

Мое обращение в Яндекс:

Ответ Яндекс:

Мое обращение в Яндекс:

 

Резюмирую:

В Managed Service for SQL Server переехать можно, но сложно.

DataLens то работает, то нет...

Думайте сами, решайте сами. Иметь или не иметь...

Yandex Managed Service for SQL Server DataLens Yandex.Cloud Cloud

См. также

Интеграция 1С с облаком S3 (Amazon, Yandex Object Storage, Ceph Object Gateway S3, MinIO и др.)

Облачные сервисы, хостинг 8.3.14 Конфигурации 1cv8 Россия Платные (руб)

Готовое решение по интеграции 1С с облаком S3 (Amazon, Yandex Object Storage, Ceph Object Gateway S3, MinIO и любое совместимое объектное хранилище). Решение даёт возможность осуществлять как основные операции (получить список, закачать, скачать, удалить и т.д.), так и расширенные (работа с бакетами, генерация ссылок, работа с правами и т.д.) с объектным хранилищем S3 прямо из 1С.

31200 руб.

27.04.2021    18430    24    70    

39

Облачная АТС Билайн - интеграция с 1С

Управление взаимоотношениями с клиентами (CRM) Телефония, SIP Облачные сервисы, хостинг Платформа 1С v8.3 Конфигурации 1cv8 Управленческий учет Платные (руб)

Продукт интеграции возможностей Облачной АТС Билайн в систему 1С Предприятие 8. Звонки прямо из программы 1С, уведомления о текущих звонках, регистрация пропущенных и завершенных вызовов, ведение журнала, анализ данных об использовании мобильной связи.

12000 руб.

20.03.2019    22325    52    0    

35

В облако на работу: Все варианты авторизации ОС сервером 1С на базе РЕД ОС 8 в домене windows. Рецепты от Капитана

Облачные сервисы, хостинг Linux Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

В публикации рассматриваются все варианты авторизации ОС сервером 1С на базе РЕД ОС 8 в домене windows. Как случаи, когда сервер 1С авторизирует веб и обычных клиентов 1С в active directory, так и когда сам сервер является клиентом, например при HTTP запросах выполняемых сервером 1С.

18.03.2024    375    capitan    0    

8

Поинтегрируем: сервисы интеграции – новый стандарт или просто коннектор?

Обмен между базами 1C Администрирование СУБД Механизмы платформы 1С Платформа 1С v8.3 Бесплатно (free)

В платформе 8.3.17 появился замечательный механизм «Сервисы интеграции». Многие считают, что это просто коннектор 1С:Шины. Так ли это?

11.03.2024    4448    dsdred    53    

70

Три пингвина под окном… Точки над Ё. Обзор рабочих мест пользователя 1С, собранных на отечественных дистрибутивах linux

Облачные сервисы, хостинг Linux Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Прошлая публикация "Три пингвина под окном… Обзор рабочих мест пользователя 1С, собранных на отечественных дистрибутивах linux" набрала более 20К просмотров. В моем случае это абсолютный рекорд. Как и обещал в ней, рассказываю, как установить неподдерживаемый дистрибутив ОС у облачного провайдера.

25.02.2024    2151    capitan    0    

6

Инструкция по установке Postgres для OLTP приложений и 1С. Часть 1. Базовая конфигурация

Администрирование СУБД Платформа 1С v8.3 Бесплатно (free)

В Postgres достаточно подробная документация, и, видимо, поэтому при инсталляции Postgres для 1С большинство параметров приходится выставлять самим. Параметров в Postgres много, а составить эффективную комбинацию не так просто. Все упрощается, если рассмотреть профиль нагрузки, например, 1С это прежде всего профиль OLTP нагрузки – так устроены его метаданные (объекты). Если сосредоточиться на оптимизации профиля OLTP, понимание Postgres сразу упростится.

15.02.2024    2329    1CUnlimited    14    

27

Бесплатный митап “1С в облаке: возможности и риски, решения и кейсы”

Облачные сервисы, хостинг Мероприятия Бесплатно (free)

На митапе говорили о переносе 1С в облако: какие решения есть на рынке, их достоинства и недостатки. На примере реальных кейсов узнали особенности перехода, сроки, бюджеты, риски и возможности. В программе митапа 5 докладов и круглый стол.

06.02.2024    2776    0    Infostart    0    

18

Из 1С в S3 и обратно. Работа с объектным хранилищем

Облачные сервисы, хостинг Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

В данной статье демонстрируется работа с объектным хранилищем 1С с использованием подписанных (pre-signed) ссылок. Загрузка, скачивание и удаление реализованы на "чистом" языке 1С без внешних компонент и сервисов. В качестве провайдера хранилища S3 будем использовать Яндекс.Облако

06.02.2024    3871    Sedaiko    12    

59
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. malikov_pro 1292 02.02.21 10:00 Сейчас в теме
"В Yandex DataLens подключение к PostgreSQL" - и с MySQL не работает, на сколько понимаю,+ они его кешируют в свой промежуточный ClickHouse. Гружу данные через PostgREST, чтобы не заморачиваться с ADO.

Почему не используете PG для 1С? Где расположен сервер 1С, как развернут, как лицензируется?
Как организован бекап баз, какие планы восстановления при сбое доступны?
3. dsdred 3251 02.02.21 10:18 Сейчас в теме
(1) PG используемпока не для 1с. Пока для срезов, в планах еще ClickHouse.
Я не буду говорить какую конфигурацию используем, но она не типовая и когда я ее прогнал через АПК мне выпало 150К ошибок и предупреждений. Поэтому пока решили с PG не экспериментировать. В планах на будущее будем тестить PG и если все ок перепрыгнем.

Бекапы организованы средствами Managed Service for SQL Server, все хранится в облаке.

Сейчас только начало проекта, поэтому особо рассказывать нечего ))


В Yandex DataLens подключение к PostgreSQL

По-моему работает. Покрайней мере к PostgreSQL и ClickHouse конект создается.
Прикрепленные файлы:
2. artbear 1448 02.02.21 10:08 Сейчас в теме
(0) Хорошая статья.

Мое впечатление от статьи - достаточно грустно с переездом со своих сиквел-серверов в Яндекс-облако (
фактически, своими силами мало что можно сделать.

Расскажи о результатах переезда, стало лучше/хуже, чем ожидалось, какие фишки появились и т.п.
4. dsdred 3251 02.02.21 10:29 Сейчас в теме
(2)У нас новый проект, стартовал в декабре поэтому я не могу оценить стало лучше или хуже.
Вся инфраструктура у нас на Яндексе в облаках поэтому скорость работы хорошая.
У нас договоренность использовать по максимуму сервисы Яндекса чтобы инфраструктуру проще содержать.

Через 1-3 года смогу дать какую-то оценку. Ну и плюсом обещаю по ходу какие-то вещи публиковать))
5. malikov_pro 1292 02.02.21 12:58 Сейчас в теме
(3) У меня PG так же для DataLens на VM в рамках Я-облака (чтобы тарификация была внутренняя). Думаю о переходе на сервис, потому что в типовой настройке проблемы с сессиями (склоняюсь к нагрузке со стороны DataLens.

"По-моему работает. Покрайней мере к PostgreSQL и ClickHouse конект создается." - пытался указать на архитектуру заточенную под ClickHouse c мастер таблицей и "справочниками" в SQL.
Оставьте свое сообщение