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

Откуда:
Сообщений: 158
Есть 2 базы на одном sql cервере.
Как скопировать таблицу из одной базы sql server в другую ?
2 июл 15, 20:12    [17845527]     Ответить | Цитировать Сообщить модератору
 Re: Как скопировать таблицу из одной базы sql server в другую ?  [new]
Oleksii Kovalov
Member

Откуда:
Сообщений: 100
SSIS
BCP
create table + insert .... select
select ... into....
2 июл 15, 20:15    [17845538]     Ответить | Цитировать Сообщить модератору
 Re: Как скопировать таблицу из одной базы sql server в другую ?  [new]
p672
Member

Откуда:
Сообщений: 158
я ничего не понял.
напишите пожалуйста развернуто или дайте ссылку
2 июл 15, 20:23    [17845568]     Ответить | Цитировать Сообщить модератору
 Re: Как скопировать таблицу из одной базы sql server в другую ?  [new]
Oleksii Kovalov
Member

Откуда:
Сообщений: 100
p672
я ничего не понял.
напишите пожалуйста развернуто или дайте ссылку

Первое - SSIS. https://msdn.microsoft.com/en-us/library/ms141134.aspx
Второе - BCP. https://msdn.microsoft.com/en-us/library/ms162802.aspx
Третье - create table (https://msdn.microsoft.com/en-us/library/ms174979.aspx) & select ( https://msdn.microsoft.com/en-us/library/ms189499.aspx )
Четверторе - тоже select, там же ( https://msdn.microsoft.com/en-us/library/ms189499.aspx )

Более развернуто
вы можете использовать SSIS, который предназначен для перекладывания данных из одного местоположения в другое
вы можете использовать утилиту BCP чтобы сначала выгрузить данные из одной базы, а затем - загрузить в другую
Вы можете создать таблицу в базе назначения, а потом вставить туда данные при помощи конструкции insert into .... select
Вы можете одновременно создать таблицу в базе назначения и вставить туда данные при помощие конструкции select.... into ....
Выбирайте на свой вкус и необходимость
для мелкой таблицы я бы выбрал вариант номер 3
для одноразовой промежуточной операции - вариант номер 4
для большгого объёма данных - первый или второй, в зависимости от настроения


Для BCP, кстати, тоже придётся создавать таблицу
2 июл 15, 20:52    [17845656]     Ответить | Цитировать Сообщить модератору
 Re: Как скопировать таблицу из одной базы sql server в другую ?  [new]
p672
Member

Откуда:
Сообщений: 158
в таблице 1900000 записей
с помощью select into можно сделать копирование таблицы?
2 июл 15, 21:16    [17845760]     Ответить | Цитировать Сообщить модератору
 Re: Как скопировать таблицу из одной базы sql server в другую ?  [new]
Oleksii Kovalov
Member

Откуда:
Сообщений: 100
p672
в таблице 1900000 записей
с помощью select into можно сделать копирование таблицы?

Можно
но нужно убедится, что у вас хватит а) места на диске под данные и лог и б) терпения дождаться окончания операции
В принципе, если таблица узкая - то будет довольно таки быстро
2 июл 15, 21:34    [17845836]     Ответить | Цитировать Сообщить модератору
 Re: Как скопировать таблицу из одной базы sql server в другую ?  [new]
Makar4ik
Member

Откуда: Когда-то были Лужки, а теперь Бордюр-Сити.
Сообщений: 2677
Oleksii Kovalov
p672
в таблице 1900000 записей
с помощью select into можно сделать копирование таблицы?

Можно
но нужно убедится, что у вас хватит а) места на диске под данные и лог и б) терпения дождаться окончания операции
В принципе, если таблица узкая - то будет довольно таки быстро
лог можно проигнорировать, если лить блоками, и логирование выставить в simple
2 июл 15, 22:36    [17846088]     Ответить | Цитировать Сообщить модератору
 Re: Как скопировать таблицу из одной базы sql server в другую ?  [new]
Oleksii Kovalov
Member

Откуда:
Сообщений: 100
Makar4ik
Oleksii Kovalov
пропущено...

Можно
но нужно убедится, что у вас хватит а) места на диске под данные и лог и б) терпения дождаться окончания операции
В принципе, если таблица узкая - то будет довольно таки быстро
лог можно проигнорировать, если лить блоками, и логирование выставить в simple

Можно. если лить блоками. для этого нужно, как минимум, уметь это делать, т.е., грубо говоря, делать пейджирование.
2 июл 15, 23:07    [17846242]     Ответить | Цитировать Сообщить модератору
 Re: Как скопировать таблицу из одной базы sql server в другую ?  [new]
