タグ付けされた質問 「restore」

バックアップからのデータベースのリロード。通常、災害復旧のため、またはデータベースのコピーを別のサーバーに作成するため。


4
データベースの復元ウィザードがSSMS 2014で開かない
Windows Server 2012 R2を実行している開発マシンで、SQL Serverを2012から2014にアップグレードしました。 SQL Server Management Studio 2014を使用すると、データベースを右クリックしてTasks -> Restore -> Database...も何も実行されません。データベースの復元ウィザードが期待どおりに表示されません。 イベントビューアーにはエラーやクラッシュはありません。カーソルは砂時計にもなりません。 T-SQLを使用した復元は正常に機能し、戻ってSSMS 2012を使用すると正常に機能します。SSMS 2014でウィザードを機能させる方法についてのアイデアはありますか? SSMSの両方のバージョンのSQL Serverの同じインスタンスに接続していますが、管理者としてSSMSを実行しようとしました。 Service Pack 1です。 Microsoft SQL Server Management Studio 12.0.4100.1 Microsoft Analysis Services Client Tools 12.0.4100.1 Microsoft Data Access Components (MDAC) 6.3.9600.17415 Microsoft MSXML 3.0 5.0 6.0 Microsoft Internet Explorer 9.11.9600.18125 …

3
「データベースは移行中です」エラー
今日、既存のデータベースの上にデータベースを復元しようとしていましたが、SSMSでデータベースを右クリックしただけです->タスク->オフラインにして、データベースを復元できるようにしました。 小さなポップアップウィンドウが表示されQuery Executing.....、しばらく表示された後、エラーメッセージが表示されましたDatabase is in use cannot take it offline。そこから収集したデータベースへのアクティブな接続がいくつかあるので、次のクエリを実行しようとしました USE master GO ALTER DATABASE My_DatabaseName SET OFFLINE WITH ROLLBACK IMMEDIATE GO この時点でも、SSMSはしばらくの間Query Executing.....表示し、次のエラーをスローしました。 Msg 5061, Level 16, State 1, Line 1 ALTER DATABASE failed because a lock could not be placed on database 'My_DatabaseName'. Try again later. Msg 5069, …

4
RESTORE HEADERONLYからフィールドを抽出する
「RESTORE HEADERONLY」を使用して、復元しようとしているバックアップが作成された日付を取得しようとしています。 コマンド: RESTORE HEADERONLY FROM DISK = '<path to .bak file>' クエリアナライザーで正常に動作し、50列などの結果セットを提供します。 問題は、実際にコードからこれにアクセスすることです。 これを一時テーブルに入れるには、50:ish列の1つ1つを宣言し、それに挿入してexec、そこから必要な値を取得します。 問題は、将来のバージョンで列を追加する場合、非常に脆弱なソリューションのように思われるので、結果セット全体を一時テーブルとして宣言する必要がないようにしたいということです。 すべての列を宣言せずに、この結果セットから単一の列を取得する方法はありますか?

1
SQL Serverエラー「ファミリーシーケンス番号2がありません」
サーバーにローカルデータベースを復元しようとしていますが、バックアップに問題があります。ファイル.bakを実行しましたが、サーバーにロードしようとするたびに許可されません。 ここに私が受け取るエラーメッセージのスクリーンショットがあります: 私はRESTORE LABELONLY自分のファイルを復元するために使用できるが、それでも機能しないことを読んだのですが、実行するたびに次のようなものが表示されます: バックアップデバイス 'C:\ Program Files \ Microsoft SQL Server \ MSSQL10_50.JOSEMA \ MSSQL \ Backu \ INNOVA-T.bak'を開けません。オペレーティングシステムエラー3(このエラーのテキストを取得できませんでした。理由:15105)。メッセージ3013、レベル16、状態1、行1 RESTORE LABELONLYが異常終了しています。 どんな助けでも素晴らしいでしょう。ありがとうございました。

6
2005または2008のインスタンスなしでSQL Server 2000から2012に移行する
SQL Server 2000にある3つの古いデータベースに遭遇しました。これらは2012年に移動する必要があります。標準的なアプローチは、2005または2008インスタンスに復元し、更新、再エクスポートして、最後に2012年に復元することです。 申し訳ありませんが、2005年または2008年のインスタンスはありません。 試してみる価値のある回避策やその他の方法はありますか? ちなみに、データベースには15〜20のテーブルといくつかのビューしか含まれておらず、非常にシンプルに見え、バックアップのサイズは100〜200 MBしかありません。

