Не удается выполнить script: недостаточно памяти для продолжения выполнения программы
У меня есть 123 МБ sql файл, который мне нужно выполнить на моем локальном ПК. Но я получаю
Cannot execute script: Insufficient memory to continue the execution of the program
![enter image description here]()
Как решить эту проблему?
Ответы
Ответ 1
используйте инструмент командной строки SQLCMD, который намного более компактен в памяти. Это так же просто, как:
SQLCMD -d <database-name> -i filename.sql
Вам нужны действительные учетные данные для доступа к экземпляру SQL Server или даже для доступа к базе данных
Взято из здесь.
Ответ 2
Это может помочь вам! См. Ниже шаги.
sqlcmd -S имя-сервера -d имя-базы данных -i script.sql
- Открыть cmd.exe в качестве администратора.
- Создать каталог документов.
- Поместите файл SQL Script (script.sql) в папку документов.
- Введите запрос с sqlcmd, именем сервера, именем базы данных и script -file-name, как показано выше, для выделенного запроса или ниже экрана командной строки.
![введите описание изображения здесь]()
Ответ 3
Вы также можете просто увеличить значение максимальной памяти сервера в свойствах сервера. Чтобы изменить этот параметр, щелкните правой кнопкой мыши имя сервера и выберите "Свойства" > вкладка "Память".
Я столкнулся с этой ошибкой, пытаясь выполнить 30 МБ SQL script в SSMS 2012. После увеличения значения с 1024 МБ до 2048 МБ я смог запустить script.
(Это тот же ответ, который я представил здесь)
Ответ 4
Если я правильно понимаю вашу проблему, вы пытаетесь восстановить (transact sql) xyz.sql - базу данных + схему. Вы можете попробовать эту команду, которая сработала для меня:
SQLCMD -U sa -i xyz.sql
Ответ 5
Иногда из-за большого размера script и данных мы сталкиваемся с этим типом ошибок. Серверу требуется достаточная память для выполнения и предоставления результата. Мы можем просто увеличить размер памяти для каждого запроса.
Вам просто нужно перейти к свойствам sql-серверa > вкладка "Память" (слева) > Теперь установите максимальный предел памяти, который вы хотите добавить.
Кроме того, есть опция вверху, "Результаты для текста", которые потребляют меньше памяти по сравнению с опцией "Результаты для сетки", мы также можем перейти к результату в текст для меньшего объема памяти.
Ответ 6
sqlcmd -S mamxxxxxmu\sqlserverr -U sa -P x1123 -d QLDB -i D:\qldbscript.sql
"mamxxxxxmu" - имя компьютера "sqlserverr" - это имя сервера "sa" - имя пользователя сервера "x1123" - пароль сервера "QLDB" - это имя базы данных "D:\qldbscript.sql" - это sql script файл для выполнения в базе данных
Ответ 7
Попробуйте этот шаг,
1) Открыть PowerShell
2) Напишите эту команду:
sqlcmd -S PCNAME\SQLEXPRESS -U user -P password -d databanse_name -i C:\script.sql
3) Нажмите Return
: -)
![введите описание изображения здесь]()