-5

タイトルが少しわかりにくいかもしれないので、私の問題を詳しく説明しますので、コピーであるためにこの質問をすぐにシャットダウンする前に、これらすべてを読んでください。

2つの問題が発生しました。1つは、MicrosoftSQLSMS用のサーバーを作成する方法がわからないことです。起動したときと同じように、サーバー名に対して単純なlocalhostを実行しようとするとエラーが発生するため、接続に何を入力すればよいかわかりません。オンラインのすべてのチュートリアルは、その時点までに何をすべきかをすでに知っているはずなので、サーバーのセットアップ方法を説明せずにスキップしてください。

これがデータベース用のサーバー管理ツールであることがわかりましたが、スーパーバイザーから、すべてのデータの概要とその優れた機能を含む.bakファイルを受け取りました。

この.bakファイルを取得して、このデータを使用できるようにサーバーなどを作成する方法を知りたいと思います。これが不明確な場合、私はこれを拡張することをいとわない。私の質問はそれほど明確ではなく、他の質問と同じであると主張して人々はすぐにそれをシャットダウンしました。

4

1 に答える 1

7

SQL Server のインスタンスをインストールする必要があります (インストールしたかどうかはわかりません)。次の場合を除き、無料のSQL Server Express Edition を使用できます。

  • データ ファイルが 10 GB を超えて消費する
  • データベースは、より高い SKU (Standard/Enterprise) を必要とする機能を使用します

これらの条件のいずれかが真であるかどうかはわかりません。そうであれば、Developer Edition を約 50 ドルで購入できます(お気軽に購入してください)。ただし、これをサーバーにインストールして運用環境で使用する予定はありません。

SQL Server 2012 がサポートされている最新のリリースであるため、SQL Server 2012 をお勧めします。SQL Server 2008 またはその他のバージョンを使用することを選択できますが、提供されたこのバックアップ ファイルとの互換性が得られる可能性が最も高いのは、バックアップされたバージョン以降のバージョンに復元する場合です .

このサイトは、SQL Server のインスタンスをインストールするための段階的な手順を提供する場所ではありません (他の場所で見つけることができます)。SQL Server のインスタンスをインストールしたら、データベースがどのように見えるかを調べる必要があります。通常、バックアップ ファイルは、データベース自体が自分のマシンと一致しない物理フォルダーにインストールされているサーバー上に作成されます。したがって、このクエリの出力を調べてデフォルト パスを見つけることをお勧めします (masterデータ ファイルの場所がわかります)。

SELECT physical_name FROM sys.master_files
  WHERE database_id = 1 AND [file_id] = 1;

または、 という非常に単純なフォルダを作成しc:\databases\て、Everyoneアカウントに変更権限を与えます。

次に、次を実行します (以下では、バックアップが c:\databases\ にあり、データ ファイルが必要な場所であると想定しています。異なる場合は、それに応じて調整してください)。

RESTORE FILELISTONLY FROM DISK = 'c:\databases\whatever.bak';

これにより、次のような結果セットが返されます。

LogicalName    PhysicalName
-------------  ------------
Whatever       C:\...\whatever.mdf
Whatever_log   C:\...\whatever_log.ldf

RESTORE DATABASE上記の結果に基づいて、次のようなコマンドを作成する必要があります。

RESTORE DATABASE foo FROM DISK = 'c:\databases\whatever.bak'
  WITH MOVE 'Whatever'     TO 'c:\databses\whatever.mdf',
       MOVE 'Whatever_log' TO 'c:\databases\whatever_log.ldf';

これで、Management Studio を使用してデータベースに接続できます。接続ダイアログで指定するサーバー名は、インストールした SQL Server のエディションと、名前付きインスタンスまたは既定のインスタンスのどちらを使用したかによって異なります。サービス アプレット ([コントロール パネル] > [管理ツール]) を見ると、それが名前付きインスタンスであるかどうかがわかります。のインスタンスが少なくとも 1 つ表示され、その後にまたはSQL Serverが続きます。ここでは、SQL Server の 3 つの名前付きインスタンスがあります (名前付きインスタンスは、SQL2005、SQL2008、および SQL2012 です)。(MSSQLServer)(InstanceNameYouChose)

ここに画像の説明を入力

名前付きインスタンスがある場合は、次を使用して Management Studio に接続します。

.\InstanceNameYouChose

たとえば、SQL2008 インスタンスに接続するには、次のように言います。

.\SQL2008
or
ServerName\SQL2008
or
(local)\SQL2008
or
LOCALHOST\SQL2008
or
127.0.0.1\SQL2008
etc. etc.

デフォルトのインスタンスがある場合は、スラッシュとそれに続く名前は必要ありません。次のようになります。

.
or
ServerName
or
(local)
or
LOCALHOST
or
127.0.0.1
etc. etc.
于 2012-06-07T14:55:49.207 に答える