DSC集羣的搭建

DMDSC(DM8)集羣的搭建

  1. DMDSC的簡介:DMDSC又稱爲達夢數據庫共享集羣,類似Oracle RAC。

  2. 搭建的環境準備
    2.1準備一臺物理機做共享磁盤

2.2準備中標麒麟7的鏡像文件(biao.iso)
安裝兩臺虛擬機DSC1,DSC2
每臺機子內外網IP只用一個,對於初搭者,只設置一個IP,不太會容易出錯
第一臺虛擬機名:DSC1 IP:192.168.1.95 hostname:DSC1
第二臺虛擬機名:DSC2 IP:192.168.1.96 hostmane:DSC2



2.3準備安裝虛擬機的軟件VMware

2.4準備DM8的Linux安裝包(dm8_setup_rh7.iso)(可以去達夢官網下載)

  1. 開始安裝WMware和中標麒麟虛擬機環境
    3.1安裝VMware,沒啥技術含量,選擇安裝路徑一鍵安裝就可以了。

3.2在WMware軟件中安裝中標麒麟7的虛擬機
第一步,打開WMware-----文件-----新建虛擬機
在這裏插入圖片描述

第二步,默認點擊下一步,直到要選擇安裝鏡像文件的路徑界面,選擇要安裝的鏡像文件
在這裏插入圖片描述

第三步,點擊下一步,直到要設置虛擬機的名字和安裝路徑
在這裏插入圖片描述

第四步,點擊下一步,設置下面的虛擬機的內存和硬盤空間的大小,根據你自己的需求,配置相對應的值,然後點擊下一步。

第五步,開啓虛擬機虛擬機,設置安裝GUI界面安裝
在這裏插入圖片描述

第六步,點擊開始安裝按鈕
在這裏插入圖片描述

第七步:設置root賬戶的用戶密碼
在這裏插入圖片描述
第八步:點擊reboot按鈕完成虛擬機的安裝
在這裏插入圖片描述
第九步:重啓之後就是設置一些許可證接受、時區之類的很簡單,沒啥技術含量



第十步:用root用戶登入虛擬機,改主機名,
改主機名在/etc/hostname, 直接將localhost.localdomain,修改成你所需要的主機名,我這邊舉例改成DSC1

第十一步:設置IP地址,可以直接在/etc/sysconfig/network-scripts/ ifcfg-ens33配置文件裏面修改
這裏面我只設置了一個IP
在這裏插入圖片描述

第十二步:關閉防火牆:可以用命令關閉,重啓時生效
以root用戶,右擊打開終端命令,
關閉防火牆命令:systemctl disable firewalld
查看防火牆狀態:systemctl status firewalld


第十三步:把數據庫的安裝包,拷貝到home路徑下,然後重啓機器可以安裝數據庫。

4.安裝DM8數據庫
TIP: 安裝數據庫和使用數據庫的時候一定要用dmdba用戶進行相關操作,直接用root用戶安裝數據庫和之後的一系列操作,有時候會出現不可修復的問題

4.1 創建安裝數據庫的用戶和組(千萬不要以root用戶安裝數據庫,有不可控的問題)
用root打開終端,執行創建用戶的命令
創建組:groupadd dinstall
創建用戶:useradd -g dinstall dmdba
創建密碼:passwd dmdba
設置密碼的時候會讓你輸入新的密碼, 我這邊設置的是:dameng123




4.2 創建安裝數據庫的路徑
用root打開終端,執行創建用戶的命令:mkdir – p /dm8
4.3 給dm8文件夾賦予dmdba的權限
用root打開終端,執行創建用戶的命令:chown dmdba:dinstall -R /dm8


4.4 dmdba設置環境變量
用root打開終端,執行切換用戶的命令:su – dmdba
以dmdba用戶配置環境變量:vi .bash_profile
配置內容如下:
在這裏插入圖片描述



4.5 配置最大文件打開數
用root打開終端,執行切換用戶的命令:vi /etc/security/limits.conf
添加兩行命令:dmdba soft nofile 4096
dmdba hard nofile 65536


