2009-05-29 4 views
0

현재 웹 사이트는 SQL Server 데이터베이스를 사용하여 ASP.NET Webform으로 작성되었습니다. ASP.NET MVC 애플리케이션을 빌드 할 계획입니다. 기술을 배우고 싶기 때문에가 아니라 더 나은 방법이기 때문입니다. 내 질문은 데이터베이스에 더 구체적입니다. 데이터베이스를 만들고 웹 인터페이스의 가져 오기 기능을 통해 SQL 데이터베이스에 SQL 테이블을 가져 오거나 "로컬"데이터베이스 MDF 파일을 사용할 수 있습니다. MDF 파일을 사용하는 아이디어는 백업 및 처리가 더 쉬울 것이므로 좋아합니다. 내 웹 사이트는 많은 트래픽을 얻지 못합니다 ... 사실 나는 유일한 사용자가 될 수 있습니다. :) 이제 여기에 질문이 있습니다."데이터베이스"대신 MDF SQL Server 파일을 사용할 경우 성능이 저하됩니까?

내 데이터베이스 대신 로컬 SQL Server MDF 파일을 사용하면 얼마나 많은 성능을 얻을 수 있습니까?

답변

3

사실상 아무 것도. 또는 웹 사이트와 동일한 상자에서 DB를 실행하는 것 이상은 아닙니다. 그것은 여전히 ​​Sql Server Express 데이터베이스입니다. 프로덕션 측면에서 볼 때 DB를 제공하는 데 사용되는 별도의 상자에서 DB를 실행하려고합니다. 그러나 코드와 관련하여 유일한 차이점은 연결 문자열입니다.

2

SQL Server는 서버의 각 데이터베이스에 대해 MDF 파일을 사용합니다. '데이터베이스'가 MDF 파일에 저장되므로 MDF 파일과 '데이터베이스'간에 차이가 없습니다.

1

성능면에서 차이가 없어야합니다.

가장 큰 문제는 프로덕션 배포 및 관리에 있습니다. 동적으로 첨부 된 .mdf보다 표준 데이터베이스를 관리하는 것이 훨씬 쉽습니다.

+0

나는 웹 사이트를 운영하기를 원하는 사람이라는 것을 기억하십시오. 데이터베이스를 백업하기위한 다운로드를 제외하고는 많은 관리가 아닙니다. 데이터베이스를 다운로드하고 패치 한 다음 패치 데이터베이스를 업로드해야합니다. 테이블을 업데이트하는 프로세스라고 가정합니다. –

+0

그런 경우라면 괜찮을지 모르지만 SSMS를 사용하여 실행 중에 아무 것도 관리하지 않으려는 경우 매우 불안정 해집니다. 프로덕션 환경에서 .mdf 파일을 사용해 본 경험이 없습니다. –

0

또한 웹 호스트가이를 지원해야한다는 사실을 잊지 마십시오. SQL Server Express는 "사용자 인스턴스"데이터베이스를 지원하는 유일한 SKU이므로 호스트는 그대로 사용하려면 Express가 설치되어 있어야합니다. OTOH를 사용하면 웹 호스트에 배포 할 때이 방법으로 개발 한 다음 데이터베이스를 배포하고 연결 문자열을 변경할 수 있습니다.

0

Express 버전의 SQL Server의 일반적인 리소스 제한을 벗어나는 유일한 차이점은 SQL Express 엔진이 MDF 파일에 연결하는 동안 무시할 수있는 시작 비용이며 파일 루틴 및 트랜잭션 로그 항목을 루틴이 검사하는지 여부입니다.

이는 모든 요청이 아닌 애플리케이션 시작시에만 발생해야합니다.

관련 문제