達(dá)夢 8 主從(DG)
概述
本手冊描述了在LINUX(RHEL 7)操作系統(tǒng)下安裝達(dá)夢 8 數(shù)據(jù)庫軟件的操作過程。如無明確文字說明,均使用操作系統(tǒng)root用戶執(zhí)行命令。
文檔目的
本手冊為在LINUX操作系統(tǒng)環(huán)境下安裝達(dá)夢 8 數(shù)據(jù)庫提供指導(dǎo)和參考,本文大致會提到達(dá)夢 8 主從版 。
適用范圍
本手冊適用于在RedHat 7環(huán)境下安裝并創(chuàng)建達(dá)夢 8 數(shù)據(jù)庫。
使用對象
本手冊的使用對象為安裝達(dá)夢數(shù)據(jù)庫的開發(fā)、測試、運維及相關(guān)人員。
安裝環(huán)境
版本說明
操作系統(tǒng)版本 |
RedHat 7.6 |
數(shù)據(jù)庫版本 |
達(dá)夢 8 |
注:實際安裝當(dāng)中,RedHat系統(tǒng)以大版本7為準(zhǔn)
安裝介質(zhì)
安裝介質(zhì) |
類型 |
說明 |
dm8_setup_rh7_64_ent_8.1.1.48_20191129 |
數(shù)據(jù)庫 |
盡量選擇穩(wěn)定版本 |
服務(wù)IP |
角色 |
備注 |
10.100.21.81 |
Master |
主 |
10.100.21.82 |
Slave |
從 |
10.100.21.93 |
monitor |
監(jiān)控 |
達(dá)夢主從原理
達(dá)夢主備集群顧名思義就是一主一備(也可以一主多備)是一種集成化的高可靠性解決方案,同時滿足用戶對數(shù)據(jù)安全性和高可用性的要求。解決由于硬件故障、自然災(zāi)害等原因?qū)е碌臄?shù)據(jù)庫服務(wù)長時間中斷問題,滿足用戶不間斷提供數(shù)據(jù)庫服務(wù)的要求,即實現(xiàn)系統(tǒng)的雙機熱備功能。在使用的過程中,如果是實時同步模式的話,主機和備機的數(shù)據(jù)保持完全一致。主機產(chǎn)生一條新的記錄時,在記錄寫入數(shù)據(jù)庫文件之前,會把新產(chǎn)生的redo日志文件發(fā)送到備機,由備機重新執(zhí)行接收到的redo日志,來保證主備集群數(shù)據(jù)的一致性。 如果主機發(fā)生故障,則備機會自動切換為主機,代替原主機的職能。以此保證服務(wù)的連續(xù)性。在原主機故障恢復(fù)之后,重新加入集群之后,則變?yōu)閭錂C,由新主機繼續(xù)執(zhí)行相關(guān)的任務(wù),并同步數(shù)據(jù)到備機。