4.6 掛載數據庫文件
用root打開終端,執行切換用戶的命令:cd /home
執行命令:mount -o loop /home/dm8_setup_rh7.iso /mnt
檢查掛載是否成功命令:cd /mnt
ll
執行成功後有兩個文件會顯示出來
在這裏插入圖片描述
TIPS:在做完以上的步驟安裝數據庫之前可以採用虛擬機克隆的模式,安裝另一個節點的虛擬機,可以省略上面的步驟,節約時間,步驟很簡單。
DSC1虛擬機關機,右擊管理-克隆-下一步-下一步-創建完整克隆-下一步(設置你克隆虛擬機名字DSC2和安裝路徑),完成克隆操作,操作結束之後,打開克隆的虛擬機DSC2,改一下它的主機名和IP以免和被克隆的機子DSC1發生衝突







4.7 切換成dmdba用戶來安裝數據庫
用root打開終端,執行切換用戶的命令:su – dmdba
cd /mnt
./DMInstall.bin
安裝數據庫圖形化界面會打開,選擇時區,點擊確定按鈕 在這裏插入圖片描述
點擊下一步,直到出現,需要選擇key路徑的界面,可以忽略不選擇,點擊下一步
在這裏插入圖片描述





選擇典型安裝,點擊下一步在這裏插入圖片描述

選擇你所需要安裝的路徑,點擊下一步,再點擊安裝就可以進行數據庫安裝了
在這裏插入圖片描述

安裝過程中會讓以root用戶執行腳本完成本次的數據庫安裝
用root打開終端,執行切換用戶的命令:/dm/script/root/root_installer.sh

  1. 開始搭建DSC集羣
    5.1 通過WMware創建共享磁盤
    切到你裝VMware的vmware-vdiskmanager.exe路徑下
    執行命令創建共享磁盤:
    vmware-vdiskmanager.exe -c -s 10G -a lsilogic -t 2 D:\sharedisk\sharedisk.vmdk
    解釋:-t 2的意思是預分配磁盤空間,可以用-t 0選項,這樣就不會佔用空間了,實際用多少就多少
    5.2 掛載共享磁盤(暫時現在DSC1上面進行掛載,DSC2具體何時掛載我下面會說,掛太早容易出現問題,我之前就因爲共享磁盤掛載,搭建這個服務卡很久)
    右擊虛擬機設置-添加-硬盤-點擊下一步
    在這裏插入圖片描述
    選擇使用現有虛擬硬盤,點擊下一步在這裏插入圖片描述
    選擇創建好的共享磁盤的路徑,點擊完成,完成掛載共享磁盤
    在這裏插入圖片描述