1
差分バックアップを復元すると、DEFUNCTログファイルが作成されますか?
これが私の問題です。完全な復元を介してデータベースを新しいサーバーに移動してから、差分バックアップ/復元をすばやく実行しようとしています。問題なく完全に復元できますが、差分バックアップを復元すると、次の警告が表示されます。 メッセージ3127、レベル16、状態1、行1復元されたデータベース 'DatabaseName'のファイル 'Database_Log2'は、データベースが単純復旧モデルを使用しており、ファイルが読み取り/書き込みアクセス用にマークされているため、無効な状態のままです。したがって、断片的な復元で回復できるのは読み取り専用ファイルのみです。 データベースは復元され、オンラインと見なされますが、このDEFUNCTファイルが原因でバックアップ操作が失敗し、次のエラーが発生します。 メッセージ3636、レベル16、状態2、行1データベースID 10ファイルID 6の「BackupMetadata」メタデータの処理中にエラーが発生しました。メッセージ3046、レベル16、状態2、行1一貫性のないメタデータが検出されました。可能なバックアップ操作は、WITH CONTINUE_AFTER_ERRORまたはNO_TRUNCATEオプションを使用したログ末尾のバックアップのみです。メッセージ3013、レベル16、状態1、行1 BACKUP DATABASEが異常終了しています。 フルと差分でRESTORE FILELISTONLYを実行すると、同じ出力が得られます。これは、ソースデータベースのsys.database_filesから見たものと一致します。サーバーはSQL2012 SP1のDeveloperエディションです。 フルバックアップを実行してすぐに差分を作成し、これらのファイルを同じサーバー上の別のデータベースに復元すると、まったく同じ問題が発生するため、差分の作成方法に原因があります。完全バックアップを復元して復元すると問題はありません。このファイルが以前このデータベースに存在していたかどうかはわかりませんが、このファイルが以前から存在し、かなり前に削除された可能性は十分にあります。復元されたデータベースでsys.database_filesを照会すると、DEFUNCTファイルにはdrop_lsnの値があり、これはこれを確認しているようです。現在、ソースデータベースには、ファイルグループ(PRIMARY)が1つ、データファイルが4つ、ログファイルが1つしかありません。 何か案は?

2
非DBAからの質問:SQL Serverインスタンスをバックアップ/復元を介して別のサーバーに簡単にコピー/移動する方法は?
新しいサーバーができたので、既存のSQL Server 2008インスタンスを古いdbボックスからコピーする必要があります。 私は通常、.mdfとログファイルをコピーしてそれらを添付することでこれを行いますが、データベースを24時間年中無休で使用しているため、データベースをオフラインにできないため、データベースをバックアップし、新しいデータベースに復元しました機械。しかし、私はいくつかの問題を抱えており、そのうちの1つは孤立したユーザーに関連しています。だから私が探しているのは、すべてを最小限の手間/母/頭痛で動かすフェイルセーフプロセスです。私は.Net開発者であり、かなりの量のSQLを身につけていますが、SQL Serverの内部の仕組みはほとんど謎であり、MSのドキュメントはトロールするのに苦労します。 助けてください。

5
バックアップ後に復元されたユーザー権限->復元操作
いくつかのSQL Server 2008データベースを新しいdbサーバーに移動して、それらすべてを(.bakファイルに)バックアップし、これらのファイルを新しいボックスにコピーして復元しました(すべてSQL Management Studioを使用して行いました)。 すべて問題なく動作しましたが、古いRDBMSで引き続き動作するSQL Serverアカウントを使用して、どのデータベースにもログインできません。私のWindows認証ログインは、ついでに問題なく動作します。 ユーザーと権限はすべてシームレスに新しいデータベースサーバーに複製されるという考えがありましたが、どこかで問題が発生しているようです。コメント/提案/ヘルプの提供をお願いします;-)

3
MAXTRANSFERSIZEおよびCHECKSUMが使用されている場合、TDE対応データベースを復元できません
更新:@AmitBanerjee -Microsoft SQL Server製品グループのシニアプログラムマネージャーは、MSが問題であることを調査することを確認しました。 TDEを有効にし、MAXTRANSFERSIZE> 65536 を使用してSQL Server 2016で作成したバックアップを復元するときに問題が発生しましたか(私の場合、TDEデータベースを圧縮できるように65537を選択しました)CHECKSUM。 以下は再現です: --- create database create database test_restore go -- create table create table test_kin (fname char(10)) go -- Enable TDE use master GO CREATE CERTIFICATE test_restore WITH SUBJECT = 'test_restore_cert' GO SELECT name, pvt_key_encryption_type_desc, * FROM sys.certificates WHERE name = 'test_restore' …

