質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
SQL Server

SQL Serverはマイクロソフトのリレーショナルデータベース管理システムです。データマイニングや多次元解析など、ビジネスインテリジェンスのための機能が備わっています。

Visual Studio 2013

Microsoft Visual Studio 2013は、Microsoftによる統合開発環境(IDE)であり、多種多様なプログラミング言語に対応しています。 Visual Studio 2012の次のバージョンです

Q&A

解決済

1回答

2962閲覧

MDFファイルをリンクサーバーとして扱う方法

Kyass

総合スコア17

SQL Server

SQL Serverはマイクロソフトのリレーショナルデータベース管理システムです。データマイニングや多次元解析など、ビジネスインテリジェンスのための機能が備わっています。

Visual Studio 2013

Microsoft Visual Studio 2013は、Microsoftによる統合開発環境(IDE)であり、多種多様なプログラミング言語に対応しています。 Visual Studio 2012の次のバージョンです

0グッド

0クリップ

投稿2016/07/25 09:51

SQL Server上でMDFファイルをリンクサーバーとして扱えるかどうか、方法をご教示下さい。

※SQLServerに不具合が生じた際に「とりあえず今動けばいい」といった感じで、
普段から最低限のデータをMDFファイルに時折コピーしておき、
いざ障害が発生した時は、データの参照先をMDFファイルに切り替えることが目的です。

経緯

  • VS2013(C#)のWindowsフォームで適当なアプリケーションを作成し、
    プロジェクト内でサービスベースのデータベースとしてMDFファイルを作成。
    テーブルやデータをザッと詰め込み、追加/更新/参照が可能なサンプルアプリケーションを作成。

  • いちいち接続先を切り替えながらデータを移すのが面倒だったので、
    SQLServer上にリンクサーバーとして追加できれば楽になると考え試行。

  • 以下のクエリを実行しSQLServer上に登録

SQL

1EXEC master.dbo.sp_addlinkedserver @server = N'D:\Sample.mdf'
  • Management Studio上で登録されたリンクサーバーを確認

(リンクサーバー名は D:\Sample.mdf)

  • 右クリックから 接続テスト をすると 65535エラーが発生。

  • サービスのログオンタブで、Administrator権限を持つログイン中のドメインユーザーに変更

サービス再起動 -> 再度実行 -> 65535エラー

  • リンクサーバーのプロパティ-セキュリティで

ローカルログインに上記と同じユーザーを追加
また、定義されないログインの接続方法を[ログインの現在のセキュリティ コンテキストを使用する]に変更
サービス再起動 -> 再度実行 -> 65535エラー


他に sp_addlinkedserver コマンドの引数(プロバイダやデータソース)なども色々試してみましたが、
どうしても接続できないため、根本から考え違いをしているのかと不安になってきました。

提供する情報が足りないかもしれません。
上記の内容から不足している作業はありそうでしょうか?

以上、よろしくお願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

MDFファイルはアタッチされないとSQLServerからアクセスできないのでは?

そもそも

SQLServerに不具合が生じた際に「とりあえず今動けばいい」といった感じで、

普段から最低限のデータをMDFファイルに時折コピーしておき、
いざ障害が発生した時は、データの参照先をMDFファイルに切り替えることが目的です。

という要件でリンクサーバー構成を選択するのが間違っていると思いますよ

今回のケースでSQLServerの不具合(障害)にどういうものを想定しているのかわかりませんが、別のインスタンスのSQLServerを立てておいて、そちらにコピーしておいたMDFファイルをアタッチしてアクセス先を変更するみたいな感じになるのではないですかね

というか障害時にアクセス先を振り替える方法には稼働規模にもよりますが、AlwaysOn可用性グループのようなテクノロジーを選択されることをおすすめします

投稿2016/07/25 21:28

dojikko

総合スコア3939

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Kyass

2016/07/25 23:48

回答ありがとうございます。   >>MDFファイルはアタッチされないとSQLServerからアクセスできないのでは? やはりですか。。。 アタッチとなると想定しているような身軽な運用ができないので視野外でした。 MDFファイル単品をDBのように扱えるのなら、リンクサーバーも不可能ではない!?と思って試していたのですが。。。   >>別のインスタンスのSQLServerを立てておいて >>AlwaysOn可用性グループのような 物理HDD上、ネットワーク上でバックアップ目的のSQLServerを運用することは、バックアップデータの身軽な運用が実現できなかった場合に考慮する予定でした。 MDFファイルに直接読み書きは可能ですし、その際にかかる時間は運用方法的にも心配する必要がないため、あとはそれをどれだけ楽にできるかが問題でした。 耐用性なども色々ありますが、今のところMDFファイルで読み書き自体はアリだと考えています。     丁寧な回答ありがとうございます。 もう少しこのまま他の方の意見を募集しようと思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問