5.3 在共享磁盤上裸設備劃分(DSC1上執行)
輸入fdisk /dev/sdb
依次輸入 n  p  1 回車 +100M 回車,完成第一塊磁盤劃分
依次輸入 n  p  2 回車 +100M 回車,完成第二塊磁盤劃分
依次輸入 n  p  3 回車 +2048M 回車,完成第三塊磁盤劃分
依次輸入 n  p  4 回車回車回車,完成第四塊磁盤劃分
5.4 編輯/etc/udev/rules.d/60-raw.rules文件,增加以下語句:
兩個節點都要添加這個配置文件
ACTION==“add”, KERNEL==“sdb1”, RUN+="/bin/raw /dev/raw/raw1 %N"
ACTION==“add”, KERNEL==“sdb2”, RUN+="/bin/raw /dev/raw/raw2 %N"
ACTION==“add”, KERNEL==“sdb3”, RUN+="/bin/raw /dev/raw/raw3 %N"
ACTION==“add”, KERNEL==“sdb4”, RUN+="/bin/raw /dev/raw/raw4 %N"
ACTION==“add”, KERNEL==“raw[1-4]”, OWNER=“dmdba”, GROUP=“dinstall”, MODE="660
5.5 以root用戶查看裸設備是否綁定成功:ll /dev/raw/raw*
5.6 配置dmdcc_cfg.ini,只需要在一個節點上配置(TIPS:所有的操作都要用dmdba操作,不要以root用戶創建,不然後面執行一些東西,會因爲權限的問題出現亂起八糟的事情,經驗之談)
創建dmdcc_cfg.ini文件,文件路徑在:/dm8/data/dmdsc/
內容如下:
DCR_N_GRP = 3 #與實際配置的組數相同,
DCR_VTD_PATH = /dev/raw/raw2
DCR_OGUID = 63635
[GRP] #新建組
DCR_GRP_TYPE = CSS
DCR_GRP_NAME = GRP_CSS
DCR_GRP_N_EP = 2 #
DCR_GRP_DSKCHK_CNT = 60
[GRP_CSS]
DCR_EP_NAME = CSS0
DCR_EP_HOST = 192.168.1.95
DCR_EP_PORT = 9341
[GRP_CSS]
DCR_EP_NAME = CSS1
DCR_EP_HOST = 192.168.1.96
DCR_EP_PORT = 9343
[GRP] #新建組
DCR_GRP_TYPE = ASM
DCR_GRP_NAME = GRP_ASM
DCR_GRP_N_EP = 2
DCR_GRP_DSKCHK_CNT = 60
[GRP_ASM]
DCR_EP_NAME = ASM0 #與DMASM使用的dmmal.ini mal_inst_name相同
DCR_EP_SHM_KEY = 93360
DCR_EP_SHM_SIZE = 10
DCR_EP_HOST = 192.168.1.95
DCR_EP_PORT = 9349
DCR_EP_ASM_LOAD_PATH = /dev/raw
[GRP_ASM]
DCR_EP_NAME = ASM1 #與DMASM使用的dmmal.ini mal_inst_name相同
DCR_EP_SHM_KEY = 93361
DCR_EP_SHM_SIZE = 10
DCR_EP_HOST = 192.168.1.96
DCR_EP_PORT = 9351
DCR_EP_ASM_LOAD_PATH = /dev/raw
[GRP] #新建組
DCR_GRP_TYPE = DB
DCR_GRP_NAME = GRP_DSC
DCR_GRP_N_EP = 2
DCR_GRP_DSKCHK_CNT = 60
[GRP_DSC]
DCR_EP_NAME = DMSERVER0 #與數據庫實例使用 dmmal.ini 配置文件裏的MAL_INST_NAME、以及 dm.ini 配置文件裏的 INSTANCE_NAME 保持一致
DCR_EP_SEQNO = 0
DCR_EP_PORT = 5236
DCR_CHECK_PORT = 9741
[GRP_DSC]
DCR_EP_NAME = DMSERVER1 #與數據庫實例使用 dmmal.ini 配置文件裏的MAL_INST_NAME、以及 dm.ini 配置文件裏的 INSTANCE_NAME 保持一致
DCR_EP_SEQNO = 1
DCR_EP_PORT = 5236
DCR_CHECK_PORT = 9742

































































5.7 初始化共享磁盤
使用DMASMCMD工具初始化共享磁盤:
(只需在配置好dmdcr_cfg.ini的1個節點上執行即可,切記只要在一個節點上執行不然會出問題,都認爲自己爲控制節點)
用root打開終端,執行切換用戶的命令:su – dmdba
cd /dm8/bin
./dmasmcmd
create dcrdisk ‘/dev/raw/raw1’ ‘DCR’
create votedisk ‘/dev/raw/raw2’ ‘VOTE’
create asmdisk ‘/dev/raw/raw3’ ‘LOG01’
create asmdisk ‘/dev/raw/raw4’ ‘DATA01’
init dcrdisk ‘/dev/raw/raw1’ from '/dm8/data/dmdsc/dmdcr_cfg.ini’identified by ‘abcd’
init votedisk ‘/dev/raw/raw2’ from ‘/dm8/data/dmdsc/dmdcr_cfg.ini’










5.8 配置dmasvrmal.ini(兩個節點上都要配置)
dmasvrmal.ini文件爲DMASM的MAL配置文件,使用DMASM的兩個節點配置的內容要完全一樣。文件路徑:/dm8/data/dmdsc/
[MAL_INST1]
MAL_INST_NAME = ASM0
MAL_HOST = 192.168.1.95
MAL_PORT = 7236
[MAL_INST2]
MAL_INST_NAME = ASM1
MAL_HOST = 192.168.1.96
MAL_PORT = 7237








