MSSQL 2005용 샘플 데이터베이스 생성시

  • Post author:
  • Post category:
  • Post comments:0 Comments
  • Post last modified:October 28, 2008

SQL 쿼리의 성능 분석을 할 일이 있었다. 실제 서버엔 권한이 없으니 테스트 서버를 이용해야 하는데 안타깝게도 말 그대로 테스트용이라 데이터가 충분치 않았다. 결국 마이크로소프트가 제공하는 SQL Server 2005용 샘플 데이터베이스를 쓰기로 했다. 어차피 특정 쿼리의 성능 문제보단 그런 종류의 쿼리가 야기할지 모르는 문제를 파악할 생각이었으니 다른 데이터베이스를 써도 무방했다. 데이터만 충분하다면 말이다.

그래서 AdventureWorks(샘플 데이터베이스의 이름)을 다운로드 받아 설치했다. 예전 기억엔 msi  파일을 실행시키면 알아서 데이터베이스 생성까지 해 주었던 듯 한데, 이제 보니 “C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data”에 “AdventureWorks_Log.ldf”(로그)와 “AdventureWorks_Data.mdf”(데이터) 파일만 복사하고 끝이다. 그러니 이 파일을 이용해 SQL 서버에 AdventureWorks 데이터베이스를 생성(Attach)하는 책임은 각자에게 주어진다.

자, 문제는 이제부터다. 데이터베이스를 생성했다고 치자. 이제 데이터베이스에 접근해 뭔가 해보려 한다. 그러면 오류 메시지가 뜬다.

CREATE FILE encountered operating system error 5(Access is denied.) while attempting to open or create the physical file ‘C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\AdventureWorks_Data.mdf’. (Microsoft SQL Server, Error: 5123)

이 문제는 파일의 권한 문제 때문에 벌어진다. 해결책은 아주 간단한데, “AdventureWorks_Log.ldf”와 “AdventureWorks_Data.mdf”의 등록 정보(등록 정보 – 보안)를 펼쳐서 SQLServer2005MSSQLUser 에게 모든 권한을 주면 된다.

Author Details
Kubernetes, DevSecOps, AWS, 클라우드 보안, 클라우드 비용관리, SaaS 의 활용과 내재화 등 소프트웨어 개발 전반에 도움이 필요하다면 도움을 요청하세요. 지인이라면 가볍게 도와드리겠습니다. 전문적인 도움이 필요하다면 저의 현업에 방해가 되지 않는 선에서 협의가능합니다.
0 0 votes
Article Rating
Subscribe
Notify of
guest

This site uses Akismet to reduce spam. Learn how your comment data is processed.

0 Comments
Inline Feedbacks
View all comments