Поместите его в базу данных, но тип данных blob, вероятно, не обрежет его. Медиаблоб обычно достаточно.
Mysql Datatypes
BLOB, TEXT L + 2 bytes, where L < 216
MEDIUMBLOB, MEDIUMTEXT L + 3 bytes, where L < 224
LONGBLOB, LONGTEXT L + 4 bytes, where L < 232
Я использовал это несколько раз с очень хорошими результатами. Обязательно сохраните размер файла, так как это облегчает его получение. Не уверен, применимо ли это к C #, как к PHP.
При использовании подготовленных операторов с параметрами данные будут автоматически экранированы AFAIK.
Также я не вижу реальной причины того, почему сама база данных будет работать медленно при хранении данных этого типа. Основным узким местом будет, конечно, передача данных. Кроме того, mysql иногда ограничивает максимальную длину запросов и, в частности, ответов.
Как только он запустится, он будет довольно аккуратным, особенно при работе с большим количеством маленьких файлов. Для небольшого количества больших файлов этот подход не имеет смысла, лучше использовать некоторую систему резервного копирования для обработки перемещенных / удаленных файлов.