達(dá)夢安裝
su - dmdba
./DMInstall.bin -i
Please select the installer's language (E/e:English C/c:Chinese) [E/e]:C
解壓安裝程序........
是否輸入Key文件路徑? (Y/y:是 N/n:否) [Y/y]:n
是否設(shè)置時區(qū)? (Y/y:是 N/n:否) [Y/y]:y
請選擇設(shè)置時區(qū) [21]:
安裝類型:
1 典型安裝
2 服務(wù)器
3 客戶端
4 自定義
請選擇安裝類型的數(shù)字序號 [1 典型安裝]:
請選擇安裝目錄 [/opt/dmdbms]:/dm/dmdbms/dm8
目錄(/dm/dmdbms/dm8)下不為空,請選擇其他目錄。
請選擇安裝目錄 [/opt/dmdbms]:/dm/dmdbms/dm8
可用空間: 44G
是否確認(rèn)安裝路徑(/dm/dmdbms/dm8)? (Y/y:是 N/n:否) [Y/y]:y
安裝前小結(jié)
安裝位置: /dm/dmdbms/dm8
所需空間: 1012M
可用空間: 44G
版本信息:
有效日期:
安裝類型: 典型安裝
是否確認(rèn)安裝? (Y/y:是 N/n:否):y
root:
/dm/dmdbms/dm8/script/root/root_installer.sh
chown -R dmdba:dinstall /dm
01.創(chuàng)建主庫實例
10.100.21.81:
dminit path=/dm/dmdata db_name=hisdb instance_name=hisdb1 port_num=15236 LOG_SIZE=256 SYSDBA_PWD=dameng123 EXTENT_SIZE=16 PAGE_SIZE=16 charset=1
后臺啟動數(shù)據(jù)庫
nohup dmserver /dm/dmdata/hisdb/dm.ini &
開啟歸檔
ALTER DATABASE MOUNT;
ALTER DATABASE ADD ARCHIVELOG 'DEST=/dm/dmarch/hisdb,TYPE = local,FILE_SIZE =256,SPACE_LIMIT = 0';
ALTER DATABASE ARCHIVELOG;
ALTER DATABASE OPEN;
select arch_mode from v$database;
select * from v$dm_arch_ini;
02.備份主數(shù)據(jù)庫
備份: checkpoint(100); -- 切檢查點
cd /dm/dmdbms/dm8/bin
./dmrman
backup database '/dm/dmdata/hisdb/dm.ini' full to hisdb_full01 backupset '/dm/dmback/hisdb_full01'
scp -r /dm/dmback/hisdb_full01 10.100.21.82:/dm/dmback/
03.備庫初始化及還原主庫數(shù)據(jù)
10.100.21.82:
su - dmdba
cd /dm/dmdbms/dm8/bin
./dminit path=/dm/dmdata db_name=hisdb instance_name=hisdb2 port_num=25236 LOG_SIZE=256 SYSDBA_PWD=dameng123 EXTENT_SIZE=16 PAGE_SIZE=16 charset=1
./dmrman
restore database '/dm/dmdata/hisdb/dm.ini' from backupset '/dm/dmback/hisdb_full01'
recover database '/dm/dmdata/hisdb/dm.ini' from backupset '/dm/dmback/hisdb_full01'
recover database '/dm/dmdata/hisdb/dm.ini' update db_magic
04.修改主庫的配置文件
su - dmdba
cd /dm/dmdata/hisdb
第一個配置文件
vi dm.ini
INSTANCE_NAME = hisdb1 #主庫實例
PORT_NUM = 15236 #數(shù)據(jù)庫實例監(jiān)聽端口
DW_PORT = 15237 #守護(hù)環(huán)境下,監(jiān)聽守護(hù)進(jìn)程連接端口,為上面規(guī)劃表中的 MAL_INST_DW_PORT 值
DW_ERROR_TIME = 60 #接收守護(hù)進(jìn)程消息超時時間
ALTER_MODE_STATUS = 0 #不允許手工方式修改實例模式/狀態(tài)
ENABLE_OFFLINE_TS = 2 #不允許備庫 OFFLINE 表空間
MAL_INI = 1 #打開 MAL 系統(tǒng)
ARCH_INI = 1 #打開歸檔配置
HA_INST_CHECK_FLAG = 1 #檢測是否多個實例進(jìn)程同時啟動
RLOG_SEND_APPLY_MON = 64 #統(tǒng)計最近 64 次的日志發(fā)送信息
第二個配置文件(新文件)
vi dmmal.ini
MAL_CHECK_INTERVAL = 5 #MAL 鏈路檢測時間間隔
MAL_CONN_FAIL_INTERVAL = 5 #判定 MAL 鏈路斷開的時間
[MAL_INST1]
MAL_INST_NAME = hisdb1 # 實 例 名 , 和 dm.ini 中 的 INSTANCE_NAME 一致
MAL_HOST = 10.100.21.81 #MAL 系統(tǒng)監(jiān)聽 TCP 連接的 IP 地址
MAL_PORT = 15239 #MAL 系統(tǒng)監(jiān)聽 TCP 連接的端口
MAL_INST_HOST = 10.100.21.81 #實例的對外服務(wù) IP 地址
MAL_INST_PORT = 15236 #實例的對外服務(wù)端口,和 dm.ini 中的 PORT_NUM 一致
MAL_INST_DW_PORT = 15237 #實例監(jiān)聽守護(hù)進(jìn)程 TCP 連接的端口
MAL_DW_PORT = 15238 #實例對應(yīng)的守護(hù)進(jìn)程監(jiān)聽 TCP 連接的端口
[MAL_INST2]
MAL_INST_NAME = hisdb2 # 實 例 名 , 和 dm.ini 中 的 INSTANCE_NAME 一致
MAL_HOST = 10.100.21.82 #MAL 系統(tǒng)監(jiān)聽 TCP 連接的 IP 地址
MAL_PORT = 25239 #MAL 系統(tǒng)監(jiān)聽 TCP 連接的端口
MAL_INST_HOST = 10.100.21.82 #實例的對外服務(wù) IP 地址
MAL_INST_PORT = 25236 #實例的對外服務(wù)端口,和 dm.ini 中的PORT_NUM 一致
MAL_INST_DW_PORT = 25237 #實例監(jiān)聽守護(hù)進(jìn)程 TCP 連接的端口
MAL_DW_PORT = 25238 #實例對應(yīng)的守護(hù)進(jìn)程監(jiān)聽 TCP 連接的端口
第三個配置文件
vi dmarch.ini
[ARCHIVE_REALTIME]
ARCH_TYPE = REALTIME #實時歸檔類型
ARCH_DEST = hisdb2 #實時歸檔目標(biāo)實例名
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL #本地歸檔類型
ARCH_DEST = /dm/dmarch/hisdb #本地歸檔文件存放路徑
ARCH_FILE_SIZE = 256 #單位 Mb,本地單個歸檔文件最大值
ARCH_SPACE_LIMIT = 0 # 單 位 Mb , 0 表 示 無 限 制 , 范 圍 1024~4294967294M
第四個配置文件(新文件)
vi dmwatcher.ini
[GRP1]
DW_TYPE = GLOBAL #全局守護(hù)類型
DW_MODE = AUTO #自動切換模式,手工 MANUAL
DW_ERROR_TIME = 10 #遠(yuǎn)程守護(hù)進(jìn)程故障認(rèn)定時間
INST_RECOVER_TIME = 60 #主庫守護(hù)進(jìn)程啟動恢復(fù)的間隔時間
INST_ERROR_TIME = 10 #本地實例故障認(rèn)定時間
INST_OGUID = 453331 #守護(hù)系統(tǒng)唯一 OGUID 值
INST_INI = /dm/dmdata/hisdb/dm.ini #dm.ini 配置文件路徑
INST_AUTO_RESTART = 1 #打開實例的自動啟動功能
INST_STARTUP_CMD = /dm/dmdbms/dm8/bin/dmserver #命令行方式啟動
RLOG_SEND_THRESHOLD = 0 #指定主庫發(fā)送日志到備庫的時間閥值,默認(rèn)關(guān)閉
RLOG_APPLY_THRESHOLD = 0 #指定備庫重演日志的時間閥值,默認(rèn)關(guān)閉
05.修改備庫的配置文件
10.100.21.82:
su - dmdba
cd /dm/dmdata/hisdb
第一個配置文件
vi dm.ini
INSTANCE_NAME = hisdb2 #主庫實例
PORT_NUM = 25236 #數(shù)據(jù)庫實例監(jiān)聽端口
DW_PORT = 25237 #守護(hù)環(huán)境下,監(jiān)聽守護(hù)進(jìn)程連接端口,為上面規(guī)劃表中的 MAL_INST_DW_PORT 值
DW_ERROR_TIME = 60 #接收守護(hù)進(jìn)程消息超時時間
ALTER_MODE_STATUS = 0 #不允許手工方式修改實例模式/狀態(tài)
ENABLE_OFFLINE_TS = 2 #不允許備庫 OFFLINE 表空間
MAL_INI = 1 #打開 MAL 系統(tǒng)
ARCH_INI = 1 #打開歸檔配置
HA_INST_CHECK_FLAG = 1 #檢測是否多個實例進(jìn)程同時啟動
RLOG_SEND_APPLY_MON = 64 #統(tǒng)計最近 64 次的日志發(fā)送信息
第二個配置文件(新文件)
vi dmmal.ini
MAL_CHECK_INTERVAL = 5 #MAL 鏈路檢測時間間隔
MAL_CONN_FAIL_INTERVAL = 5 #判定 MAL 鏈路斷開的時間
[MAL_INST1]
MAL_INST_NAME = hisdb1 # 實 例 名 , 和 dm.ini 中 的 INSTANCE_NAME 一致
MAL_HOST = 10.100.21.81 #MAL 系統(tǒng)監(jiān)聽 TCP 連接的 IP 地址
MAL_PORT = 15239 #MAL 系統(tǒng)監(jiān)聽 TCP 連接的端口
MAL_INST_HOST = 10.100.21.81 #實例的對外服務(wù) IP 地址
MAL_INST_PORT = 15236 #實例的對外服務(wù)端口,和 dm.ini 中的 PORT_NUM 一致
MAL_INST_DW_PORT = 15237 #實例監(jiān)聽守護(hù)進(jìn)程 TCP 連接的端口
MAL_DW_PORT = 15238 #實例對應(yīng)的守護(hù)進(jìn)程監(jiān)聽 TCP 連接的端口
[MAL_INST2]
MAL_INST_NAME = hisdb2 # 實 例 名 , 和 dm.ini 中 的 INSTANCE_NAME 一致
MAL_HOST = 10.100.21.82 #MAL 系統(tǒng)監(jiān)聽 TCP 連接的 IP 地址
MAL_PORT = 25239 #MAL 系統(tǒng)監(jiān)聽 TCP 連接的端口
MAL_INST_HOST = 10.100.21.82 #實例的對外服務(wù) IP 地址
MAL_INST_PORT = 25236 #實例的對外服務(wù)端口,和 dm.ini 中的 PORT_NUM 一致
MAL_INST_DW_PORT = 25237 #實例監(jiān)聽守護(hù)進(jìn)程 TCP 連接的端口
MAL_DW_PORT = 25238 #實例對應(yīng)的守護(hù)進(jìn)程監(jiān)聽 TCP 連接的端口
第三個配置文件
vi dmarch.ini
[ARCHIVE_REALTIME]
ARCH_TYPE = REALTIME #實時歸檔類型
ARCH_DEST = hisdb1 #實時歸檔目標(biāo)實例名
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL #本地歸檔類型
ARCH_DEST = /dm/dmarch/hisdb #本地歸檔文件存放路徑
ARCH_FILE_SIZE = 256 #單位 Mb,本地單個歸檔文件最大值
ARCH_SPACE_LIMIT = 0 # 單 位 Mb , 0 表 示 無 限 制 , 范 圍 1024~4294967294M
第四個配置文件(新文件)
vi dmwatcher.ini
[GRP1]
DW_TYPE = GLOBAL #全局守護(hù)類型
DW_MODE = AUTO #自動切換模式,MANUAL 手工切換模式。
DW_ERROR_TIME = 10 #遠(yuǎn)程守護(hù)進(jìn)程故障認(rèn)定時間
INST_RECOVER_TIME = 60 #主庫守護(hù)進(jìn)程啟動恢復(fù)的間隔時間
INST_ERROR_TIME = 10 #本地實例故障認(rèn)定時間
INST_OGUID = 453331 #守護(hù)系統(tǒng)唯一 OGUID 值
INST_INI = /dm/dmdata/hisdb/dm.ini #dm.ini 配置文件路徑
INST_AUTO_RESTART = 1 #打開實例的自動啟動功能
INST_STARTUP_CMD = /dm/dmdbms/dm8/bin/dmserver #命令行方式啟動
RLOG_SEND_THRESHOLD = 0 #指定主庫發(fā)送日志到備庫的時間閥值,默認(rèn)關(guān)閉
RLOG_APPLY_THRESHOLD = 0 #指定備庫重演日志的時間閥值,默認(rèn)關(guān)閉
05.主庫注冊服務(wù),配置OGUID
10.100.21.81:
root:
cd /dm/dmdbms/dm8/script/root/
./dm_service_installer.sh -t dmserver -dm_ini /dm/dmdata/hisdb/dm.ini -p hisdb
./dm_service_installer.sh -t dmwatcher -watcher_ini /dm/dmdata/hisdb/dmwatcher.ini -p hisdb
su - dmdba
cd /dm/dmdbms/dm8/bin
./dmserver /dm/dmdata/hisdb/dm.ini mount
disql SYSDBA/dameng123@10.100.21.81:15236
select status$ from v$database;
SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 1);
sp_set_oguid(453331);
alter database primary;
SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 0);
exit;
DmServicehisdb start
DmWatcherServicehisdb start
06.備庫注冊服務(wù),配置OGUID
root:
cd /dm/dmdbms/dm8/script/root/
./dm_service_installer.sh -t dmserver -dm_ini /dm/dmdata/hisdb/dm.ini -p hisdb
./dm_service_installer.sh -t dmwatcher -watcher_ini /dm/dmdata/hisdb/dmwatcher.ini -p hisdb
su - dmdba
cd /dm/dmdbms/dm8/bin
./dmserver /dm/dmdata/hisdb/dm.ini mount
disql SYSDBA/dameng123@10.100.21.82:25236
select status$ from v$database;
SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 1);
sp_set_oguid(453331);
alter database standby;
SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 0);
DmServicehisdb start
DmWatcherServicehisdb start
07.安裝監(jiān)視器
10.100.21.93:
su - dmdba
mkdir /dm/dmdbms/dm8/data
vi /dm/dmdbms/dm8/data/dmmonitor.ini
MON_DW_CONFIRM = 1 #確認(rèn)監(jiān)視器模式
MON_LOG_PATH = /dm/dmdbms/dm8/log #監(jiān)視器日志文件存放路徑
MON_LOG_INTERVAL = 60 #每隔 60s 定時記錄系統(tǒng)信息到日志文件
MON_LOG_FILE_SIZE = 32 #每個日志文件最大 32M
MON_LOG_SPACE_LIMIT = 0 #不限定日志文件總占用空間
[GRP1]
MON_INST_OGUID = 453331 #組 GRP1 的唯一 OGUID 值
MON_DW_IP = 10.100.21.81:15238
MON_DW_IP = 10.100.21.82:25238
#配置為監(jiān)視器到組 GRP1 的守護(hù)進(jìn)程的連接信息,以“IP:PORT”的形式配置
#IP 對應(yīng) dmmal.ini 中的 MAL_HOST, PORT 對應(yīng) dmmal.ini 中的 MAL_DW_PORT
注冊服務(wù):
su - root
cd /dm/dmdbms/dm8/script/root
./dm_service_installer.sh -t dmmonitor -monitor_ini /dm/dmdbms/dm8/data/dmmonitor.ini -p hisdb
啟動監(jiān)視器:
su - dmdba
DmMonitorServicehisdb start
DmMonitorServicehisdb stop
或者(前臺展示)
/dm/dmdbms/dm8/bin/dmmonitor /dm/dmdbms/dm8/data/dmmonitor.ini
本文僅代表作者觀點,版權(quán)歸原創(chuàng)者所有,如需轉(zhuǎn)載請在文中注明來源及作者名字。
免責(zé)聲明:本文系轉(zhuǎn)載編輯文章,僅作分享之用。如分享內(nèi)容、圖片侵犯到您的版權(quán)或非授權(quán)發(fā)布,請及時與我們聯(lián)系進(jìn)行審核處理或刪除,您可以發(fā)送材料至郵箱:service@tojoy.com





