問題タブ [database-restore]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
firebird - fdbファイルからfirebirdデータベースを復元する
昨日ウェブサーバーがクラッシュし、システム(Ubuntu)を再インストールする必要がありました。mysqlを使用して適切なバックアップがあるため、データ/アプリケーションの復元の99%は問題ありませんでしたが、残念ながらgbakとIを使用してバックアップされなかった2つのfirebirdデータベースもあります。使用可能なfdbファイルのみがあります。
fdbファイルからFirebirdデータベースを復元する(またはデータをSQLスクリプトなどにマイニングする)方法はありますか?
問題は大きな苦痛であり、非常に緊急であるため、提案に感謝します(gfixなどは機能しません。接続しようとしたり、何かを実行しようとすると、「有効なデータベースではありません」というエラーが返されます。)
oracle - 数百のOracleインスタンスを1つのインスタンスにマージするための知恵
私たちのアプリケーションはWeb上で実行され、ほとんどが照会ツールであり、いくつかのトランザクションを実行します。Oracleデータベースをホストします。アプリには、顧客ごとに常に異なるOracleのインスタンスがあります。顧客とは、会社の従業員にサービスを提供するために私たちに支払いをする会社であり、通常、顧客1人あたり10,000〜25,000人の従業員です。数百人のお客様をお迎えする予定です。私たちは数年ごとにメジャーリリースを行っており、その新しいリリースへの移行は困難です。お客様のサイトに数週間チームを配置し、新しい機能を説明し、そのお客様に合わせて運転データを設定する場合があります。
コストを削減するために、マルチクライアント化を検討しており、すべてのお客様を大規模なWindowsServer2008サーバー上の単一の共有Oracle11gインスタンスに配置します。それが賢明かどうか疑問に思います。
顧客ごとに個別のインスタンスを持つことにはいくつかの利点があります。これらが偽物かどうか教えてください。重要性の低下についての私の大まかな推測では:
お客様のMyCorpとYourCoは、スキーマに重大な変更が加えられたときに別々に移行できます。(マルチクライアントの場合、300人以上の顧客を一晩で移行します!?!)
MyCorpのデータは、他の顧客に影響を与えることなく、簡単にバックアップおよび(!!!)復元できます。
MyCorpのデータは、開発者がコードを正しく取得したり、DBAが構成を正しく取得したりすることなく、競合他社のYourCoのデータから安全に分離されます。
1人の顧客が災害に遭った場合(誰かが誤って全員の給与を2倍にし、給料日後にエラーが発見された場合)は他の顧客に影響を与えないため、複数のインスタンスのリスクは低くなります。すべてのお客様(おっと、新しいDBA、そして突然すべての参加者が同じSSNを持っている!?!)に影響を与えた災害により、当社が倒産する可能性があります。
1台のサーバーに1つのインスタンスがあると、単一障害点が発生し、ハリケーンによって建物が倒壊した場合、顧客ベース全体が廃業します。複数のサーバー上の複数のインスタンスにより、地理的な分散が可能になります。大災害がお客様の大部分に影響を与えることはなく、他の地域の影響を受けていないサーバーが障害のあるサーバーの負荷を引き受ける可能性があります。
データベースが小さいため、パフォーマンスが向上します(10,000行と約50テーブルの2,000,000行)。
MyCorpのオフィスが(ほとんど)1つの地域にある場合、MyCorpのインスタンスは地理的に同じ場所に配置できるため、ネットワークの遅延によってパフォーマンスが低下することはありません。同じ理由で、グローバルクライアントにより良いサービスを提供することができます。
MyCorpはデータベースを社内に持ち込みたいので、インスタンスを簡単にエクスポートして、MyCorpのデータを取得できます。
インスタンスを異なるサーバーに配置できるため、負荷分散が容易になります(これはWebファームを使用します)。
DEVまたはQAインスタンスが必要な場合、データがはるかに少ないため、実際のインスタンスのクローンを作成してデータを匿名化する方が簡単です。
それらは十分に小さいため、開発者は独自のインスタンスをローカルで実行できるため、VPNの煩わしさを感じることなく、空港で待機している間や飛行中にコードを処理できます。
Q1:個別のインスタンスの他の利点は何ですか?
データベーススキーマを変更し、すべての顧客を1つのOracleインスタンスにマージして、1台の大規模なサーバーで実行することを検討しています。
マルチクライアントインスタンスアプローチの利点は次のとおりです。最も重要なのは最初です(私のWAG)。これらが偽物である場合は、狙撃してください。
DBAは、数百ではなく1つのインスタンスを維持するだけでよいため、作業が少なくて済みます。DBAの作業が少ないということは、この変更の主な動機である安価なことを意味します。
たった1つのインスタンスで、DBAはパフォーマンスを最適化するためのより良い仕事をすることができます。適切なインデックスを追加し、SQLを確認する時間があります。
スキーマとアプリが1つしかないため、開発者はアプリケーションのデバッグと拡張が簡単になります(数百のインスタンスがある場合は、スキーマのバージョンごとに異なるバージョンのアプリがあり、数十のスキーマバージョンが存在する可能性があります)。 )。これにより、コストも削減されます。別の方法は、(1)この顧客が実行しているバージョン、および(2)対応する開発環境、コード、およびデータベースの再作成に苦労して、すべてのデバッグセッションを開始する必要があることです。(各パッチとリリースのコードとデータベースインスタンスを含む仮想マシンが必要です!)
オラクルのライセンスは、重さに関係なくサーバーごとに価格設定されているため、より安価です(または何か-私は主題について何も知りません)。
インスタンスが1つしかないため、データベースはWebセッションデータの実行可能な永続ストアになります。
一部のデータベース操作は、1つのマルチクライアントインスタンスを使用すると簡単になります。たとえば、参加者(またはその配偶者)がどの顧客のために働いているかについて迷っているときに参加者を見つけることができます。すべての名前が1つのテーブルにあります。顧客間での報告は簡単です。
Q2:1つのインスタンスに複数のクライアントがあることのその他の利点は何ですか?
Q3:どちらのアプローチが良いと思いますか(なぜ)?顧客ごとのインスタンス、または1つのインスタンスのすべての顧客?
マルチクライアントインスタンスが1つあると、移行がほぼ不可能になるのではないかと心配しています。これは取引のキラーです...
...古いものと新しいものの2つのマルチクライアントインスタンスを持つような妥協案がない限り。その場合、参加者の検索やレポート作成などのクロスインスタンスソリューションを設計して、顧客が1つのマルチクライアントインスタンスから次のインスタンスに何も中断することなく移動できるようにします。
c# - c#内からSQLサーバーの復元の進行状況を見つける
これはおそらく単純な質問ですが、SQL Management Studio内からデータベースを復元する場合は、統計情報を使用して更新間隔を設定できます。
そのコード行をC#内から実行したい場合、どのように進行状況を取得できますか?現在は使用System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
しているだけですが、進捗状況がわかりません。
また、それよりも高速な場合は、Microsoft.SQLServer名前空間を使用することもできます。
sql-server - テンプレートから新しいデータベースを作成する最も速い方法は何ですか?
オンデマンドでデータベースを作成しており、データベースはさまざまなテンプレートから作成できます。すべてのテンプレートの構造は同じですが、データは異なります。テンプレートに含まれるデータは小さいです。
データベースのコピーを作成する最速の方法は何ですか?
- 復元する
- T-SQL を使用していますか?
- SMO を使用していますか?
- テンプレートのスクリプト化されたバージョンから新しいデータベースを作成し、必要な小さなデータを入力しますか?
- 他の ?
sql-server - 完全に自動化された SQL Server の復元
私は SQL Server コマンドにあまり詳しくありません。
.bak ファイルからデータベースを復元し、logical_data ファイルと logical_log ファイルを特定のパスに移動するスクリプトが必要です。
できます:
これにより、 column を含む結果セットが得られますLogicalName
。次に、restore コマンドで結果セットの論理名を使用する必要があります。
最初の結果セットから「移動」コマンドに提供できる変数に論理名をキャプチャするにはどうすればよいですか?
解決策は些細なことかもしれませんが、私は SQL Server にかなり慣れていません。
sql-server - SQL Server "RESTORE FILELISTONLY" 結果セット
自動化されたバックアップと復元の T-SQL スクリプトを作成しようとしています。バックアップの部分はやりましたが、復元に苦労しています。
SS Management Studioで次のステートメントを実行すると;
グリッドで結果セットを取得し、使用することもできます
一時テーブルにデータを入力します。ただし、その結果セットから選択しようとすると、構文エラーが発生します。例えば
結果セットのメタデータは、SQL Server ディクショナリのどこかに保存する必要があります。自動復元を機能させるための他の応急処置の公式を見つけましたが、結果セットに到達できる場合は、より洗練されたソリューションを作成します。また、2008 年と 2005 年の結果セットが異なることに注意してください。
前もって感謝します...
ms-access - MDB で削除されたレコードを復元する方法
MDB で削除されたレコードを復元することは可能ですか?
sql-server - SQL Server 2008 で非常に大きな .bak ファイル (180 GB) を復元する方法
Microsoft SQL Server 2008 に保存された非常に大きな .bak ファイル (180 GB) があり、それを復元する必要があります。最初に Microsoft SQL Server 2008 Express をインストールし、MS SQL Management Studio Express で復元しようとしましたが、サイズ制限があるため機能しませんでした。ファイルを復元する方法を知っている人はいますか? Microsoft SQL を使用するのは初めてで、何をすればよいかわかりません。それは本当に緊急であり、私はどんな助けにも本当に役立ちます! どうもありがとう!
ウムトス
mysql - コマンドラインを使用したmysql restore file.sql構文エラー
私が入力するとき
常にこのエラー「エラー 1064 <42000>:」が発生します。SQL サンタックスにエラーがあります。近くで使用する正しい構文については、MySql サーバーのバージョンに対応するマニュアルを確認してください。
この声明の何が問題なのですか?
mysql - MySQLで非常に大きな(20 GB).sqlファイルを実行するためのより高速なオプション
私の会社は、政府からのデータの要求に応じて20GB以上の.sqlファイルを配信されました。別の形式でデータを取得するためのオプションがあまりないので、妥当な時間でデータをインポートする方法のオプションが必要です。Navicatのバッチ実行ツールを使用して、ハイエンドサーバー(Win 2008 64ビット、MySQL 5.1)で実行しています。14時間稼働しており、完了間近の兆候は見られません。
誰かがそのようなトランザクションのためのより高速なオプションを知っていますか?それとも、ファイルサイズが大きいことを考えると、これは私が期待すべきことですか?
ありがとう