搭建DM实时主备-数据准备

注:配置数据守护之前,必须先同步实例数据,确保两者保持完全一致;主库可以是新初始化的数据,也可以是正在生产、使用中的数据。DM 提供了两种方式初始化同步实例数据,数据文件拷贝以及备份还原方式。
建议三种方式优先级 数据拷贝>脱机备份、脱机还原>联机备份、脱机还原

一 数据拷贝

1.1 初始化主库

注:主备库数据库软件已安装,只初始化主库实例

$ cd /opt/dmdbms/bin

搭建DM实时主备-数据准备_第1张图片

$ ./dminit PATH=/opt/dmdbms/data CHARSET=1

注:根据需要选择参数进行初始化,对于新初始化的库,首次启动不允许使用 mount 方式需要先正常启动并正常退出,然后才允许 mount 方式启动。

$ ./dmserver /opt/dmdbms/data/DAMENG/dm.ini

搭建DM实时主备-数据准备_第2张图片
输入 exit 关闭前台进程
在这里插入图片描述

1.2 找到存放数据文件的目录

注:此处为测试环境,数据文件都存放在data文件夹下,所以将data文件夹传输至备库即可

$ cd ../

在这里插入图片描述

$ scp -r data/ dmdba@192.168.189.92:/opt/dmdbms/

注:本次为dmdba用户传送至dmdba用户,所以备机data文件夹所属用户组不用重新授权,如果用root用户传送,需要重新授权

# cd /opt/dmdbms
# chown -R dmdba:dinstall data/

搭建DM实时主备-数据准备_第3张图片

1.3 检查数据一致性

注:必须已mount方式启动主备库实例
主库:

$ /opt/dmdbms/bin
$ ./dmserver /opt/dmdbms/data/DAMENG/dm.ini mount

搭建DM实时主备-数据准备_第4张图片
另开窗口

# /opt/dmdbms/bin
# ./disql

搭建DM实时主备-数据准备_第5张图片
备库:

$ /opt/dmdbms/bin
$ ./dmserver /opt/dmdbms/data/DAMENG/dm.ini mount

另开窗口

# /opt/dmdbms/bin
# ./disql

分别在主备库disql中输入一下sql

SQL> select file_LSN, cur_LSN from v$rlog;

注:主库和备库的 FILE_LSN和 CUR_LSN 值相同,可以确保数据完全一致
主库:
搭建DM实时主备-数据准备_第6张图片
备库:
搭建DM实时主备-数据准备_第7张图片
分别在主备库disql中输入一下sql

SQL> select permanent_magic;

注:检查实例的永久魔数是否一致

主库:
搭建DM实时主备-数据准备_第8张图片
备库:
搭建DM实时主备-数据准备_第9张图片
主备库的FILE_LSN和 CUR_LSN 值相同且永久魔数一致情况下可进行主备库的配置工作

二 联机备份、脱机还原

注:此种情况适用于生产环境正在使用的数据库且不能停止实例服务,确保主库本地归档开启且为连续归档
主库实例初始化完成且有数据,备库需要初始化实例,参数与主库参数保持一致

2.1 主库联机备份

进入主库disql

# cd /opt/dmdbms/bin
# ./disql
SQL> BACKUP DATABASE BACKUPSET '/opt/dmdbms/data/BACKUP_FILE_01';

搭建DM实时主备-数据准备_第10张图片
使用root用户

$ cd /opt/dmdbms/data/
$ scp -r BACKUP_FILE_01 dmdba@192.168.189.92:/opt/dmdbms/data/

在这里插入图片描述

2.2 备库脱机还原

$ cd /opt/dmdbms/bin
$ ./dmrman CTLSTMT="RESTORE DATABASE '/opt/dmdbms/data/DAMENG/dm.ini' FROM BACKUPSET '/opt/dmdbms/data/BACKUP_FILE_01'"
$ ./dmrman CTLSTMT="RECOVER DATABASE '/opt/dmdbms/data/DAMENG/dm.ini' FROM BACKUPSET '/opt/dmdbms/data/BACKUP_FILE_01'"
$ ./dmrman CTLSTMT="RECOVER DATABASE '/opt/dmdbms/data/DAMENG/dm.ini' UPDATE DB_MAGIC"

搭建DM实时主备-数据准备_第11张图片
搭建DM实时主备-数据准备_第12张图片

三 脱机备份、脱机还原

3.1 主库脱机备份

正常关闭数据库

$ service DmServiceDAMENG stop

查看DmAPService服务是否运行

$ service DmAPService status

在这里插入图片描述
执行以下语句进行脱机备份

$ ./dmrman CTLSTMT="BACKUP DATABASE '/opt/dmdbms/data/DAMENG/dm.ini' FULL TO BACKUP_FILE1 BACKUPSET '/opt/dmdbms/data/BACKUP_FILE_01'"

搭建DM实时主备-数据准备_第13张图片
拷贝到备库对应目录

$ cd /opt/dmdbms/data/
$ scp -r BACKUP_FILE_01/ dmdba@192.168.189.92:/opt/dmdbms/data/

搭建DM实时主备-数据准备_第14张图片

3.2 备库脱机还原

确保备库数据库处于关闭状态

$ cd /opt/dmdbms/bin
$ ./dmrman CTLSTMT="RESTORE DATABASE '/opt/dmdbms/data/DAMENG/dm.ini' FROM BACKUPSET '/opt/dmdbms/data/BACKUP_FILE_01'"
$ ./dmrman CTLSTMT="RECOVER DATABASE '/opt/dmdbms/data/DAMENG/dm.ini' FROM BACKUPSET '/opt/dmdbms/data/BACKUP_FILE_01'"
$ ./dmrman CTLSTMT="RECOVER DATABASE '/opt/dmdbms/data/DAMENG/dm.ini' UPDATE DB_MAGIC"

搭建DM实时主备-数据准备_第15张图片

搭建DM实时主备-数据准备_第16张图片

3.3 检查数据一致性

注:必须已mount方式启动主备库实例
主库:

$ /opt/dmdbms/bin
$ ./dmserver /opt/dmdbms/data/DAMENG/dm.ini mount

搭建DM实时主备-数据准备_第17张图片
另开窗口

# /opt/dmdbms/bin
# ./disql

搭建DM实时主备-数据准备_第18张图片
备库相同操作
分别在主备库disql中输入一下sql

SQL> select file_LSN, cur_LSN from v$rlog;
SQL> select permanent_magic;

主库:
搭建DM实时主备-数据准备_第19张图片
备库:
搭建DM实时主备-数据准备_第20张图片
主备库的FILE_LSN和 CUR_LSN 值相同且永久魔数一致情况下可进行主备库的配置工作

你可能感兴趣的:(数据库)