SQLServerにログインしてバックアップをS3に取ってみた

SQLServerのバックアップ取得方法についてご紹介します。
2021.11.01

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

皆さん、こんにちは。ネクストモード インテグレーション事業部の倉地です。
今回はオンプレミスのSQLServerからバックアップを取得し、S3にアップロードするまでの流れを記事にしました。なお、S3のバックアップファイルをRDS for SQLServerにリストアする方法は下記のブログをご参照ください。
RDS for Microsoft SQL Serverのバックアップ・リストアが簡単にできるようになりました!
それでは早速やっていきましょう!

環境

Windows_Server-2012-RTM-Japanese-64Bit-SQL_2014_SP3_Web-2021.07.07
※今回検証にはSQLServer on EC2をオンプレミスのSQLServerとしています。

SQLServerへのログイン

バックアップを取得する前段として、オンプレミスのSQLServerにログインする必要があります。ここではSSMS(SQL Server Management Studio)というツールを利用して、SQLServerにログインします。

SSMSのインストール

こちらのMicrosoft公式サイトからダウンロードができます。
SQL Server Management Studio (SSMS) のダウンロード インストール先は管理者用のクライアントPCでも、SQLServerのOSにインストールしても構いません。今回はSQLServerのOSにインストールしました。

SSMSの起動~ログイン

SSMSの起動はWindowsのアプリケーション選択画面の「SQL Server 2014 Management Studio」をクリックして起動します。

ログイン画面では認証方式(Windows認証とSQLServer認証)が指定できますので、今回はSQLServer認証を選択して、サーバー名(今回はローカルホスト)、ユーザー名、パスワードを入力します。

このような画面が表示されたらログイン成功です。ここからSQLServerを操作することができます。

SQLServerバックアップファイルの作成

今回はTEST4-DBというサンプルデータベースを作成しました。「TEST4-DB」を右クリックし、「タスク」→「バックアップ」をクリックします。

「バックアップ」をクリックすると下記のような画面が表示されます。データベース名(バックアップファイル名)を記載し、バックアップの種類は「完全(バックアップ)」を選択します。
最後にバックアップ先のパスを記載して「OK」をクリックします。今回はデフォルトの「C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\Backup\」に保存しました。
>

指定したフォルダを見てみると、先ほど作成したバックアップファイルが保存されています。

バックアップファイルをS3にアップロード

最後にローカルに保存したバックアップファイルをS3にアップロードします。事前準備としてバックアップファイルを保存するS3バケットの作成とAWS CLIのインストールが必要になります。
AWS CLIのインストールはこちらの公式HPからOSを選択してインストールができます。
AWS コマンドラインインターフェイス

AWS CLIインストールを確認して、シークレットキーやアクセスキー、リージョンなどを指定します。
>

AWS CLIを使用して、ローカルのバックアップファイルをS3にアップロードするコマンドは以下の通りです。
aws s3 cp [送信元ファイルパス] [S3://バケット名/フォルダ名]

S3の指定したバケットにバックアップファイルが見えていれば成功です。

さいごに

今回はSQLServerへのログインからバックアップファイルの作成、S3へのアップロードまでの流れをご紹介しました。SQL Serverの入門的位置づけとなりましたが、どなたかのお役に立てたら幸いです。