データ回復力におけるNo.1 グローバルリーダー
Veeam’s guidance for customers affected by CrowdStrike’s content update

Veeam構成データベースを手動でバックアップする方法

KB ID: 1471
Product: Veeam Backup & Replication
Veeam Service Provider Console
Veeam Cloud Connect
Published: 2024-07-17
Last Modified: 2024-08-05
Languages: EN
mailbox
Get weekly article updates
登録することで、Veeamのプライバシー通知に従って当社が個人情報を管理することに同意したものと見なされます。

Cheers for trusting us with the spot in your mailbox!

Now you’re less likely to miss what’s been brewing in our knowledge base with this weekly digest

error icon

問題が発生しました。

時間をおいて、再度お試しください

目的

この記事では、Microsoft SQL ServerとPostgreSQL での構成データベースをバックアップする方法を説明します。

また、以下の製品において構成データベースを特定する方法も説明します。

  • Veeam Backup & Replication / Veeam Cloud Connect
  • Veeam Backup Enterprise Manager
  • Veeam Service Provider Console。

Veeam ONEに関する情報はこちらをご覧ください: KB2356

Veeamデータベースの場所(名前)の特定

Veeam Backup & Replication または Veeam Cloud Connectバージョン12以降

方法1:Configuration Database Connection Settings ユーティリティを使用した特定
  1. Configuration Database Connection Settings ユーティリティを起動します。
  2. Veeam Backup & Replicationを選択し、Nextをクリックして製品のデータベース接続設定(Connection Settings)を表示します。Enterprise Managerがインストールされていない場合、このオプションは表示されず、直接Connection Settingsに移動します。
  3. [Connection Settings] タブで、[Database engine] と [Connection] の設定を確認します。
  4. [Cancel]をクリックして、[Configuration Database Connection Settings]ユーティリティを閉じます。この場合、設定変更はなされません。
    [Cancel]をクリックしないと、すべてのVeeamサービスが再起動され、すべてのアクティブなジョブが強制的に停止されます。
方法2:PowerShellを使用した特定

Veeam Backup & ReplicationまたはVeeam Cloud Connectがインストールされているサーバで以下のPowerShellスクリプトを実行すると、データベース接続情報が出力されます。

以下のスクリプトは単に特定のレジストリ値から情報を取得し、それらの値をPowerShellコンソールに表示します。システムに対して値が変更されることはありません。

$activeConfig = (Get-ItemProperty -Path 'HKLM:\SOFTWARE\Veeam\Veeam Backup and Replication\DatabaseConfigurations' -Name 'SqlActiveConfiguration').SqlActiveConfiguration
if ($activeConfig -eq "MsSql") {
$sqlServerName = (Get-ItemProperty -Path 'HKLM:\SOFTWARE\Veeam\Veeam Backup and Replication\DatabaseConfigurations\MsSql' -Name 'SqlServerName').SqlServerName
$sqlInstanceName = (Get-ItemProperty -Path 'HKLM:\SOFTWARE\Veeam\Veeam Backup and Replication\DatabaseConfigurations\MsSql' -Name 'SqlInstanceName').SqlInstanceName
$sqlDatabaseName = (Get-ItemProperty -Path 'HKLM:\SOFTWARE\Veeam\Veeam Backup and Replication\DatabaseConfigurations\MsSql' -Name 'SqlDatabaseName').SqlDatabaseName
Write-Host " Database Engine: $($activeConfig) "
Write-Output "Connection Settings: $($sqlServerName)\$($sqlInstanceName)"
Write-Output "Database Name: $($sqlDatabaseName)"
} elseif ($activeConfig -eq "PostgreSql") {
$pgServerName = (Get-ItemProperty -Path 'HKLM:\SOFTWARE\Veeam\Veeam Backup and Replication\DatabaseConfigurations\PostgreSql' -Name 'SqlHostName').SqlHostName
$pgPortNumber = (Get-ItemPropertyValue -Path 'HKLM:\SOFTWARE\Veeam\Veeam Backup and Replication\DatabaseConfigurations\PostgreSql' -Name 'SqlHostPort')
$pgDatabaseName = (Get-ItemProperty -Path 'HKLM:\SOFTWARE\Veeam\Veeam Backup and Replication\DatabaseConfigurations\PostgreSql' -Name 'SqlDatabaseName').SqlDatabaseName
$pgUser = (Get-ItemProperty -Path 'HKLM:\SOFTWARE\Veeam\Veeam Backup and Replication\DatabaseConfigurations\PostgreSql' -Name 'PostgresUserForWindowsAuth').PostgresUserForWindowsAuth
Write-Host "Database Engine: $($activeConfig)"
Write-Output "Connection Settings: $($pgServerName):$($pgPortNumber)"
Write-Output "Database Name: $($pgDatabaseName)"
Write-Output "PostgreSQL User: $($pgUser)"
}

