본문 바로가기

IT

SQL Server 2008에서 SQL Server 2017 Express로 DB이동하기

ASP.NET Core MVC와 SQL Server 2008의 구성으로 작동하는 시스템을 클라이언트의 서버로 이동해야 할 일이 생겼습니다. KAGOYA CLOUD(카고야 클라우드) VPS(Virtual Private Server)의 Windows Server 2016 환경입니다.

Windows Server 2016의 IIS10에서 ASP.NET Core MVC가 작동하도록 설정은 문제가 없는데

2019/05/21 - [ASP.NET Core] - ASP.NET Core를 IIS에서 돌려보자! (Deploy,Publish)

 

ASP.NET Core를 IIS에서 돌려보자! (Deploy,Publish)

Microsoft Visual Studio Community 2017의 IIS Express로 로컬에서 작동확인하거나 Azure의 계정의 무료범위를 이용해서 배포(Deploy,Publish)후 작동확인을 했었습니다. Azure가 간단하고 신경쓸일 없어서 좋은..

namwhis.tistory.com

SQL Server의 값이 만만하지 않습니다.

https://www.kagoya.jp/windows/price/

 

レンタルサーバーのカゴヤ・ジャパン

カゴヤ・ジャパンは、レンタルサーバー・専用サーバー・VPS・クラウドサービスなどのホスティングやデータセンター事業を展開。レンタルサーバーは万全のセキュリティと品質にこだわり、低価格・シンプルにご利用いただけます。

www.kagoya.jp

Windows Server 2016 2Core/2GB, HDD 50GB로 서버 자체의 한달 비용은 2,160엔인데, Microsoft SQL Server의 제일 싼 옵션이 한달 3,240엔입니다. 배보다 배꼽이 더 큽니다.

 

클라이언트의 사정을 알기에...무료버전인 SQL Server 2017 Express를 조사해봅니다.

https://www.microsoft.com/ja-jp/sql-server/sql-server-2017-editions

 

SQL Server 2017 エディション | マイクロソフト

Enterprise、Standard、Express、Developer の各 SQL Server エディションを比較して、組織のニーズに合った適切な SQL Server 2016 エディションを見つけることができます。

www.microsoft.com

SQL Server 2017 Express의 대략의 기능입니다.

최대 코어수: 4코어
인스턴스별 최대 버퍼메모리: 1410MB
최대 데이터베이스 사이즈: 10GB

간단한 고객관리 시스템이므로 무리없이 운영가능하다는 판단에 SQL Server 2017 Express로 결정합니다.

설치는 기본옵션으로 간단히 설치 가능했습니다. 

SQL Server 2017 Express 데이터베이스 엔진과 

https://www.microsoft.com/ja-jp/sql-server/sql-server-editions-express

 

SQL Server 2017 Express エディション | マイクロソフト

Microsoft SQL Server 2017 Express エディションを使って、運用環境における小規模なデータベースのデプロイメントに適したエントリー レベルの SQL Server を無料で取得できます。

www.microsoft.com

관리를 위해서 SQL Server Management Studio(SSMS)의 설치가 필요합니다.

https://docs.microsoft.com/ja-jp/sql/ssms/download-sql-server-management-studio-ssms?view=sql-server-2017

 

SQL Server Management Studio (SSMS) のダウンロード - SQL Server

SQL Server Management Studio (SSMS) のダウンロードDownload SQL Server Management Studio (SSMS) この記事の内容 --> 適用対象: SQL Server Azure SQL Database Azure SQL Data Warehouse Parallel Data WarehouseAPPLIES TO: SQL Server Azure SQL Database Azure SQL Data Warehouse Paral

docs.microsoft.com

DB와 로그인유저설정을 마치고 DB의 이동을 진행합니다.

백업, 복원방법 :  SQL Server 2008의 백업파일을 복사후 SQL Server 2017 Express에서 복원을 시도했는데 인식할 수 없다는 에러로 처리가 불가능 합니다.

Export, Import : SQL Server 2017 Express에서는 메뉴 자체가 비활성화 되어있습니다.

결국 스크립트를 작성해서 이동하기로 합니다.

테이블과 데이터를 스크립트로 생성
SQL Server 2008 서버의 SQL Server Management Studio(SSMS)에서 이동할 DB선택
오른쪽클릭>>작업(タスク)>>스크립트생성(スクリプト生成)  : 스크립트 생성 마법사 실행

스크립트 생성 마법사>>DB선택>>옵션(オプション)>>데이터의 스크립트 생성(データのスクリプトを生成)을 True로 변경 >> 테이블 체크 >> 테이블 선택 >> 클립보드로 복사 

클립보드로 복사한 것을  
SQL Server 2017 Express 서버의 SQL Server Management Studio(SSMS)에서 쿼리 실행

문제없이 이동가능했습니다.

 

ASP.NET Core MVC의 appsettings.json의 DB연결 구문을 변경합니다.

Server=IP (실패)
Server=localhost (실패)
Server=IP, PORT (실패)
Server=localhost, PORT (실패)

Server=.\\SQLEXPRESS (성공)

 

이동을 완료했습니다.

반응형