Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Перенос БД на другой сервер с другой сортировкой  [new]
Success333
Member

Откуда:
Сообщений: 19
Здравствуйте!
Есть SQL Server 2012 с одними параметрами сортировки, есть пользовательская база.
Необходимо перенести базу на другой сервер SQL Server 1012 с другими параметрами сортировки.
Как это сделать?
16 ноя 16, 07:46    [19898520]     Ответить | Цитировать Сообщить модератору
 Re: Перенос БД на другой сервер с другой сортировкой  [new]
Mr. X
Guest
Success333,

Бэкап?
16 ноя 16, 08:12    [19898548]     Ответить | Цитировать Сообщить модератору
 Re: Перенос БД на другой сервер с другой сортировкой  [new]
o-o
Guest
Серверу фиолетово на коллэйшен базы, хоть ресторьте, хоть аттачьте.
Не фиолетово будет тому, кто с такой базой будет работать.
Вы потенциально огребаете проблемы с иным коллэйшеном в темпдб
16 ноя 16, 09:23    [19898710]     Ответить | Цитировать Сообщить модератору
 Re: Перенос БД на другой сервер с другой сортировкой  [new]
Success333
Member

Откуда:
Сообщений: 19
вопрос решился.
создал новую инстанцию на сервере куда надо переносить с нужными параметрами сортировки)
16 ноя 16, 09:48    [19898808]     Ответить | Цитировать Сообщить модератору
 Re: Перенос БД на другой сервер с другой сортировкой  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31435
Success333
вопрос решился.
создал новую инстанцию на сервере куда надо переносить с нужными параметрами сортировки)
Для каждой эксельной таблицы - отдельный комп :-)

Вообще нормально разработанная программа должна нормально работать, когда базу переносят на инстанс с другими настройками.

Но если она не нормально разработанная, то да, проще всего сделать отдельный сервер или инстанс.

Альтернатива - править баги, если есть возможность, или массово менять коллейты.
16 ноя 16, 10:15    [19898900]     Ответить | Цитировать Сообщить модератору
 Re: Перенос БД на другой сервер с другой сортировкой  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7868
alexeyvg,

Вы, наверное, очень трудолюбивый человек, если к каждому символьному выражению, обращающемуся к другой базе, приписываете collation.
16 ноя 16, 11:29    [19899236]     Ответить | Цитировать Сообщить модератору
 Re: Перенос БД на другой сервер с другой сортировкой  [new]
leov
Member

Откуда: С-Петербург
Сообщений: 616
Владислав Колосов,

из своего опыта знаю что переписать надо только одно
при создании временных таблиц в varchar полях
добавить collate database_default
так что не надо там особого трудолюбия
16 ноя 16, 11:57    [19899406]     Ответить | Цитировать Сообщить модератору
 Re: Перенос БД на другой сервер с другой сортировкой  [new]
o-o
Guest
leov
надо только одно
при создании временных таблиц в varchar полях
добавить collate database_default
так что не надо там особого трудолюбия

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

с чего вы решили, что теперь с этой базой работает какое-то приложение?
базу могли отдать отчетникам на растерзание,
и теперь они будут писать к этой базе произвольные запросы.
и наверняка юзать временные таблицы.
теперь надо каждому юзеру рассказать, что такое коллэйшен?
вы знаете, сколько может быть отчетников, и что такое рассказать хотя бы одному из них,
что теперь на каждый чих надо прописывать collate database_default?
16 ноя 16, 12:33    [19899542]     Ответить | Цитировать Сообщить модератору
 Re: Перенос БД на другой сервер с другой сортировкой  [new]
aleksrov
Member

Откуда:
Сообщений: 948
o-o
leov
надо только одно
при создании временных таблиц в varchar полях
добавить collate database_default
так что не надо там особого трудолюбия

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


Согласен. Вообще в ручную прописывать collate это костыль.
16 ноя 16, 12:37    [19899561]     Ответить | Цитировать Сообщить модератору
 Re: Перенос БД на другой сервер с другой сортировкой  [new]