Makar4ik
Member

Откуда: Когда-то были Лужки, а теперь Бордюр-Сити.
Сообщений: 2677
Oleksii Kovalov
Makar4ik
пропущено...
лог можно проигнорировать, если лить блоками, и логирование выставить в simple

Можно. если лить блоками. для этого нужно, как минимум, уметь это делать, т.е., грубо говоря, делать пейджирование.
Ну да.
Если не умеешь - будь добёр пару сотен гига освободи на разделе, где лежит tempdb
2 июл 15, 23:18    [17846291]     Ответить | Цитировать Сообщить модератору
 Re: Как скопировать таблицу из одной базы sql server в другую ?  [new]
Oleksii Kovalov
Member

Откуда:
Сообщений: 100
Makar4ik
Oleksii Kovalov
пропущено...

Можно. если лить блоками. для этого нужно, как минимум, уметь это делать, т.е., грубо говоря, делать пейджирование.
Ну да.
Если не умеешь - будь добёр пару сотен гига освободи на разделе, где лежит tempdb

А точно ли при простом insert/select нужен tempdb?
2 июл 15, 23:32    [17846353]     Ответить | Цитировать Сообщить модератору
 Re: Как скопировать таблицу из одной базы sql server в другую ?  [new]
Makar4ik
Member

Откуда: Когда-то были Лужки, а теперь Бордюр-Сити.
Сообщений: 2677
Oleksii Kovalov
Makar4ik
пропущено...
Ну да.
Если не умеешь - будь добёр пару сотен гига освободи на разделе, где лежит tempdb

А точно ли при простом insert/select нужен tempdb?
не точно.
но как только в плане появляется table spool, так сразу и нужна.
2 июл 15, 23:53    [17846422]     Ответить | Цитировать Сообщить модератору
 Re: Как скопировать таблицу из одной базы sql server в другую ?  [new]
Oleksii Kovalov
Member

Откуда:
Сообщений: 100
Makar4ik
Oleksii Kovalov
пропущено...

А точно ли при простом insert/select нужен tempdb?
не точно.
но как только в плане появляется table spool, так сразу и нужна.

а зачем при копировании таблицы из одной базы в другую - спул? где там возникают многократные повторные обращения?
2 июл 15, 23:57    [17846441]     Ответить | Цитировать Сообщить модератору
 Re: Как скопировать таблицу из одной базы sql server в другую ?  [new]
Makar4ik
Member

Откуда: Когда-то были Лужки, а теперь Бордюр-Сити.
Сообщений: 2677
Oleksii Kovalov
Makar4ik
пропущено...
не точно.
но как только в плане появляется table spool, так сразу и нужна.

а зачем при копировании таблицы из одной базы в другую - спул? где там возникают многократные повторные обращения?
Без плана и запроса ответить сложно.
На общий вопрос - общий ответ: "низачем".
3 июл 15, 00:00    [17846445]     Ответить | Цитировать Сообщить модератору
 Re: Как скопировать таблицу из одной базы sql server в другую ?  [new]
o-o
Guest
Makar4ik
Oleksii Kovalov
пропущено...

Можно. если лить блоками. для этого нужно, как минимум, уметь это делать, т.е., грубо говоря, делать пейджирование.
Ну да.
Если не умеешь - будь добёр пару сотен гига освободи на разделе, где лежит tempdb

бред сивой кобылы.
вот переливка 27 млн на ноуте.
темпдб вообще ни при чем.
хотя конкретно эти 27 млн -- всего лишь 450 Мб.
зато на работе есть 27 млн строк, занимающие 4,5Гб.
и тоже, о чудо, переливается без всякого участия темпдб.

ТС даже не заикнулся ни о размере таблицы, ни памяти.
а уже получил офигительные предсказания

К сообщению приложен файл. Размер - 40Kb
3 июл 15, 00:03    [17846447]     Ответить | Цитировать Сообщить модератору
 Re: Как скопировать таблицу из одной базы sql server в другую ?  [new]
Makar4ik
Member

Откуда: Когда-то были Лужки, а теперь Бордюр-Сити.
Сообщений: 2677
o-o
Makar4ik
пропущено...
Ну да.
Если не умеешь - будь добёр пару сотен гига освободи на разделе, где лежит tempdb

бред сивой кобылы.
вот переливка 27 млн на ноуте.
темпдб вообще ни при чем.
хотя конкретно эти 27 млн -- всего лишь 450 Мб.
зато на работе есть 27 млн строк, занимающие 4,5Гб.
и тоже, о чудо, переливается без всякого участия темпдб.

