Содержимое файла конвейера Powershell в приложение без загрузки файла в память

С cmd я бы запустил mysql -uroot database , чтобы импортировать дамп базы данных (читать из файла и перейти к MySQL). Однако < "зарезервировано" в PowerShell.

Вместо этого, в PowerShell я использую get-content filename.sql | база данных mysql -uroot . Предостережение заключается в том, что powershell считывает filename.sql полностью в память перед передачей его в MySQL, а при больших дампах базы данных ему просто не хватает памяти.

Очевидно, я мог бы выполнить это через cmd , но у меня есть несколько сценариев PowerShell, автоматизирующих различные задачи, подобные этой, и я не хочу, чтобы их все переписывали одновременно. В данном конкретном случае filename.sql - это переменная, которая указывается в параметрах PS при запуске автоматизации.

Итак, как мне обойти это ограничение памяти? Есть ли другой способ передать содержимое файла напрямую в MySQL?

11
задан cbednarski 25 January 2011 в 00:52
поделиться