У меня есть машина Window Server 2000 под управлением MS SQL Server, которая хранит более 20 ГБ данных. База данных резервируется каждый день на второй жесткий диск. Я хочу перенести эти файлы резервных копий на другой компьютер для создания другого тестового сервера и для практики восстановления. (Резервная копия фактически не восстанавливалась в течение почти 5 лет. Не говорите об этом моему боссу!)
У меня проблемы с передачей этого огромного файла по сети. Я пробовал обычное сетевое копирование, загрузку apache и ftp. Любой метод, который я пробовал, заканчивался неудачей, когда объем передаваемых данных достигает 2 ГБ. Последний раз, когда я успешно передавал файл, он был подключен через внешний жесткий диск, подключенный по USB. Но я хочу выполнять эту задачу регулярно и желательно автоматически.
Интересно, что является наиболее прагматичным подходом к этой ситуации?
Ответы:
Прогнозируемый сбой на 2 Гбайт звучит так, как будто виновата целевая файловая система ... Оба на NTFS? Пропускаете ли вы через какое-либо сжатие (zip раньше не работал на границах 2 ГБ) ((apache выполняет сжатие))
Я скопировал многие файлы размером более 20 Гб с помощью robocopy (как уже упоминали другие), но я не буду использовать ключ / MIR, пока вы не убедитесь, что вы получили копию, которая делает то, что вы хотите - поскольку она будет удалять файлы, а также копировать их.
SMB страдает от одного пакета во времени, поэтому зачастую это медленный способ копирования файлов - у вас есть возможность копировать, используя push или pull. Лично я предпочитаю метод push (копирование инициируется источником).
источник
Средство MS Exchange eseutil - отличная утилита для быстрого копирования больших файлов по сети:
eseutil / y source_file / d dest_file.
источник
Я настоятельно рекомендую использовать бесплатную утилиту RichCopy . Он многопоточный и может приостанавливать и возобновлять операции копирования файлов. Мне очень повезло, используя его для передачи файлов между серверами.
http://blogs.technet.com/markdea/archive/2009/03/24/richcopy-is-it-the-new-sliced-bread.aspx
источник
Что касается утилит для копирования файлов, TeraCopy - это хороший графический интерфейс (не командная строка), который может ставить в очередь множество файлов, поддерживает паузу и возобновление, может динамически изменять размер буфера для оптимизации скорости и, при желании, заменять Windows Explorer по умолчанию. копировать / перемещать со своим.
источник
Robocopy с параметром / MIR очень полезен для быстрого и грязного резервного копирования между машинами. Вы можете найти robocopy в Windows Server 200X Resouce Kit
MIR MIRror содержимое одного каталога на другой сервер. Он будет копировать только файлы, которые были изменены.
источник
Наиболее прагматичным решением для повторных перемешиваний больших файлов резервных копий SQL Server является использование стороннего продукта сжатия резервных копий или встроенного сжатия резервных копий SQL Server 2008 Enterprise Edition.
Там есть несколько от разных поставщиков. Я работаю на Quest Software, создателей LiteSpeed, но я не собираюсь ничего продавать. Вы хотите проверить все продукты там и решить, что лучше для ваших нужд. Вот недавнее сообщение в блоге, в котором конкретно говорится о LiteSpeed, но те же понятия применимы и к другим продуктам:
http://blogs.lessthandot.com/index.php/DataMgmt/DBAdmin/title-8
источник
Вы копируете файл через локальную сеть или через какое-либо глобальное соединение, например ADSL? Я предполагаю, что это WAN, потому что 20GB не большой файл для копирования по локальной сети. Я копирую много таких файлов каждый день.
Если это WAN-соединение, то я использую Cygwin-версию rsync.
JR
источник
У меня был сбой передачи по сети около отметки 2 Гб - это оказалось неисправной сетевой платой.
источник
Я использую синхронизацию ( http://www.2brightsparks.com/syncback/sbse.html ) ежедневно для передачи файлов, в несколько раз больших, чем у вас. Никогда не было проблем с этим.
источник
Немного поздно, но я бы порекомендовал стороннее приложение для резервного копирования и восстановления. Мы используем Red Gate SQL Backup ( www.red-gate.com ), он имеет параметры сжатия и альтернативного расположения в графическом интерфейсе. Я получаю экономию сжатий в среднем на 80% - таким образом, вы переносите только 20% от фактического размера БД. Он также поддерживает шифрование, поэтому его можно использовать в глобальной сети без проблем перехвата.
Его полностью планируемое, поэтому может работать автоматически в цикле по вашему выбору.
GUI также позволяет настраивать и администрировать доставку журналов.
Бесплатная пробная версия доступна на выше.
источник
У меня нет опыта работы с такими большими файлами, но не могли бы вы использовать robocopy или даже xcopy с параметром / Z, который претендует на перезапуск. Кажется, что это предназначено для больших копий файлов, где сеть ненадежна.
источник
Я использовал robocopy для более чем 1 ГБ и не было никаких проблем. У ss64.com есть хорошее объяснение переключателей. Я не могу опубликовать ссылку, хотя :-(
источник
Используйте Netcat . Unix-ориентированное руководство по передаче файлов можно найти здесь . Вы можете еще больше ускорить процесс:
Помимо шуток, netcat, вероятно, самый быстрый способ передачи больших файлов по локальной сети. Поскольку контрольная сумма не указана, вы можете указать сумму MD5 файла перед отправкой и сравнить ее с суммой MD5 полученного файла.
Я так часто использовал netcat, никогда не видел, чтобы он выходил из строя, никогда не видел, чтобы он тоже не мог максимально использовать сеть ..
источник
Возможно, стоит разделить файл на более мелкие куски в качестве краткосрочного решения, пока вы не сможете точно определить проблему. В прошлом у нас были подобные проблемы, и у нас всегда работал ftp
источник
Если вы копируете SQL-файлы .bak, я настоятельно рекомендую выполнить одно из следующих действий, чтобы уменьшить ваши файлы перед копированием:
Может устранить необходимость в альтернативном методе копирования больших файлов.
источник
Я не думаю, что найти что-то для более быстрой передачи - ваша проблема, проверьте, чтобы ваша целевая файловая система НЕ ЖИРА, как говорили другие. Кроме того, убедитесь, что сетевые карты с обеих сторон имеют обновленные драйверы и не ведут себя некорректно.
С учетом сказанного, вы перемещаете много много маленьких файлов или только несколько больших? Я видел проблемы с контроллером RAID при попытке переместить миллионы крошечных файлов.
Я не думаю, что у вас возникнут проблемы с автоматизацией, когда вы выясните причину сбоя. Это может помочь составить список более подробной информации о вашем оборудовании и любых соответствующих ошибках, которые вы можете увидеть в программе просмотра событий.
источник
Вы пытались использовать подключение eSATA к внешнему жесткому диску? Соединения очень быстрые (3 гигабита!) И должны быть в состоянии передать этот файл в кратчайшие сроки!
Какова скорость вашей сетевой карты на сервере, 10/100 или 10/100/1000? Как выглядит пропускная способность и коммутатор сети сервера при копировании файла? Как выглядит пропускная способность сети в месте назначения (на сервере?) При копировании? Вы пытались объединить 2 сетевых карты вместе? Обновлены ли драйверы сетевой карты? BIOS актуален?
Есть много вещей, которые могут быть проблемой для передачи файлов. Убедиться, что драйверы оборудования и BIOS соответствуют современным требованиям, действительно может иметь значение.
-JFV
источник
Самый простой и быстрый способ: внешние USB-диски и ходьба.
Мой путь: используйте rsync. Если копия не удалась, просто перезапустите ее, и она выберет то, что осталось.
источник
Другая вещь, которую нужно проверить, это проверить, настроена ли служба квот на целевом сервере; Я думаю, что он использует 2 ГБ в качестве квоты по умолчанию на пользователя.
источник