5.9 配置dmdcr.ini(兩個節點都要配置),文件路徑:/dm8/data/dmdsc/
兩個節點的dmdcr_seqo分別爲0和1
節點一DSC1:
DMDCR_PATH = /dev/raw/raw1
DMDCR_MAL_PATH =/dm8/data/dmdsc/dmasvrmal.ini #dmasmsvr使用的MAL配置文件路徑
DMDCR_SEQNO = 0
#ASM重啓參數,命令行方式啓動
DMDCR_ASM_RESTART_INTERVAL = 0
DMDCR_ASM_STARTUP_CMD = /dm8/bin/dmasmsvr dcr_ini=/dm8/data/dmdsc/dmdcr.ini
#DB重啓參數,命令行方式啓動
DMDCR_DB_RESTART_INTERVAL = 0
DMDCR_DB_STARTUP_CMD = /dm8/bin/dmserver path=/dm8/data/dsc0_config/dm.ini dcr_ini=/dm8/data/dmdsc/dmdcr.ini










節點二DSC2:
DMDCR_PATH = /dev/raw/raw1
DMDCR_MAL_PATH =/dm8/data/dmdsc/dmasvrmal.ini #dmasmsvr使用的MAL配置文件路徑
DMDCR_SEQNO = 1
#ASM重啓參數,命令行方式啓動
DMDCR_ASM_RESTART_INTERVAL = 0
DMDCR_ASM_STARTUP_CMD = /dm8/bin/dmasmsvr dcr_ini=/dm8/data/dmdsc/dmdcr.ini
#DB重啓參數,命令行方式啓動
DMDCR_DB_RESTART_INTERVAL = 0
DMDCR_DB_STARTUP_CMD = /dm8/bin/dmserver path=/dm8/data/dsc1_config/dm.ini dcr_ini=/dm8/data/dmdsc/dmdcr.ini








5.10 掛載節點二DSC2的共享磁盤,步驟見5.2

5.11 啓動DMCSS、DMASM服務程序
在節點1和2先後分別啓動dmcss、dmasmsvr程序
切換成dmdba用戶到/dm8/bin路徑下,啓動dmcss命令:
./dmcss DCR_INI=/dm8/data/dmdsc/dmdcr.ini
切換成dmdba用戶到/dm8/bin路徑下, 啓動dmasmsvr命令:
./dmasmsvr DCR_INI=/dm8/data/dmdsc/dmdcr.ini
執行成功後,主節點,dmcss啓動後會打印信息:
也可以次節點上dmcss窗口打印show命令,來看執行結果在這裏插入圖片描述






5.12 創建DMASM共享磁盤組
選擇一個節點創建共享磁盤組,我是主節點啓動dmasmtool,創建共享磁盤
[dmdba@DSC1 ~]$ cd /dm8/bin
[dmdba@DSC1 bin]$ ./dmasmtool DCR_INI=/dm8/data/dmdsc/dmdcr.ini
DMASMTOOL V8
ASM>create diskgroup ‘DMLOG’ asmdisk ‘/dev/raw/raw3’
Used time: 29.449(ms).
ASM>create diskgroup ‘DMDATA’ asmdisk ‘/dev/raw/raw4’
Used time: 16.125(ms)







5.13 初始化數據庫實例
A. 配置dminit.ini,文件路徑/dm8/data/dmdsc,配置文件內容
可以在任意節點配置該內容,並使用dminit初始化數據庫
db_name = dsc
system_path = +DMDATA/data
system = +DMDATA/data/dsc/system.dbf
system_size = 128
roll = +DMDATA/data/dsc/roll.dbf
roll_size = 128
main = +DMDATA/data/dsc/main.dbf
main_size = 128
ctl_path = +DMDATA/data/dsc/dm.ctl
ctl_size = 8
log_size = 128 #注意磁盤空間大小128*4
dcr_path = /dev/raw/raw1 #dcr磁盤路徑,目前不支持 asm,只能是裸設備
dcr_seqno = 0
auto_overwrite = 1
[RAC0] #inst_name跟 dmdcr_cfg.ini 中DB類型group中DCR_EP_NAME對應
config_path = /dm8/data/dsc0_config
port_num = 5236
mal_host = 192.168.1.95
mal_port = 9340
log_path = +DMLOG/log/RAC0_log01.log
log_path = +DMLOG/log/RAC0_log02.log
[RAC1] #inst_name 跟 dmdcr_cfg.ini 中 DB 類型 group 中 DCR_EP_NAME 對應
config_path = /dm8/data/dsc1_config
port_num = 5236
mal_host = 192.168.1.96
mal_port = 9341
log_path = +DMLOG/log/RAC1_log01.log
log_path = +DMLOG/log/RAC1_log02.log





