Sybex
Member

Откуда: Moscow
Сообщений: 113
aleksrov
Вообще в ручную прописывать collate это костыль.

Смотря где. Для разработчиков в коде при создании временных таблиц - это надо делать, чтобы потом лет через ндцать не всплывали проблемы, при переносе базы на другой сервер с отличающимся collate. Так же как даты надо из текста надо через convert с указанием конкретного формата переводить, а не через cast с неизвестным результатом при смене dateformat по той или иной причине.
16 ноя 16, 12:45    [19899597]     Ответить | Цитировать Сообщить модератору
 Re: Перенос БД на другой сервер с другой сортировкой  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7868
На самом деле надо не с коллейшнами играться, а использовать юникод, но все экономят, да и не каждый клиент его поддерживает.
16 ноя 16, 14:10    [19900072]     Ответить | Цитировать Сообщить модератору
 Re: Перенос БД на другой сервер с другой сортировкой  [new]
Sybex
Member

Откуда: Moscow
Сообщений: 113
Владислав Колосов
На самом деле надо не с коллейшнами играться, а использовать юникод, но все экономят, да и не каждый клиент его поддерживает.

А юникод тут при чём? Коллейшн ведь не только за кодировку отвечает, там же ещё правила сортировки, сравнения и т.д. и т.п. Так что если мы будем сравнивать две строки в юникоде, но с разными коллейшанами, то мы получим ошибку! Потому что сервер не сможет их сравнить.
16 ноя 16, 14:27    [19900177]     Ответить | Цитировать Сообщить модератору
 Re: Перенос БД на другой сервер с другой сортировкой  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31435
Владислав Колосов
alexeyvg,

Вы, наверное, очень трудолюбивый человек, если к каждому символьному выражению, обращающемуся к другой базе, приписываете collation.
Так не надо делать, это плохое проектирование, как минимум это будет замедлять запросы.
Ну и "другая база", к которой есть обращение, будет с правильным коллейтом, т.к. тоже есть часть системы и будет переноситься. Опять же, при установке нового инстанса эта другая база не изменит своего коллейта, когда вы её восстановите из бакапа на новый инстанс.

А вот если речь про темпдб, то объекты в ней нужно просто правильно создавать. Писать на автомате collate database_default никакого труда не составляет.
aleksrov
Согласен. Вообще в ручную прописывать collate это костыль.
Речь не о ручном прописывании, а о специальной конструкции "collate database_default".

Владислав Колосов
На самом деле надо не с коллейшнами играться, а использовать юникод
... но это не устранит ошибки при переносе базы на другой сервер :-)
o-o
с чего вы решили, что теперь с этой базой работает какое-то приложение?
базу могли отдать отчетникам на растерзание,
и теперь они будут писать к этой базе произвольные запросы.
и наверняка юзать временные таблицы.
теперь надо каждому юзеру рассказать, что такое коллэйшен?
вы знаете, сколько может быть отчетников, и что такое рассказать хотя бы одному из них,
что теперь на каждый чих надо прописывать collate database_default?
Отчётники - это вообще не "каждый пользователь", а программисты, которые вполне могут уметь программировать такие простейшие вещи :-)
Человек, который знает, что такие временная таблица, вполне может написать collate database_default

Ну тут уже бизнес регулирует, что ему выгодно - программистов подешевле и инстанс на каждую базу, или наоборот.
16 ноя 16, 19:52    [19901191]     Ответить | Цитировать Сообщить модератору
 Re: Перенос БД на другой сервер с другой сортировкой  [new]
o-o
Guest
alexeyvg
Отчётники - это вообще не "каждый пользователь", а программисты, которые вполне могут уметь программировать такие простейшие вещи :-)
Человек, который знает, что такие временная таблица, вполне может написать collate database_default
.

Да надо же.
Программисты у моего довольно крупного клиента сидят в IT,
а вот отчетники все поголовно экономисты.
Они делятся на аксессников/эксельщиков, которые себе целиком таблицы закачивают и потом создают уйму новых, но уже в аксессе(и по сути именно временные таблицы создают),
и более продвинутых: им всем установили Management Studio и сказали писать запросы прямо там.
Вот они в курсе временных таблиц, и любят их больше постояных, потому что, создавая постоянные, забывают указать dbo, получают в схеме, одноименной с их учеткой, пугаются, не находят, считают, что остальные теперь не увидят такую таблицу, гвалт поднимают еще тот.
И я точно знаю, что меня ждёт, если я им про коллэйшен расскажу
16 ноя 16, 20:22    [19901239]     Ответить | Цитировать Сообщить модератору
 Re: Перенос БД на другой сервер с другой сортировкой  [new]
leov
Member

Откуда: С-Петербург
Сообщений: 616
o-o,

вы как-то свою собственную ситуацию пытаетесь на весь мир растянуть
я уверен что существует миллион ситуаций даже еще более сложных...
но если у вас есть примитивная задача перетащить базу приложения
с сервера разработки на релизный сервер заказчика с непонятным коллейшеном
то допилить ее до совместимости почти ничего не стоит
мне этого в свое время по уши хватило
16 ноя 16, 20:49    [19901317]     Ответить | Цитировать Сообщить модератору
 Re: Перенос БД на другой сервер с другой сортировкой  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31435
o-o
alexeyvg
Отчётники - это вообще не "каждый пользователь", а программисты, которые вполне могут уметь программировать такие простейшие вещи :-)
Человек, который знает, что такие временная таблица, вполне может написать collate database_default
.

Да надо же.
Программисты у моего довольно крупного клиента сидят в IT,
а вот отчетники все поголовно экономисты.
Они делятся на аксессников/эксельщиков, которые себе целиком таблицы закачивают и потом создают уйму новых, но уже в аксессе(и по сути именно временные таблицы создают),
и более продвинутых: им всем установили Management Studio и сказали писать запросы прямо там.
Вот они в курсе временных таблиц, и любят их больше постояных, потому что, создавая постоянные, забывают указать dbo, получают в схеме, одноименной с их учеткой, пугаются, не находят, считают, что остальные теперь не увидят такую таблицу, гвалт поднимают еще тот.
И я точно знаю, что меня ждёт, если я им про коллэйшен расскажу
Ну что, перенесли сервер на инстанс с другим коллейшеном.
Они напишут запрос, он не заработает.
Они испугаются, прибегут, тут вы им и скажете, что это баг микрософта, что он мастдай, но вы шаман и дадите им такую шамансткую тайную штучку, чтоб обмануть микрософт.
Профит. Уважение. Незаменимость. Экономисты за вас горой :-)

Я же говорю, тут уже тонкости конкретной ситуации. Иногда можно и отдельный сервер поставить, если это выгоднее.

Просто я писал про то, что это баг проги, что нужно это понимать, и именно так к нему относится.
То есть если какая то компания впаривает вам прогу, базу которой которую нельзя развернуть на обычном сиквеле простым восстановлением из бакапа, то вы уже знаете про этих разработчиков всё :-)
16 ноя 16, 20:59    [19901364]     Ответить | Цитировать Сообщить модератору
 Re: Перенос БД на другой сервер с другой сортировкой  [new]
o-o
Guest
leov
o-o,

вы как-то свою собственную ситуацию пытаетесь на весь мир растянуть

Вы внимательно читали всю тему?
Мои комментарии начались как раз после того, как кто-то другой растянул на весь мир ситуацию приложения, которое надо писать так и сяк.
У меня был всего лишь приведен пример иной ситуации.
После чего мне снова безапелляционно заявляют, что отчетники это сплошь программисты.
Покажите мне, где я обобщаю, плиз.
А я укажу, где обобщает оппонент:
alexeyvg
Для каждой эксельной таблицы - отдельный комп :-)

Вообще нормально разработанная программа должна нормально работать, когда базу переносят на инстанс с другими настройками.

Но если она не нормально разработанная, то да, проще всего сделать отдельный сервер или инстанс.

Альтернатива - править баги, если есть возможность, или массово менять коллейты.


alexeyvg
Отчётники - это вообще не "каждый пользователь", а программисты, которые вполне могут уметь программировать такие простейшие вещи :-)
Человек, который знает, что такие временная таблица, вполне может написать collate database_default

Ну тут уже бизнес регулирует, что ему выгодно - программистов подешевле и инстанс на каждую базу, или наоборот.


Если человек инстанс переставил, наверное, основания на то у него были.
Я привожу пример, да еще и получаю.
А тот, кто считает, что любая база это эксельная таблица, уже под госзащитой. Охренеть!
16 ноя 16, 21:03    [19901374]     Ответить | Цитировать Сообщить модератору
 Re: Перенос БД на другой сервер с другой сортировкой  [new]
o-o
Guest
alexeyvg,
+
Это со стороны кажется уважуха и незаменимость.
Я тоже себя в этом убеждаю.
Но плохо мне у них.
Люди премилые, гении Экселя, но сколько волка ни корми, он в лес смотрит.
Я ищу новое место.
Не прикалывает быть отличником в группе второгодников, лучше троечником в нормальном классе
16 ноя 16, 21:12    [19901394]     Ответить | Цитировать Сообщить модератору
 Re: Перенос БД на другой сервер с другой сортировкой  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31435
o-o
Если человек инстанс переставил, наверное, основания на то у него были.
Из ветки непонятно, были или нет.
Если это чужая прога, то были. А если своя, то не были.
16 ноя 16, 21:14    [19901400]     Ответить | Цитировать Сообщить модератору
 Re: Перенос БД на другой сервер с другой сортировкой  [new]
leov
Member

Откуда: С-Петербург
Сообщений: 616
o-o,

что-то у вас там нечисто
какие-то "отчетники", которые не программисты
копающиеся грязными лапами прямо в релизной базе.....
бардак какой-то

аналитик разрабатывает макет отчета
отдает его программистам
они отдают юзерам отчет в приложение
16 ноя 16, 21:26    [19901428]     Ответить | Цитировать Сообщить модератору
 Re: Перенос БД на другой сервер с другой сортировкой  [new]
o-o
Guest
leov
o-o,

что-то у вас там нечисто
какие-то "отчетники", которые не программисты
копающиеся грязными лапами прямо в релизной базе.....
бардак какой-то

аналитик разрабатывает макет отчета
отдает его программистам
они отдают юзерам отчет в приложение

Все у них чисто.
OLTP база живет своей жизнью на своем сервере, там трудится приложение.
Каждую ночь база ресторится на другой сервер, с тем же коллэйшеном.
Ночной ETL перезаливает 2 другие базы второго сервера, денормализуя и соединяя кучу всего.
И отчетники используют весь день эти базы, как исходную, так и 2 производные.
Ни в какой релиз они не лезут, они лезут в копию данных на вчерашний день.
И вот в такой ситуации еще как нужен сервер с тем же коллэйшеном.
Все его назначение это удовлетворять нужды отчетников.
И никаких макетов.
Генеральный директор звонит и говорит, сегодня к обеду хочу вот то и это. И они на ходу делают ему заказанное. Хоть в чем, главное, в обед отчет в формате Эксель должег быть у заказавшего.
И никакой программист это не сделает, надо понимать весь их процесс и это какой-то дурдом
16 ноя 16, 21:51    [19901515]     Ответить | Цитировать Сообщить модератору
 Re: Перенос БД на другой сервер с другой сортировкой  [new]
leov
Member

Откуда: С-Петербург
Сообщений: 616
o-o,

согласен, дурдом, сочувствую
хотя если уж приработалось так то эту инерцию хрен сломаешь
все на местах сидят, на хлеб зарабатывают
работа кипит, пыль летит.....
16 ноя 16, 22:06    [19901561]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить