前提・実現したいこと
SQLServer2014Express上にFileTableを作成しました。
サーバーからはFileTableのフォルダにアクセスできる(FileTableディレクトリの探索でエクスプローラーが開く)のですが、クライアントPCからはアクセスできません。
クライアントPCからアクセスできるようにするには何を設定すればよいでしょうか。
発生している問題・エラーメッセージ
SSMSでクライアントPCからサーバー上のデータベースに接続。FileTablesのテーブルを右クリックして「FileTableディレクトリの探索」をクリックすると
ファイルの場所を開けません。アクセスが有効になっていないか、そのための権限がありません。
とメッセージが表示されてしまいます。
試したこと
サーバーでSQLServer構成マネージャーを開き、当該インスタンスのプロパティで「Transact-SQLアクセスに対してFILESTREAMを有効にする」「ファイルI/Oアクセスに対してFILESTREAMを有効にする」「リモートクライアントにFILESTREAMデータへのアクセスを許可する」にチェックを入れた。Windows共有名は初期値(SQLEXPRESS)のまま。
サーバーでSSMSを開き、データベースに接続。以下のクエリを実行してSQL Serverのサービスを再起動。
EXEC sp_configure filestream_access_level, 2
RECONFIGURE
サーバーのファイアウォールでTCPポート139、445を開放。
サーバーでSSMSを開き、データベースに接続。以下のクエリを上から順に実行。
ALTER DATABASE TestDB ADD FILEGROUP TestGroup CONTAINS FILESTREAM
ALTER DATABASE TestDB ADD FILE(NAME='TestDB_Files', FILENAME='D:\Test\Files') TO FILEGROUP TestGroup
ALTER DATABASE TestDB SET FILESTREAM(NON_TRANSACTED_ACCESS=FULL, DIRECTORY_NAME='File')
CREATE TABLE TestTable AS FILETABLE
補足情報(FW/ツールのバージョンなど)
サーバーOS:Windows7 Professional SP1
クライアントOS:Windows7 Professional SP1、Windows10 Pro 21H1 (19043.1288)
SQLServer2014Express SP3
SQL Server 2014 Management Studio
データベースにはsaでログインしてます。
別のテーブルにFILESTREAM列を追加して、そのテーブルの更新を試してみましたが、それはクライアントからできました。
サーバーでFileTableの実体(D:\Test\Filesフォルダ)をEveryone読み書きOKで共有してみましたが、ダメでした。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。