B. 使用dminit初始化實例,初始化成功後會在/dm8/data/dsc0_config和/dm8/data/dsc1_config生成配置文件dm.ini和dmmal.ini。然後拷貝/dm8/data//dsc1_config 到節點2上/dm8/data
[dmdba@DSC1 bin]$ ./dminit control=/dm8/data/dmdsc/dminit.ini
initdb V8
db version: 0x7000a
file dm.key not found, use default license!
License will expire on 2021-06-24
log file path: +DMLOG/log/RAC0_log01.log
log file path: +DMLOG/log/RAC0_log02.log
log file path: +DMLOG/log/RAC1_log01.log
log file path: +DMLOG/log/RAC1_log02.log
write to dir [+DMDATA/data/dsc].
create dm database success. 2020-12-17 14:29:14










5.14 啓動數據庫服務,在dm8/bin路徑下執行
./dmserver path=/dm8/data/dsc0_config/dm.ini dcr_ini=/dm8/data/dmdsc/dmdcr.ini
./dmserver path=/dm8/data/dsc1_config/dm.ini dcr_ini=/dm8/data/dmdsc/dmdcr.ini
在這裏插入圖片描述


5.15 配置服務器自啓動
A. 修改ASM和數據庫實例隨dmcss啓動,兩個節點的dmdcr.ini的配置文件修改兩個參數(DMDCR_ASM_RESTART_INTERVAL、DMDCR_DB_RESTART_INTERVAL)值爲60

B. 將數據庫註冊成服務(root 用戶執行命令),兩個節點都要執行
/dm8/script/root/dm_service_installer.sh -t dmcss -dcr_ini /dm8/data/dmdsc/dmdcr.ini -p RAC0
/dm8/script/root/dm_service_installer.sh -t dmcss -dcr_ini /dm8/data/dmdsc/dmdcr.ini -p RAC1
在這裏插入圖片描述


5.16 配置監聽服務器
監聽器配置文件dmcssm.ini,配置文件路徑:/dm8/monitor,可以在任意節點上配置或者第三臺機子都可以,我是配置在次節點上的,配置文件內容
#和 dmdcr_cfg.ini 中的 DCR_OGUID 保持一致
CSSM_OGUID = 63635
#配置所有 CSS 的連接信息,
#和 dmdcr_cfg.ini 中 CSS 配置項的 DCR_EP_HOST 和 DCR_EP_PORT 保持一致
CSSM_CSS_IP = 192.168.1.95:9341
CSSM_CSS_IP = 192.168.1.96:9343
CSSM_LOG_PATH =/dm8/monitor/log #監視器日誌文件存放路徑
CSSM_LOG_FILE_SIZE = 32 #每個日誌文件最大 32M
CSSM_LOG_SPACE_LIMIT = 0 #不限定日誌文件總佔用空間
啓動dmcssm監視器命令,也是在dm8/bin路徑下dmdba用戶啓動:
./dmcssm ini_path=/dm8/monitor/dmcssm.ini











5.17 配置dm_svc.conf,在dmdba用戶下編輯etc/dm_svc.conf
TIME_ZONE=(480)
LANGUAGE=(cn)
rac=(192.168.1.95:5236,192.168.1.96:5236)
SWITCH_TIME=(10000)
SWITCH_INTERVAL=(1000)




連接數據庫服務:./disql sysdba/SYSDBA@rac
select * from v$instance;

控制節點結果顯示如下:
在這裏插入圖片描述
普通節點執行結果顯示如下:
在這裏插入圖片描述


至此DSC集羣環境就搭建成功了!!!
最後一些注意:虛擬機有快照功能,掛載共享磁盤之後不要輕易快照,會有問題。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章