Мені потрібно синхронізувати велику таблицю ~ 500 мільйонів рядків без первинного ключа між SQL Server і MySQL. У таблиці є лише кластеризований складений неповторний індекс.
У мене є з'єднання ODBC між серверами, але імпорт ~ 8 мільйонів рядків зайняв близько 45 хвилин, тому я вважаю, що більший одиничний імпорт був би нерозумним, оскільки в будь-якій точці можуть виникати перебої. Я не можу змінити існуючу структуру таблиці, можу додати інші таблиці. Після подальшого читання зміщення / отримання не є варіантом для великих таблиць. "Виберіть ... де х між ... і ..." - це не варіант, оскільки у мене немає унікального ключа.
Як я можу експортувати таблицю партіями, які гарантовано містять усі рядки? Моя проблема полягає в тому, що, оскільки кластерний ключ не є унікальним, замовлення після нього не гарантує, що фізичні рядки мають однаковий порядок між послідовними запитами та замовленням після того, як усі стовпці займуть занадто довго. І як би ви рекомендували мігрувати партії через файли ODBC або CSV?