適用於 | 查看 | 接著使用 |
---|---|---|
IBM Db2 | IBM Db2 的備份和 DR | DB2 資料庫先決條件 |
MariaDB | MariaDB 備份和 DR | MariaDB 資料庫先決條件 |
MySQL | MySQL 備份與 DR | MySQL 資料庫先決條件 |
PostgreSQL | PostgreSQL 的備份和 DR 服務 | PostgreSQL 資料庫先決條件 |
SAP ASE | SAP ASE 的備份和災難復原 | SAP ASE 資料庫先決條件 |
SAP IQ | SAP IQ 的備份和災難復原 | SAP IQ 資料庫先決條件 |
SAP MaxDB | SAP MaxDB 的備份和 DR | SAP MaxDB 資料庫先決條件 |
SAP HANA | SAP HANA 備份和 DR | 準備 SAP HANA 資料庫以供備份 |
Microsoft SQL Server | SQL Server 備份和 DR | 為備份和災難復原服務準備 SQL Server 資料庫 |
Oracle | Oracle 備份和災難復原 | 備份 Oracle 資料庫的先決條件及其後續頁面 |
如要備份所有其他支援備份和 DR 的資料庫,請按照下列步驟操作。
Db2 資料庫先決條件
每個資料庫都必須使用自動儲存模式,否則系統只會偵測到執行個體。
每個資料庫都必須處於封存記錄模式,且 LOGARCHMETH1 必須設為本機磁碟。如要瞭解資料庫是否處於循環模式或封存記錄模式,請執行
db2 get db cfg for <database name>| grep LOGARCHMETH1
指令如果資料庫處於循環模式,請先將記錄功能變更為封存模式,再繼續操作。如要設定
LOGARCHMETH1
參數,請使用以下指令:
db2 update db cfg for <dbname> LOGARCHMETH1 using 'DISK:<location>'
對於 HADR 待命資料庫,必須啟用「reads on standby」選項,也就是必須將
DB2_HADR_ROS
參數設為 ON。
MariaDB 資料庫必要條件
MariaDB 資料庫必須位於 LVM 下,且不得是啟動磁碟。執行
mysql -e "select @@datadir"
以取得資料庫資料路徑。用於配置 MariaDB 磁碟區的 LVM 磁碟區應至少有 20% 的可用空間。
在 MariaDB 伺服器上安裝備份和災難復原代理程式。
建立備用使用者,並授予
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
在 /etc/passwd 檔案中,MySQL 使用者必須設為 /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
) 之外,您必須提供一個使用者定義的資料庫。如要備份記錄,必須啟用 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
是目錄。以根使用者身分執行下列步驟。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
),您必須使用主機設定設定備用使用者名稱和密碼。您可以建立使用者 (不含密碼或含密碼),在具有 sa_role/或具備休止權限的來源上執行休止指令。如要建立使用者並設定密碼,請執行下列指令: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
如要設定不需密碼的使用者登入作業,請將密碼設為空值,然後執行下列指令:
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 伺服器上安裝備份和災難復原代理程式。
如要啟用交易記錄備份功能,請在 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;
- 在 SAP IQ 伺服器主機上安裝備份和 DR 代理程式。
SAP MaxDB 資料庫先決條件
開始前,請在 SAP MaxDB 伺服器上執行下列操作:
如果伺服器上執行多個 MaxDB 例項,則所有在該伺服器上執行的 MaxDB 例項,都必須使用相同的資料庫使用者名稱和密碼。
必須啟用自動記錄備份功能。使用下列指令啟用自動記錄備份功能:
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 準備資料庫後,您可以新增主機並探索資料庫。