1
暗号化されたデータベースを別のサーバーに復元する
私はSQLServer 2008で動作する製品を使用しています。当然のことながら、それを提供する会社はSQLServerサポートを提供していません。製品をインストールしたときに、データベースを暗号化するためのパスワードを指定しました。別のサーバーでテストするために、製品の別のコピーを実行したいのですが。データベースを別のサーバーに復元し、その別のサーバーに製品をインストールしました。インストール時に同じパスワードを入力し、メインサーバーからバックアップを復元しました。ただし、エラーメッセージが表示されます。 System.Data.SqlClient.SqlException: An error occurred during decryption. 製品から。SQLServer Management Studioを使用してテーブルにアクセスできます。 私はこれを試しました: 最初のサーバー: CREATE CERTIFICATE cert1 WITH SUBJECT = 'Certificate for my stuff' BACKUP CERTIFICATE cert1 TO FILE = 'd:\backup\cert1.dat' WITH PRIVATE KEY ( ENCRYPTION BY PASSWORD = 'mypassword', FILE = 'd:\backup\cert1_privatekey.dat' ) 2番目のサーバー: CREATE MASTER KEY ENCRYPTION BY PASSWORD …

1
既存のデータベースのFamilyGUIDを見つける方法
RESTOREコマンドを実行するとき、SQL Serverは既存のデータベースが別のデータベースによって上書きされないようにすることを理解しています。このチェックは、を使用してバイパスできますREPLACE。 SQL Serverがバックアップファイルを使用して、FamilyGUID復元されるデータベースが上書きされるデータベースと同じかどうかを判断することを理解しています。これは正しいです? 私FamilyGUIDはバックアップファイルのがを使用して決定できることを理解しています RESTORE headeronly FROM DISK = N'Q:\MyBackup.bak' しかし、どのようにして、上書きされているデータベースのFamilyGUIDを見つけることができますか?

1
復元できません(エラー3456)
簡単に理解できない状況があり、このフォーラムで他の人に提案があるかどうか尋ねたいと思いました。 Windows Server 2008R2 EnterpriseでSQL Server 2008 R2 Standard SP3を実行しています。 データベースにはいくつかのメンテナンスが必要でしたが、その後、別のサーバーに復元する必要がありました。COPY_ONLYで実行される完全なdbバックアップと、4つのtlogバックアップのセットがあります。 開始する前に、tlogbackup1を作成します 以下からの変更FULLへのBULK_LOGGED復旧モデル 新しいファイルグループを追加する newfilegroupにファイルを追加する newfilegroupをデフォルトに設定 テーブルに選択(newfilegroup) 元のテーブルをドロップ 元のファイルを削除 元のファイルグループを削除する 新しいテーブルの名前を元のテーブルと一致するように変更する 元のファイルグループと一致するようにnewfilegroupのファイル名を変更する 元のファイル名と一致するようにカタログのファイル名を変更する OSレベルでファイル名を変更して元のファイル名と一致させる 既定のファイルグループを元のファイルグループに設定する dbをオンラインにする 以下からの変更BULK_LOGGEDへのFULL復旧モデル すべての手順が完了したら、tlogbackup2を作成します 復元サーバーでのドライブ文字の変更により、すべてのバックアップの復元にはWITH MOVEを使用する必要があります。 回復手順: RESTORE database SomeDB FROM DISK = 'D:\REPRO\SomeDB.bak' WITH MOVE 'SystemData' TO 'D:\SQLDATA\SomeDB.mdf' ,MOVE 'SystemDataPDS' TO 'D:\SqlData\SomeDB.ndf' ,MOVE 'SystemData_log' TO …

1
復元を行うときにログバックアップをテールしますか?
通常、運用サーバーから非運用サーバーへのDBの復元を実行するときは、WITH REPLACEオプションを使用します。 MSDNによれば、復元する前に実際にテールログをバックアップする必要があります。 データベースがオンラインであり、データベースで復元操作を実行する予定の場合は、まずログの末尾をバックアップします。オンラインデータベースのエラーを回避するには、BACKUP Transact-SQLステートメントの…WITH NORECOVERYオプションを使用する必要があります。 私がそれをしている方法のいくつかの危険または不利な点は何ですか?なぜ、最初にテールログをバックアップするのが有利なのですか? 私はSQL Server 2008R2を使用していますが、このクエリはほとんどの新しいバージョンのSQL Serverにも関連していると考えられるため、最初はそのようにタグ付けしていません。

1
LDFファイルからデータを回復するにはどうすればよいですか?
SQL 2005 Express Editionを使用しています。一部の削除されたレコードを復元するために、LDFファイルからデータを読み取ります。 ApexSQLの試用版を使用してみました。サードパーティのソフトウェアを使用する代わりに、ログファイルを自分で読み取る方法を見つけようとしています。 LDFファイルからデータを読み取って回復するにはどうすればよいですか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.