Enterprise Managerバージョン12以降の場合

方法1:Configuration Database Connection Settingsユーティリティを使用した特定
  1. Configuration Database Connection Settingsユーティリティを起動します。
  2. Veeam Backup Enterprise Managerを選択し、その製品のデータベース接続設定(Connection Settings)を確認します。
  3. [Connection Settings]タブで、[Database engine]と[Connection settings]の設定を確認します。
  4. CancelをクリックしてConfiguration Database Connection Settingsユーティリティを閉じます。
方法2:PowerShellを使用した特定

Enterprise Manager がインストールされているサーバで次の PowerShell スクリプトを実行すると、データベース接続情報が出力されます。

以下のスクリプトは特定のレジストリ値から情報を取得し、それらの値を PowerShell コンソールに表示します。システムに対して値が変更されることはありません。

$activeConfig = (Get-ItemProperty -Path 'HKLM:\SOFTWARE\Veeam\Veeam Backup Reporting\DatabaseConfigurations' -Name 'SqlActiveConfiguration').SqlActiveConfiguration
if ($activeConfig -eq "MsSql") {
$sqlServerName = (Get-ItemProperty -Path 'HKLM:\SOFTWARE\Veeam\Veeam Backup Reporting\DatabaseConfigurations\MsSql' -Name 'SqlServerName').SqlServerName
$sqlInstanceName = (Get-ItemProperty -Path 'HKLM:\SOFTWARE\Veeam\Veeam Backup Reporting\DatabaseConfigurations\MsSql' -Name 'SqlInstanceName').SqlInstanceName
$sqlDatabaseName = (Get-ItemProperty -Path 'HKLM:\SOFTWARE\Veeam\Veeam Backup Reporting\DatabaseConfigurations\MsSql' -Name 'SqlDatabaseName').SqlDatabaseName
Write-Host " Database Engine: $($activeConfig) "
Write-Output "Connection Settings: $($sqlServerName)\$($sqlInstanceName)"
Write-Output "Database Name: $($sqlDatabaseName)"
} elseif ($activeConfig -eq "PostgreSql") {
$pgServerName = (Get-ItemProperty -Path 'HKLM:\SOFTWARE\Veeam\Veeam Backup Reporting\DatabaseConfigurations\PostgreSql' -Name 'SqlHostName').SqlHostName
$pgPortNumber = (Get-ItemPropertyValue -Path 'HKLM:\SOFTWARE\Veeam\Veeam Backup Reporting\DatabaseConfigurations\PostgreSql' -Name 'SqlHostPort')
$pgDatabaseName = (Get-ItemProperty -Path 'HKLM:\SOFTWARE\Veeam\Veeam Backup Reporting\DatabaseConfigurations\PostgreSql' -Name 'SqlDatabaseName').SqlDatabaseName
$pgUser = (Get-ItemProperty -Path 'HKLM:\SOFTWARE\Veeam\Veeam Backup Reporting\DatabaseConfigurations\PostgreSql' -Name 'PostgresUserForWindowsAuth').PostgresUserForWindowsAuth
Write-Host "Database Engine: $($activeConfig)"
Write-Output "Connection Settings: $($pgServerName):$($pgPortNumber)"
Write-Output "Database Name: $($pgDatabaseName)"
Write-Output "PostgreSQL User: $($pgUser)"
}

Veeam Service Provider Console

Configuration > Settings > SQL Server Connection

構成データベースのバックアップ

ケースに添付する前にデータベースバックアップを圧縮してください

Veeamサポートにデータベースバックアップを提供する場合、ケースに添付する前に、データベースバックアップファイルを圧縮(ZIP)してください。これにより、お客様とサポートエンジニアの両方の帯域幅と時間を節約することができます。

ほとんどのデータベースバックアップファイルは元のサイズの15%に圧縮されます。

Microsoft SQL (MsSql) における手順

方法 1: PowerShell

Backup-SqlDatabse PowerShell コマンドレットは、Microsoft SQL と共にインストールされるモジュールの一部であり、Microsoft SQL サーバ上で実行する必要があります。コマンドレットを実行するマシンに Microsoft SQL がインストールされていない場合、コマンドは失敗します。

以下のコマンドを実行し、Microsoft SQLの接続情報と出力先を入力します:

次のコマンドは、Microsoft SQLインスタンスがWindows認証を使用していて、かつ、コマンドを実行するアカウントがデータベースバックアップを行うのに適切な権限を持っていることを前提としています。

Backup-SqlDatabase -ServerInstance "ServerName\InstanceName" -Database "DBName" -BackupFile "C:\Temp\DBBackup_$($env:computername)_$(get-date -f yyyy-MM-dd_HH.mm).bak"
powershell output example
PowerShellを使用した例
方法2:Microsoft SQL Server Management Studio
  1. Microsoft SQL Server Management Studio(別途インストールが必要です)を開きます。
    パーミッション関連の問題を避けるために、SQL Server Management Studioを起動する際には、「管理者として実行」を使う必要がある場合があります。
  2. データベースをホストするServerName\Instanceに接続します。
  3. データベース(Databases)セクションを展開します。
  4. 目的のDBを右クリックし、コンテキストメニューから タスク(Tasks) > バックアップ(Back Up...)を選択します。
