0

現在、discountasp.net から arvixe.com へのデータベースの移行を試みています。主に、より良い価格で同じレベルの品質を取得できるかどうかを確認するためです。私は自分のデータベースのバックアップを割引 ASP のコントロール パネルから作成し、ftp 経由で新しいホストにアップロードし、復元ツールを使用しました。次に、SQL Server Management Studio を開き、データベース ノードとテーブル ノードを開きます。その後、次のエラーが発生し、テーブル ノードに何も表示されません。セキュリティ/ユーザーなどの他のノードでも同じことが起こります)

この要求のデータを取得できませんでした (Microsoft.SqlServer.Management.Sdk.Sfc) Transact-SQL ステートメントまたはバッチの実行中に例外が発生しました。(Microsoft.SqlServer.ConnectionInfo) オブジェクト 'extended_properties'、データベース 'mssqlsystemresource'、スキーマ 'sys' に対する SELECT 権限が拒否されました。(Microsoft SQL Server、エラー: 229)

私はいつでも、discountasp とローカルの開発マシンとの間で DB をバックアップ/復元できました。

テストしたホスト Arvixe に固有のエラーですか、それとも誰かが説明できるエラーですか? 言うまでもなく、リストアの前に、Arvixe で、データベースとテーブルを作成し、内部を見て、それをいじることができました。これは本当にすべてを台無しにする復元操作です。

PS: もちろん、私も Arvixe とのオープン チケットを持っていますが、これまでのところ、彼らは助けることができません...

更新: この問題には説明がありませんでした。Arvixe CP の下で、別のユーザーを作成し、データベースへのアクセスを許可したところ、機能しました。私 (および Arvixe) は、復元された DB にアクセスできないようにするために、最初のユーザーのアクセス許可が変更された理由がわかりません。

4

1 に答える 1

0

復元されたデータベースに、単純な選択を行うために必要な権限を持つユーザーがマップされていません。(カスタム) ユーザーは、バックアップ/復元では転送されません。

セキュリティ ノードにアクセスできるかどうかはわかりませんが、ユーザー アカウントにマッピングを追加する必要があります。

この t-sql スクリプトは、YourUserName ユーザーを db_owner として YourDatabaseName に追加します。

USE [YourDatabaseName]
GO
EXEC sp_addrolemember N'db_owner', N'YourUserName'
GO

成功!

于 2010-11-28T15:40:30.677 に答える