リンクサーバーをシステムデータベースファイルから取り出しますか?
-
29-09-2020 - |
質問
クラッシュしたSQLサーバーのデータとログファイルを持っています。ユーザーデータベースが復元されました。クラッシュの前にあった仕事やリンクされたサーバーを探しています。古いシステムデータベースを添付し、いくつかのビューを広告にしました。ジョブはMSDBで素早く見つかりました。 しかし、sys.serversとsys.sysserversは現在のサーバーを常に照会して表示するようです。
私は試してみました:
select * from sys.servers
select * from msdb_old.sys.servers
select * from master_old.sys.servers
.
しかし、それらのすべてが同じことを返し、現在のサーバー構成のみを返します。
リンクされたサーバオブジェクトは、古いファイルのどこにでも永続化され照会可能ですか?
解決
必要に応じて将来の参考のためにここに置かれた答え。あたかそこのデータがsysxsrvsという名前のマスターデータベースsysスキーマ内の隠しテーブルにあるかもしれません。
DACを介して接続されている場合、これを見つけることができることに従って照会することができます。
SySobJValues(すべてのデータベースに含まれています)も使用します。SrvProduct / ProviderNameフィールドに入力すると思います。
リファレンス:
所属していません dba.stackexchange