FILESTREAM機能がMicrosoft SQL Server 2012でアクティブになると、SQL Serverはシステム上に「隠された」共有を作成します。共有は次のように定義されます。
Sharename FILESTREAM_SHARE
Path \\?\GLOBALROOT\Device\RsFx0320\<localmachine>\FILESTREAM_SHARE
Remark SQL Server FILESTREAM share
Maximum users unlimited
Users Caching Manual caching of documents
Permissions NT-AUTHORITY\Authenticated Users, FULL
名前は、SQL Server構成マネージャーで FILESTREAMを最初に構成するときに指定する共有の名前です。しかし、それは何のためですか?
これまでのところ
私はすべての利用可能なFILESTREAMドキュメントを以下から読みます。
- FILESTREAM(SQLサーバー)
- FILESTREAMを有効にして構成する
- FILESTREAM対応データベースを作成する
- FILESTREAMデータを保存するためのテーブルを作成する
- ...および関連するすべて
- FILESTREAMと他のSQL Server機能との互換性
- FILESTREAM DDL、関数、ストアドプロシージャ、およびビュー
- OpenSqlFilestreamを使用してFILESTREAMデータにアクセスする
- 紙SQL Server 2008の- SQL Server 2008のFILESTREAMストレージ
- 記事FILESTREAM(OLTP)---他の多くの資料を参照するミッションクリティカルなOLTPソリューションを設計するためのテクニカルリファレンスガイド
...しかし、その共有とその目的、またはその目的についての言及はありませんでした。名前を入力すると、SQL Serverが内部で共有を作成します。
FILESTREAM対応データベース
FILESTREAM対応データベースを作成すると、データベースは、FILESTREAMの構成時に最初に作成された共有とはまったく関係のないディレクトリ(別のドライブに推奨)を参照するファイルグループを参照します。
スクリーンショットFILESTREAM対応のデータベーススクリプト
はい、すべてのパスがC:にあることに気付きました。それは単なる例です
ポール・ランドールらによる白書。それを説明し続けます...
FILESTREAMデータは、データベース内の特別なファイルグループに対応するデータコンテナーと呼ばれる一連のNTFSディレクトリのファイルシステムに格納されます。FILESTREAMデータへのトランザクションアクセスは、SQL Serverと、WindowsレベルでFILESTREAMを有効にする一環としてインストールされるファイルシステムフィルタードライバーによって制御されます。ファイルシステムフィルタードライバーを使用すると、UNCパスを介してFILESTREAMデータにリモートアクセスすることもできます。SQL Serverは、テーブル行からそれらに関連付けられたFILESTREAMファイルへの並べ替えのリンクを維持します。これは、ファイルシステムを介してFILESTREAMファイルを直接削除または名前変更すると、データベースが破損することを意味します。
...ドキュメントをさらに下へ(14ページ)...
FILESTREAMデータコンテナーを持つ各NTFSボリュームに対して1つのFILESTREAMファイルシステムフィルタードライバーがあり、ボリューム上にFILESTREAMデータコンテナーを持つSQL Serverの各バージョンに対しても1つあります。各フィルタードライバーは、特定のバージョンのSQL Serverを使用するすべてのインスタンスに対して、そのボリュームのすべてのFILESTREAMデータコンテナーを管理します。
たとえば、3つのFILESTREAMデータコンテナー(3つのSQL Server 2008インスタンスごとに1つ)をホストしているNTFSボリュームには、SQL Server 2008 FILESTREAMファイルシステムフィルタードライバーが1つしかありません。
ご質問
- SQL Serverにはすてきなものがすべて揃っていることを知ってうれしいですが、その共有は実際に何をしますか?いわゆる「ファイルシステムフィルタードライバー」ですか?
- 認証されたユーザーが「共有」にアクセスできるように見えると、セキュリティにどのような影響がありますか?
- デバイスRsFx0320は、Windows Server 2012で導入された復元力のあるファイルシステム形式の前身ですか?
私の質問への回答を提供できる場合は、ソース参照を提供できればいいと思います。