Выберите в VS Мастер импорта и экспорта на сервере SQL
В sql server, с моего рабочего стола я подключился к серверу. И я хочу переместить данные из базы данных в другую. Я использовал оба мастера выбора и импорта. Но мастер импорта кажется медленным. Зачем?
Есть ли какие-либо изменения в методологии передачи данных?
3 ответа
Select into - это запрос SQL, который выполняется напрямую.
Мастер импорта и экспорта - это инструмент, который вызывает службы интеграции (SSIS).
Мастер работает медленно, но может использовать различные источники данных
Подробнее о мастере экспорта / импорта
https://msdn.microsoft.com/en-US/en-en/library/ms141209.aspx
Тема о мастере выбора и экспорта / импорта
https://social.msdn.microsoft.com/forums/sqlserver/en-US/e0524b2a-0ea4-43e7-b74a-e9c7302e34e0/super-slow-performance-while-using-import-export-wizard
Mysql Хранит данные во многих местах и хранит их в небольшом фрагменте файлов для более быстрого извлечения, а когда мы используем мастер экспорта, он сначала записывает все метаданные и данные в нашу оперативную память, в зависимости от нашей системы, и увеличивает накладные расходы, и то же самое происходит в случае импорта, и Выбрать в быстро, потому что mysql должен создать встроенную копию базы данных, которая уже существует.
в реальной жизни Select into - это ксерокопия страницы, а мастер - это как переписывание страницы вручную.
Я согласен с Андреем. Волшебник очень медленный Если вы выполните поиск в Google по "медленному мастеру импорта и экспорта SQL Server", вы получите почти 50 тыс. Обращений. Вы можете рассмотреть несколько других вариантов.
Утилита BCP
Примечание: я использовал это несколько раз. Очень быстрая обработка.
Утилита bcp массово копирует данные между экземпляром Microsoft SQL Server и файлом данных в указанном пользователем формате. Утилита bcp может использоваться для импорта большого количества новых строк в таблицы SQL Server или для экспорта данных из таблиц в файлы данных. За исключением случаев использования с опцией queryout, утилита не требует знаний Transact-SQL. Чтобы импортировать данные в таблицу, вы должны либо использовать файл формата, созданный для этой таблицы, либо понять структуру таблицы и типы данных, которые действительны для ее столбцов.
Пример:
BULK INSERT TestServer.dbo.EmployeeAddresses
FROM 'D:\Users\Addresses.txt';
GO
Функция OPENROWSET(BULK)
Функция OPENROWSET(BULK) подключается к источнику данных OLE DB для восстановления данных и позволяет получить доступ к удаленным данным, подключившись к удаленному источнику данных.
Пример:
INSERT INTO AllAddress(Address)
SELECT * FROM OPENROWSET(
BULK 'D:\Users\Addresses.txt',
SINGLE_BLOB) AS x;
Ссылка
https://msdn.microsoft.com/en-us/library/ms175915.aspx
http://solutioncenter.apexsql.com/sql-server-bulk-copy-and-bulk-import-and-export-techniques/