ТС даже не заикнулся ни о размере таблицы, ни памяти.
а уже получил офигительные предсказания
Радуюсь твоему чуду. В 7-ми терабайтной базе как-то сложно перелить табличку при ограничении templog в 200 мега. Не веришь - смоделируй. Успехов.
3 июл 15, 00:07    [17846455]     Ответить | Цитировать Сообщить модератору
 Re: Как скопировать таблицу из одной базы sql server в другую ?  [new]
Oleksii Kovalov
Member

Откуда:
Сообщений: 100
Ну, если учесть предыдущие вопросы автора, то врядли у него будут террабайты данных или сложные планы
так что все вопросы и догадки тут - сугубо академического характера.
3 июл 15, 00:11    [17846461]     Ответить | Цитировать Сообщить модератору
 Re: Как скопировать таблицу из одной базы sql server в другую ?  [new]
o-o
Guest
Makar4ik,

могу утречком продемонстрировать ту самую заливку 4,5 гиг.
только это бисер перед свином.
чем другим пожелания раздавать, собой бы занялись.
пока кроме голословных заявлений только громкий пшик со свистом
3 июл 15, 00:19    [17846476]     Ответить | Цитировать Сообщить модератору
 Re: Как скопировать таблицу из одной базы sql server в другую ?  [new]
Makar4ik
Member

Откуда: Когда-то были Лужки, а теперь Бордюр-Сити.
Сообщений: 2677
o-o
Makar4ik,

могу утречком продемонстрировать ту самую заливку 4,5 гиг.
только это бисер перед свином.
чем другим пожелания раздавать, собой бы занялись.
пока кроме голословных заявлений только громкий пшик со свистом
Ну, не бисер... У меня вот в плане на завтра висит запрос, который 8 терабайт за 30 запусков вычитал с диска...
Буду морщить бороду, с какого хрена...
3 июл 15, 00:28    [17846495]     Ответить | Цитировать Сообщить модератору
 Re: Как скопировать таблицу из одной базы sql server в другую ?  [new]
Makar4ik
Member

Откуда: Когда-то были Лужки, а теперь Бордюр-Сити.
Сообщений: 2677
o-o
Makar4ik,

могу утречком продемонстрировать ту самую заливку 4,5 гиг.
только это бисер перед свином.
чем другим пожелания раздавать, собой бы занялись.
пока кроме голословных заявлений только громкий пшик со свистом
..а 4.5 гиг...
эммм.
на моей консьюмерской домашней машине может занять времени менее десятка секунд.
950 мега устоявшийся трансфер, и более 120К IOPS

...твои "гиги" пролетят, как понос у золотушного..
3 июл 15, 00:45    [17846518]     Ответить | Цитировать Сообщить модератору
 Re: Как скопировать таблицу из одной базы sql server в другую ?  [new]
o-o
Guest
Makar4ik
Радуюсь твоему чуду. В 7-ми терабайтной базе как-то сложно перелить табличку при ограничении templog в 200 мега. Не веришь - смоделируй. Успехов.

выделенное умиляет несусветно.
в темпдб все логируется, да.
КРОМЕ memory spills and version stores.

К сообщению приложен файл. Размер - 127Kb
3 июл 15, 00:53    [17846526]     Ответить | Цитировать Сообщить модератору
 Re: Как скопировать таблицу из одной базы sql server в другую ?  [new]
Relic Hunter
Member

Откуда: AB
Сообщений: 6633
>> Как скопировать таблицу из одной базы sql server в другую ?

Ctrl+C, Ctrl-V
3 июл 15, 01:37    [17846549]     Ответить | Цитировать Сообщить модератору
 Re: Как скопировать таблицу из одной базы sql server в другую ?  [new]
o-o
Guest
Makar4ik
...твои "гиги" пролетят, как понос у золотушного..

Т. е. вам ничего не стоит показать всем,
как именно задействуется темпдб при select into приличного объема.
Давайте. А то понос пока только словесный
3 июл 15, 06:41    [17846649]     Ответить | Цитировать Сообщить модератору
 Re: Как скопировать таблицу из одной базы sql server в другую ?  [new]
komrad
Member

Откуда: Msk -> Utrecht
Сообщений: 4525
o-o
Makar4ik
...твои "гиги" пролетят, как понос у золотушного..

Т. е. вам ничего не стоит показать всем,
как именно задействуется темпдб при select into приличного объема.
Давайте. А то понос пока только словесный


не принимай всерьез, дай специалисту показать свои знания

все люди разные - кто-то трижды перепроверит прежде чем давать рекомендации, а кто-то говорит первое что в голову придет, не подумав
3 июл 15, 10:09    [17847142]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить