SQL Server 2008 R2에서 50MB 스크립트를 실행하는 동안 오류 발생
SQL Server 2008 R2를 사용하고 있으며 DB를 업데이트하는 스크립트가 있습니다. 해당 스크립트의 크기는 약 50MB이고 약 800,000 줄이 포함되어 있습니다.
오류:
제목 : Microsoft SQL Server Management Studio
스크립트를 실행할 수 없습니다.
추가 정보:
프로그램 실행을 계속하기에 메모리가 부족합니다. (mscorlib)
누군가이 오류가 발생하지 않고이 스크립트를 실행하도록 도와 주시겠습니까?
메모리가 훨씬 적은 명령 줄 도구 SQLCMD를 사용합니다. 다음과 같이 간단합니다.
SQLCMD -d <database-name> -i filename.sql
SQL Server 인스턴스에 액세스하거나 데이터베이스에 액세스하려면 유효한 자격 증명이 필요합니다.
@ user1293068의 답변에 추가하여 인스턴스 이름을 지정해야했습니다. 내 전체 구문은 다음과 같습니다.
sqlcmd -S <ComputerName>\<InstanceName> -d <DatabaseName> -i <MyScript.sql>
이것은 Technet의 sqlcmd 유틸리티 사용 문서에 설명되어 있습니다.
( "-s"가 아닌 "-S"의 스위치 값을 입력해야합니다. 스위치는 대소 문자를 구분합니다.)
자격 증명이 필요한 경우
sqlcmd -S <ComputerName>\<InstanceName> -U <username> -P <password> -d <DatabaseName> -i <MyScript.sql>
서버 속성에서 최대 서버 메모리 값을 늘릴 수도 있습니다.
이 설정을 편집하려면 서버 이름을 마우스 오른쪽 버튼으로 클릭하고 속성> 메모리 탭을 선택합니다.
30MB
SSMS 2012에서 SQL 스크립트 를 실행하는 동안이 오류가 발생했습니다 .
값을에서 1024MB
로 늘린 후 2048MB
스크립트를 실행할 수있었습니다.
좋아, 내 스크립트를 성공적으로 복원하는 데 충분한 답변이 없었습니다.
그래서:
네트워크 계정에 SQL Server 인스턴스와 복원하려는 특정 데이터베이스에 모두 액세스 할 수있는 충분한 권한이 있는지 확인하십시오.
복원하려는 데이터베이스가 단순히 스크립트 생성 (스키마와 데이터를 모두 포함하도록 수정)에서 생성 된 경우 실제로 존재하는 것이 가장 좋습니다.
관리자 모드 (필요한 경우)에서 명령 줄 도구를 실행합니다 (예 : 시작 메뉴의 실행에서 CMD 입력).
명령 줄 도구에서
"SQLCMD -d CMS -i C:\Carnotaurus\Data\script.sql"
. 여기에서CMS
복원하려는 데이터베이스의 이름은"C:\Carnotaurus\Data\script.sql"
SMSS의 스크립트 생성에 의해 생성 된 복원 스크립트의 전체 파일 경로입니다.
이로 인해 몇 가지 누락 된 단계가 해결되기를 바랍니다.
'program tip' 카테고리의 다른 글
create-react-app의 npm 시작 오류 (0) | 2020.12.28 |
---|---|
Ruby 문서의 메소드 앞에 해시 기호가있는 이유는 무엇입니까? (0) | 2020.12.28 |
자바 멀티 스레딩 개념 및 join () 메서드 (0) | 2020.12.28 |
배열에서 두 번 발생하지 않는 유일한 숫자를 찾는 방법 (0) | 2020.12.28 |
CakePHP에서 다른 모델 내에서 하나의 모델을 사용할 수 있습니까? (0) | 2020.12.28 |