対象 | 確認 | 次に、 |
---|---|---|
IBM Db2 | IBM Db2 のバックアップと DR | Db2 データベースの前提条件 |
MariaDB | MariaDB のバックアップと DR | MariaDB データベースの前提条件 |
MySQL | MySQL のバックアップと DR | MySQL データベースの前提条件 |
PostgreSQL | PostgreSQL のバックアップと DR | PostgreSQL データベースの前提条件 |
SAP ASE | SAP ASE のバックアップと DR | SAP ASE データベースの前提条件 |
SAP IQ | SAP IQ のバックアップと DR | SAP IQ データベースの前提条件 |
SAP MaxDB | SAP MaxDB のバックアップと DR | SAP MaxDB データベースの前提条件 |
SAP HANA | SAP HANA のバックアップと DR | バックアップ用に SAP HANA データベースを準備する |
Microsoft SQL Server | SQL Server のバックアップと DR | バックアップおよび DR サービス用に SQL Server データベースを準備する |
Oracle | Oracle のバックアップと DR | Oracle データベースのバックアップの前提条件とその次のページ |
その他の Backup & DR でサポートされているデータベースの場合は、次の手順に沿って操作します。
Db2 データベースの前提条件
各データベースで自動ストレージ モードを使用している必要があります。使用していない場合、インスタンスのみが検出されます。
各データベースはアーカイブログ モードで、LOGARCHMETH1 はローカルディスクに設定する必要があります。データベースが循環モードかアーカイブログ モードかを確認するには、
db2 get db cfg for <database name>| grep LOGARCHMETH1
コマンドを実行します。データベースが循環モードの場合は、続行する前にロギングをアーカイブ モードに変更します。
LOGARCHMETH1
パラメータを設定するには、次のコマンドを使用します。
db2 update db cfg for <dbname> LOGARCHMETH1 using 'DISK:<location>'
HADR スタンバイ データベースの場合は、スタンバイでの読み取りオプションを有効にする必要があります。つまり、
DB2_HADR_ROS
パラメータを ON に設定する必要があります。
MariaDB データベースの前提条件
MariaDB データベースが LVM の下になければならず、ブート ボリュームではない必要があります。
mysql -e "select @@datadir"
を実行して、データベース データパスを取得します。MariaDB ボリュームのプロビジョニングに使用する LVM ボリュームに、少なくとも 20% の空き容量が必要です。
MariaDB サーバーにバックアップと DR エージェントをインストールします。
Reload
、Select
、Lock tables
、Super
、またはReplication client
の権限を持つバックアップ ユーザーを作成します。ホスト構成でバックアップ ユーザー名とパスワードが設定されている必要があります。バックアップ ユーザーを作成するには、次の操作を行います。
create user actuser identified by 'actpasswd'; GRANT SELECT on *.* TO actuser; GRANT RELOAD on *.* TO actuser; GRANT LOCK TABLES on *.* TO actuser; GRANT SUPER on *.* TO actuser; GRANT REPLICATION CLIENT on *.* to actuser; SHOW GRANTS FOR CURRENT_USER;
ログのバックアップを取得するには、MariaDB バイナリログ
log_bin
をオンにする必要があります。バイナリログ オプションを構成するには、MariaDB サーバーをシャットダウンして、構成ファイルmy.cnf
またはmy.ini
を編集します。構成ファイルの [mysqld] セクションに log-bin オプションを追加します。[mysqld] log_bin = /log1/mysql3306/mysql3306-bin.0000
mysql ユーザーは、/etc/passwd ファイルで /bin/bash に設定する必要があります。
MySQL データベースの前提条件
MySQL データベースが LVM の下になければならず、ブート ボリュームではない必要があります。
mysql -e "select @@datadir"
を実行して、データベース データパスを取得します。最適な結果を得るには、MySQL ボリュームをプロビジョニングする LVM ボリュームに少なくとも 20% の空き容量が必要です。
MySQL インスタンスが稼働していることを確認する
MySQL データベースのオーナー(OS ユーザー)がログインできるようにする必要があります。たとえば、データベース OS ユーザーには
/bin/bash
などの動作するシェルが必要です。OS ユーザーを有効にするコマンド:
usermod -s /bin/bash mysql
MySQL インスタンスには、localhost から接続できるデータベース バックアップ ユーザーが必要です。例: create user
actuser'@'localhost
identified by 'mypassword';ボリュームレベルのスナップショット バックアップと復元の場合にデータベース バックアップ ユーザーに必要な権限:
GRANT SELECT on *.* TO actuser; GRANT RELOAD on *.* TO actuser; GRANT LOCK TABLES on *.* TO actuser; GRANT SUPER on *.* TO actuser; GRANT REPLICATION CLIENT on *.* to actuser; SHOW GRANTS FOR CURRENT_USER;
フルバックアップと増分バックアップ(ファイルベースの従来のバックアップと復元)の場合、データベース バックアップ ユーザーには次の権限が必要です。
GRANT ALL ON *.* TO 'actuser'@'localhost'; SHOW GRANTS FOR CURRENT_USER;
システム データベース(
information_schema
、mysql
、performance_schema
、sys
)以外のユーザー定義データベースが 1 つ存在している必要があります。ログのバックアップを取るには、MySQL のバイナリログ(log_bin)をオンにする必要があります。バイナリログ オプションを構成するには、MySQL サーバーをシャットダウンして構成ファイル(
my.cnf
またはmy.ini
)を編集します。構成ファイルの [mysqld] セクションに log-bin オプションを追加します。[mysqld] log_bin = /log1/mysql3306/mysql3306-bin.0000
PostgreSQL データベースの前提条件
このセクションでは、PostgreSQL データベースの前提条件について説明します。
プライマリ ノードから PostgreSQL を保護する
バックアップ ユーザーを作成します。
create user actuser;
バックアップの権限を付与します。
alter user actuser with superuser; alter user actuser with Replication;
ログのバックアップを取得するには、PostgreSQL アーカイブ モード(archive_mode)を ON に設定する必要があります。アーカイブ ログモード オプションを構成するには、インスタンスのデータディレクトリにある postgresql.conf ファイルを更新し、PostgreSQL を再読み込みします。
archive_mode = on // Command to reload PostgreSQL pg_ctl reload -D <Postgres_datadir_path> ``
例: pg_ctl reload -D /pgdata
スタンバイノードから PostgreSQL を保護する
バックアップ ユーザーを作成します。
create user actuser;
バックアップの権限を付与します。
alter user actuser with superuser; alter user actuser with Replication;
PostgreSQL アーカイブ モード - WAL - スタンバイ ノードでの設定:
WAL を保持するディレクトリを作成します。
この例では、/pglog
がディレクトリであると想定しています。root ユーザーとして次の手順を実行します。mkdir /pglog chown -R postgres:postgres /pglog
アーカイブのパラメータを構成します。
この例では、$PGDATA
が/pgdata/11/data
であることを前提としています。postgres ユーザーとして次の手順を実行します。
ファイル/pgdata/11/data/postgresql.conf
のパラメータを追加または更新します。wal_level = replica archive_mode = always archive_command = 'test ! -f /pglog/%f && cp %p /pglog/%f'
PostgreSQL を再起動します。
/usr/pgsql-11/bin/pg_ctl stop -D /pgdata/11/data /usr/pgsql-11/bin/pg_ctl start -D /pgdata/11/data
スタンバイからのデータベース接続を受け入れるように、プライマリで
pg_hba.conf
のエントリを追加または更新します。host postgres <db-user> <standby-ip/32> <connection method>
例:
host postgres postgres 10.128.0.29/32 trust
アーカイブの生成をテストします(postgres ユーザーとして)。
ls -l /pglog/
次のログ切り替えコマンドを実行します。
/usr/pgsql-11/bin/psql -h 10.128.0.28 -p5432 -c "select pg_switch_wal();" sleep 5 # log shipping may take some time depending on network ls -l /pglog/
SAP ASE データベースの前提条件
始める前に、SAP ASE サーバーで次の操作を行います。
バックアップ ユーザー アカウントは、バックアップ権限(
oper_role
またはsa_role
)を使用して作成する必要があります。バックアップ ユーザー名とパスワードは、ホスト構成で構成する必要があります。ソースに対して quiesce コマンドを実行するユーザーをパスワードありまたはパスワードなしで作成し、このユーザーに sa_role 特権または quiesce 特権を付与します。パスワードを使用してユーザーを作成するには、次のコマンドを実行します。isql -Usa -P<password> -S<SAP ASE_Server_Name> 1>sp_addlogin actuser, '<password>' 2>go 1>grant role sa_role to actuser 2>go
パスワードを必要としないユーザー ログインを構成するには、パスワードを null に設定してから、次のコマンドを実行します。
1>sp_configure "minimum password length", 0 2>go 1> sp_modifylogin actuser, "min passwd length", "0" 2> go 3> exit isql -Uactuser -P'<password>' -S<server_name> > sp_password '<password>', NULL >go >sp_configure "minimum password length", 8 >go
SAP ASE サーバーにバックアップと DR エージェントをインストールします。
トランザクション ログのバックアップを有効にするには、SAP ASE インスタンスの各データベースに対してデータベース レベルで
Truncate on chkpt false
を設定する必要がある。ボリュームレベルのバックアップには次のことが当てはまります。
SAP ASE インスタンスが LVM の下になければならず、ブート ボリュームではない必要がある。
SAP ASE ボリュームをプロビジョニングする LVM ボリュームに、少なくとも 20% の空き容量が必要です。
SAP IQ データベースの前提条件
始める前に、SAP IQ サーバーで次の点を確認してください。
ログのバックアップを取得するには、SAP IQ PITR ロギングをオンにする必要があります。PITR ログ オプションを構成するには、次の SAP IQ API が必要です。
ALTER DBSPACE IQ_SYSTEM_LOG RENAME /<pitr_log_location>
SET OPTION
PUBLIC.IQ_POINT_IN_TIME_RECOVERY_LOGGING
= ON`
PITR ロギングを有効にすると、データベースの完全バックアップが必要になります。
ユーティリティ データベースは、ユーザー名とパスワードを指定して開始する必要があります。dbname は
utility_db
にする必要があります。例:start_iq -n utility_db -su act,passwd
データベース バックアップのユーザー名とパスワードは、
utility_db
のユーザー名とパスワードと同じである必要があります。また、DBA 権限が必要です。バックアップ ユーザーを作成するには、次のようにします。create user actuser identified by 'mypassword'; grant dba to actuser;
- バックアップと DR エージェントを SAP IQ サーバーホストにインストールします。
SAP MaxDB データベースの前提条件
始める前に、SAP MaxDB サーバーで次の操作を行います。
1 台のサーバーで複数の MaxDB インスタンスが実行されている場合、そのサーバーで実行中のすべての MaxDB インスタンスの間で DB ユーザー名とパスワードが共通している必要があります。
自動ログのバックアップが有効になっている必要があります。次のコマンドを使用して、自動ログ バックアップを有効にします。
dbmcli -d <DBSID> -u <DBM_USERNAME>,<DBM_PASSWD> autolog_on <autolog_backup_template_name>
自動ログのバックアップを有効にするには、自動ログのバックアップ テンプレートが必要です。
バックアップ テンプレートを作成するには、次のコマンドを使用します。
dbmcli -d <DBSID> -u <DBM_USERNAME>,<DBM_PASSWD> backup_template_create
<BACKUP_TEMPLATE_NAME> to file <FULL_PATH_WITH_FILE_NAME> content log
- 自動ログのバックアップを有効にするには、ログの上書きエリアを無効にする必要があります。
ログの上書きを無効にするには、次のコマンドを使用します。
dbmcli -d <DBSID> -u <DBM_USERNAME>,<DBM_PASSWD> db_execute SET LOG AUTO
OVERWRITE OFF.
- SAP MaxDB サーバーホストにバックアップと DR エージェントをインストールします。
次のステップ
データベースがバックアップと DR 用に準備されたら、ホストを追加してデータベースを検出できます。