tasks backup
  1. バックアップの種類(Backup type)を完全(Full)に設定します。
  2. バックアップ先(Back up to)をディスク(Disk)に指定し、ファイル名を設定します。
    (最初に[削除(Remove)]をクリックし、次に[追加(Add)]をクリックしてディスク上の出力場所とファイル名を指定する必要がある場合があります)。
Full backup to single file on disk
  1. [OK]をクリックしてバックアッププロセスを開始します。
方法3:sqlcmd

*sqlcmdはMicrosoft SQLと一緒にインストールされるアプリケーションです。コマンドを実行するマシンにMicrosoft SQLがインストールされていない場合、sqlcmdは存在せず、コマンドは失敗します。

Microsoft SQLの接続情報と出力先を入力して、以下のコマンドを実行してください:

次のコマンドは、Microsoft SQLインスタンスがWindows認証を使用していて、かつ、コマンドを実行するアカウントがデータベースバックアップを行うのに適切な権限を持っていることを前提としています。

SqlCmd -E -S ServerName\InstanceName -Q "BACKUP DATABASE [DBName] TO DISK='C:\Temp\DBBackupFilename.bak' WITH STATS"
SQLCmd Example
SqlCmd を使用した例
ケースに添付する前にデータベースバックアップを圧縮してください

Veeamサポートにデータベースバックアップを提供する場合、ケースに添付する前に、結果のデータベースバックアップファイルを圧縮(ZIP)してください。これにより、お客様とサポートエンジニアの両方の帯域幅と時間を節約することができます。

ほとんどのデータベースバックアップファイルは元のサイズの15%に圧縮されます。

PostgreSQL(PostgreSql)における手順

注意:

  • 以下のpg_dumpコマンドの例では、Veeam Backup & Replicationのインストールでデフォルトの接続設定を前提としているため、サーバ名やポートを指定していません: localhost:5432
  • pg_dumpはPostgreSQLと共にインストールされるアプリケーションです。コマンドを実行するマシンにPostgreSQLがインストールされていない場合、pg_dumpは存在せず、コマンドは失敗します。
  • バックアップの場所を十分な空き容量のある任意のディスク/パスに変更してください。

 

管理者権限で起動したPowerShellコンソールで、以下のコマンドを実行します:

& "C:\Program Files\PostgreSQL\15\BIN\pg_dump.exe" -U postgres -F c -b -f "C:\Temp\PGDBBackup_$($env:computername)_$(get-date -f yyyy-MM-dd_HH.mm).sql" VeeamBackup
“SSPI authentication failed" エラーのトラブルシューティング

SSPI認証エラーは、pg_dumpコマンドを実行したユーザアカウントが正しくマップされていない場合に発生します。

pg_dump: error: connection to server at "localhost" (::1), port 5432 failed: FATAL:  SSPI authentication failed for user "postgres"

この問題を解決するには、KB4542を確認してください。

その他の情報

収集したデータの扱いについての詳細は、以下をご覧ください: vee.am/processing_of_personal_data
To submit feedback regarding this article, please click this link: Send Article Feedback
To report a typo on this page, highlight the typo with your mouse and press CTRL + Enter.

Spelling error in text

このサイトはhCaptchaによって保護されており、そのプライバシーポリシー利用規約が適用されます(Veeamのプライバシーポリシーに記載されている場合を除く)。
Thank you!

ありがとうございました。

フィードバックを受信しました。内容を確認させていただきます。

問題が発生しました。

時間をおいて、再度お試しください

You have selected too large block!

Please try select less.

KB Feedback/Suggestion

このフォームは、ナレッジベースに対するご意見専用となっております。ソフトウェアでお困りの場合は、サポートケースを作成してください。

送信することで、Veeamのプライバシー通知に従って当社が個人情報を管理することに同意したものと見なされます。
このサイトはhCaptchaによって保護されており、そのプライバシーポリシー利用規約が適用されます(Veeamのプライバシーポリシーに記載されている場合を除く)。
製品のダウンロードを続行するにはメールアドレスを確認します
次のメールアドレスに確認メールを送信しました:
  • 認証コードが間違っています。もう一度入力してください。
認証コードのメールを次のメールアドレスに送信しました:
コードを受信していない場合は、クリックして秒後に再送信してください。
コードを受信していない場合は、クリックして再送信してください。
Thank you!

ありがとうございました。

フィードバックを受信しました。内容を確認させていただきます。

error icon

問題が発生しました。

時間をおいて、再度お試しください