達夢數據庫(dm8) Centos7 高可用集群

國產數據庫-達夢

  • 一、環境詳情
  • 二、Centos7 參數優化(所有節點)
  • 三、創建用戶(所有節點)
  • 四、開始安裝(所有節點)
  • 五、服務注冊啟動

當前安裝:在指定版本環境下 測試,僅供參考

  • 官網描述:
    達夢數據守護集群軟件(DM Data Watch)是一種集成化的高可靠性解決方案,該方案基于數據庫REDO日志,不依賴于第三方軟件和存儲,用于解決由于硬件故障、自然災害等原因導致的數據庫服務長時間中斷問題,提供不間斷數據庫服務,可同時滿足用戶對數據安全性和高可用性的要求。數據守護包含的主要部件有:主數據庫、備數據庫、聯機REDO日志系統、本地REDO日志歸檔服務、實時REDO日志歸檔服務、REDO日志重做服務、MAL系統、守護進程和監視器。其中,守護進程和監視器是兩個獨立的工具,其他部件集成在DM8數據庫服務器DMSERVER中。
  • 實時監控:
    達夢數據守護能夠提供主備機切換、備機接管、應用自動重連、自動同步歷史數據功能,通過監控工具DMWMON,可實時監控主、備數據庫的狀態和數據同步情況。

一、環境詳情

  1. 軟件版本

    軟件版本下載地址
    Centos 7CentOS Linux release 7.9.2009 (Core) x86清華鏡像站: link
    達夢數據庫dm8_20230418_x86_rh6_64.zip官網: link
  2. 節點分配
    如有需要還可以多配置一個副監視器(node4),部署方式和node3一致

    節點IP角色數據庫名實例名portmal inst_dw_portmal dw_port
    node1192.168.162.221主機DM01DMSERVER0152364510165101
    node2192.168.162.222備機DM01DMSERVER0252364510165101
    node3192.168.162.223主監視器

二、Centos7 參數優化(所有節點)

  1. 關閉防火墻
    可以設置防火墻開放 5236 端口,或者直接關閉防火墻,這里選擇直接關閉。
  • 關閉防火墻: systemctl stop firewalld
  • 禁止開機自啟: systemctl disable firewalld
  1. 修改系統最大進程數和最大文件打開數

    vim /etc/security/limits.conf修改以下內容:
    * soft nofile 65536
    * hard nofile 131072
    * soft nproc 2048
    * hard nproc 4096
    
  2. 修改進程數據限制

    vim /etc/security/limits.d/90-nproc.conf
    修改以下內容:
    * soft nproc 1024
    * soft nproc 2048
    

    查看優化信息

    ulimit -a
    

三、創建用戶(所有節點)

  1. 登錄 root 創建 mss 用戶

    groupadd mss
    useradd -m -d /home/mss mss -g mss 
    passwd mss123456
    
  2. 創建目錄
    登錄 mss 用戶

    # 創建安裝目錄
    mkdir /home/mss/dm8
    # 創建鏡像目錄
    mkdir /home/mss/dm8/iso
    

四、開始安裝(所有節點)

  1. 上傳鏡像
    上傳鏡像文件(dm8_20230418_x86_rh6_64.iso)到 /home/mss/dm8 下

  2. 掛載鏡像
    切換 root 用戶

    mount /home/mss/dm8/dm8_20230418_x86_rh6_64.iso /home/mss/dm8/iso/
    # 查看是否掛載
    df -h
    

    授權 mss 用戶目錄權限

    chown -R mss:mss /home/mss
    
  3. 創建其它文件夾
    切換 mss 用戶

    cd /home/mss/dm8
    mkdir install
    
  4. 執行安裝

    cd /home/mss/dm8/iso
    ./DMInstall.bin -i
    

    在這里插入圖片描述
    選擇典型安裝-1,安裝路徑 /home/mss/dm8/install
    安裝完成提示:
    在這里插入圖片描述

    數據庫安裝完成后,需要切換至 root 用戶執行上圖中的命令 root_installer.sh 創建 DmAPService,否則會影響數據庫備份。

    su root
    cd  /home/mss/dm8/install/script/root
    ./root_installer.sh
    
  5. 創建實例

    切換 mss 用戶
    注: 關于這些參數說明可進入安裝目錄的bin下,執行./dminit help
    case_sensitive :字符串比較大小寫敏感,默認開啟1(區分大小寫),設置為 0 則不區分大小寫

    在 node1 創建實例一:

    cd /home/mss/dm8/install/bin
    ./dminit path=/home/mss/dm8/data DB_NAME=DM01 INSTANCE_NAME=DBSERVER01 CASE_SENSITIVE=0  PORT_NUM=5236 SYSDBA_PWD=casic123456 SYSAUDITOR_PWD=casic123456 PAGE_SIZE=32 EXTENT_SIZE=32  CHARSET=1  LOG_SIZE=500
    

    在 node2 創建實例二:

    cd /home/mss/dm8/install/bin
    ./dminit path=/home/mss/dm8/data DB_NAME=DM01 INSTANCE_NAME=DBSERVER02 CASE_SENSITIVE=0  PORT_NUM=5236 SYSDBA_PWD=casic123456 SYSAUDITOR_PWD=casic123456 PAGE_SIZE=32 EXTENT_SIZE=32  CHARSET=1  LOG_SIZE=500
    

    在 node3 創建監視器:

    cd /home/mss/dm8/install/bin
    ./dminit path=/home/mss/dm8/data DB_NAME=DM01
    
  6. 配置實例參數
    切換 mss 用戶

    配置 node1 實例一:------------------------------------------------------------------

    cd /home/mss/dm8/data/DM01
    

    (1)配置dm.ini

    INSTANCE_NAME =DBSERVER01
    PORT_NUM = 5236
    DW_INACTIVE_INTERVAL = 60
    #不允許手工方式修改實例模式/狀態/OGUID
    ALTER_MODE_STATUS = 0
    #不允許備庫 OFFLINE 表空間
    ENABLE_OFFLINE_TS = 2
    #打開 MAL 系統
    MAL_INI = 1
    #打開歸檔配置
    ARCH_INI = 1
    #統計最近 64 次的日志重演信息
    RLOG_SEND_APPLY_MON = 64
    

    (2)新建dmmal.ini

    #配置上端口規劃中規劃的各端口參數:
    #PORT_NUM、MAL_INST_DW_PORT、MAL_DW_PORT
    #[MAL_INST1]中填寫主機的、
    #[MAL_INST2]中填寫備機的MAL_CHECK_INTERVAL = 5
    MAL_CONN_FAIL_INTERVAL = 5[MAL_INST1]
    MAL_INST_NAME = DBSERVER01
    MAL_HOST = 192.168.162.221
    MAL_PORT = 55101
    MAL_INST_HOST = 192.168.162.221
    MAL_INST_PORT = 5236
    MAL_DW_PORT = 65101
    MAL_INST_DW_PORT = 45101[MAL_INST2]
    MAL_INST_NAME = DBSERVER02
    MAL_HOST = 192.168.162.222
    MAL_PORT = 55101
    MAL_INST_HOST = 192.168.162.222
    MAL_INST_PORT = 5236
    MAL_DW_PORT = 65101
    MAL_INST_DW_PORT = 45101
    

    (3)新建dmarch.ini

    [ARCHIVE_REALTIME]
    ARCH_TYPE = REALTIME
    ARCH_DEST =DBSERVER02[ARCHIVE_LOCAL1]
    ARCH_TYPE = LOCAL
    ARCH_DEST = /home/mss/dm8/data/DM01/arch
    ARCH_FILE_SIZE = 128
    ARCH_SPACE_LIMIT = 0
    

    (4)新建dmwatcher.ini

    [GRP1]
    DW_TYPE = GLOBAL
    DW_MODE = AUTO
    DW_ERROR_TIME = 10
    INST_RECOVER_TIME = 60
    INST_ERROR_TIME = 10
    INST_OGUID = 453331
    INST_INI = /home/mss/dm8/data/DM01/dm.ini
    INST_AUTO_RESTART = 1
    INST_STARTUP_CMD = /home/mss/dm8/install/bin/dmserver
    RLOG_SEND_THRESHOLD = 0
    RLOG_APPLY_THRESHOLD = 0
    

    配置 node2 實例二:------------------------------------------------------------------

    cd /home/mss/dm8/data/DM01
    

    (1)配置dm.ini

    INSTANCE_NAME = DBSERVER02
    PORT_NUM = 5236
    DW_INACTIVE_INTERVAL = 60
    ALTER_MODE_STATUS = 0
    ENABLE_OFFLINE_TS = 2
    MAL_INI = 1
    ARCH_INI = 1
    RLOG_SEND_APPLY_MON = 64
    

    (2)新建dmmal.ini

    #配置上端口規劃中規劃的各端口參數:
    #PORT_NUM、MAL_INST_DW_PORT、MAL_DW_PORT
    #[MAL_INST1]中填寫主機的、
    #[MAL_INST2]中填寫備機的MAL_CHECK_INTERVAL = 5
    MAL_CONN_FAIL_INTERVAL = 5[MAL_INST1]
    MAL_INST_NAME = DBSERVER01
    MAL_HOST = 192.168.162.221
    MAL_PORT = 55101
    MAL_INST_HOST = 192.168.162.221
    MAL_INST_PORT = 5236
    MAL_DW_PORT = 65101
    MAL_INST_DW_PORT = 45101[MAL_INST2]
    MAL_INST_NAME = DBSERVER02
    MAL_HOST = 192.168.162.222
    MAL_PORT = 55101
    MAL_INST_HOST = 192.168.162.222
    MAL_INST_PORT = 5236
    MAL_DW_PORT = 65101
    MAL_INST_DW_PORT = 45101
    

    (3)新建dmarch.ini

    [ARCHIVE_REALTIME]
    ARCH_TYPE = REALTIME
    ARCH_DEST =DBSERVER01[ARCHIVE_LOCAL1]
    ARCH_TYPE = LOCAL
    ARCH_DEST = /home/mss/dm8/data/DM01/arch
    ARCH_FILE_SIZE = 128
    ARCH_SPACE_LIMIT = 0
    

    (4)新建dmwatcher.ini

    [GRP1]
    DW_TYPE = GLOBAL
    DW_MODE = AUTO
    DW_ERROR_TIME = 10
    INST_RECOVER_TIME = 60
    INST_ERROR_TIME = 10
    INST_OGUID = 453331
    INST_INI = /home/mss/dm8/data/DM01/dm.ini
    INST_AUTO_RESTART = 1
    INST_STARTUP_CMD = /home/mss/dm8/install/bin/dmserver
    RLOG_SEND_THRESHOLD = 0
    RLOG_APPLY_THRESHOLD = 0
    

    配置 node3 監視器:------------------------------------------------------------------

    cd /home/mss/dm8/data/DM01
    

    (1)新建dmmonitor.ini

    # 0表示普通監視器 ,最多配置8個,1 確認監視器模式
    MON_DW_CONFIRM = 1
    MON_LOG_PATH = /home/mss/dm8/install/log
    # 每隔 60s 定時記錄系統信息到日志文件
    MON_LOG_INTERVAL = 60
    # 每個日志文件最大 32M
    MON_LOG_FILE_SIZE = 32
    # 不限定日志文件總占用空間
    MON_LOG_SPACE_LIMIT = 0[GRP1]
    #組 GRP1 的唯一OGUID 值
    MON_INST_OGUID = 453331
    ##dmmal.ini####MAL_HOST:MAL_DW_PORT###################
    MON_DW_IP = 192.168.162.221:65101
    MON_DW_IP = 192.168.162.222:65101
    
  7. **備份主機數據庫 node1 **
    登錄 node1 服務器

    su mss
    cd /home/mss/dm8/install/bin/
    # 初始化
    ./dmserver /home/mss/dm8/data/DM01/dm.ini #如果dmap沒啟動執行以下命令
    ./dmap#執行備份
    ./dmrman CTLSTMT="BACKUP DATABASE '/home/mss/dm8/data/DM01/dm.ini' FULL TO fullbak01 BACKUPSET '/home/mss/dm8/backup/fullbak01'"
    拷貝221備份文件到222
    scp -r /home/mss/dm8/backup mss@192.168.162.222:/home/mss/dm8/
    
  8. **在備份機還原數據庫 node2 **
    登錄 node2 服務器

    su mss
    cd /home/mss/dm8/install/bin/#如果dmap沒啟動執行以下命令
    ./dmap./dmrman CTLSTMT="RESTORE DATABASE '/home/mss/dm8/data/DM01/dm.ini' FROM BACKUPSET '/home/mss/dm8/backup/fullbak01'"
    ./dmrman CTLSTMT="RECOVER DATABASE '/home/mss/dm8/data/DM01/dm.ini' FROM BACKUPSET '/home/mss/dm8/backup/fullbak01'"
    ./dmrman CTLSTMT="RECOVER DATABASE '/home/mss/dm8/data/DM01/dm.ini' UPDATE DB_MAGIC"```
    
  9. 主機與備機分別以mount方式啟動數據庫
    在 node1、node2 分別執行以下命令

    cd /home/mss/dm8/install/bin/
    #如果dmap沒啟動執行以下命令
    ./dmap
    ./dmserver /home/mss/dm8/data/DM01/dm.ini  mount./disql
    SQL> SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 1);
    SQL> SP_SET_OGUID(453331);
    SQL> ALTER DATABASE PRIMARY;
    SQL> SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 0);
    
  10. 啟動測試服務
    (1) node1 221 機器:

    cd /home/mss/dm8/install/bin/
    ./dmserver /home/mss/dm8/data/DM01/dm.ini  mount
    ./dmwatcher /home/mss/dm8/data/DM01/dmwatcher.ini
    

    在這里插入圖片描述
    (2) node1 222 機器:

    cd /home/mss/dm8/install/bin/
    ./dmserver /home/mss/dm8/data/DM01/dm.ini  mount
    ./dmwatcher /home/mss/dm8/data/DM01/dmwatcher.ini
    

    (3) node3 223 機器:

    cd /home/mss/dm8/install/bin/
    ./dmmonitor /home/mss/dm8/data/DM01/dmmonitor.ini
    

    在這里插入圖片描述

五、服務注冊啟動

  1. 進行服務注冊

    切換 root 用戶
    (1)node1 221 機器 實例一

    su root
    cd  /home/mss/dm8/install/script/root
    ./dm_service_installer.sh -p DMSERVER -t dmserver -dm_ini /home/mss/dm8/data/DM01/dm.ini 
    ./dm_service_installer.sh -p dmwatcher -t dmwatcher -watcher_ini  /home/mss/dm8/data/DM01/dmwatcher.ini
    

    (2)node2 222 機器 實例二

    su root
    cd  /home/mss/dm8/install/script/root
    ./dm_service_installer.sh -p DMSERVER -t dmserver -dm_ini /home/mss/dm8/data/DM01/dm.ini 
    ./dm_service_installer.sh -p dmwatcher -t dmwatcher -watcher_ini  /home/mss/dm8/data/DM01/dmwatcher.ini
    

    (3)node3 223 機器 監測

    su root
    cd  /home/mss/dm8/install/script/root
    ./dm_service_installer.sh -p dmmonitor  -t dmmonitor -monitor_ini   /home/mss/dm8/data/DM01/dmmonitor.ini
    
    //注釋: 此命令為刪除服務:./dm_service_uninstaller.sh -n DmServiceDMSERVER
    
  2. 啟停數據庫命令
    (1)node1 221 機器 實例一

    systemctl start DmServiceDMSERVER.service
    systemctl stop DmServiceDMSERVER.service
    systemctl restart DmServiceDMSERVER.service
    systemctl status DmServiceDMSERVER.service
    

    (2)node2 222 機器 實例二

    systemctl start DmServiceDMSERVER.service
    systemctl stop DmServiceDMSERVER.service
    systemctl restart DmServiceDMSERVER.service
    systemctl status DmServiceDMSERVER.service
    

    (3)node3 223 機器 監視器

    systemctl status DmMonitorServicedmmonitor.service
    systemctl start DmMonitorServicedmmonitor.service
    
  3. 連接數據庫
    賬戶:SYSDBA
    密碼:SYSDBA

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/36405.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/36405.shtml
英文地址,請注明出處:http://en.pswp.cn/news/36405.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

風丘科技將亮相 EVM ASIA 2023

風丘科技將首次亮相 EVM ASIA 2023 WINDHILL will debut EVM ASIA 2023 ——可持續移動的未來 —The Future of SUSTAINABLE Mobility EVM ASIA 2023是亞太地區電氣化的國際性展會,專注于新能源汽車、充電技術及汽車零件制造等。展會致力于促進包括充電站、交通…

[系統安全] 五十二.DataCon競賽 (1)2020年Coremail釣魚郵件識別及分類詳解

您可能之前看到過我寫的類似文章,為什么還要重復撰寫呢?只是想更好地幫助初學者了解病毒逆向分析和系統安全,更加成體系且不破壞之前的系列。因此,我重新開設了這個專欄,準備系統整理和深入學習系統安全、逆向分析和惡意代碼檢測,“系統安全”系列文章會更加聚焦,更加系…

InnoDB文件物理結構解析5 - FIL_PAGE_INDEX

本文討論FIL_PAGE_INDEX頁的可回收垃圾記錄(Garbage/Deleted Records),當我們刪除某一條記錄(delete from …)時,通常InnoDB并不會在物理存儲上進行完全刪除,而是在記錄上置一個刪除標志位,我們稱這些行記錄為垃圾記錄&#xff0c…

嵌入式Qt開發—Excel表格數據導出

有一個嵌入式Excel表格數據導出的需求:應用軟件運行于嵌入式Linux平臺上,在設備運行過程中,存儲了許多數據,這些數據想以表格的形式導出。考慮到Windows平臺的普遍性,需要將數據以excel表格形式導出,故選擇…

python庫打包

一、背景 想讓自己寫的python庫可以使用pip install xxx安裝。 二、環境準備 注冊PYPI賬號已經寫好的能正常使用的庫/方法/項目(可以本地調用)安裝依賴庫setuptools和twinw pip install setuptools pip install twine # 簡化將庫發布到PYPI流程的工…

“中國軟件杯”飛槳賽道晉級決賽現場名單公布

“中國軟件杯”大學生軟件設計大賽是由國家工業和信息化部、教育部、江蘇省人民政府共同主辦,是全國軟件行業規格最高、最具影響力的國家級一類賽事,為《全國普通高校競賽排行榜》榜單內賽事。今年,組委會聯合百度飛槳共同設立了“智能系統設…

C++11之后的C++標準特性宏定義方便功能特性測試

C是一個龐大的編程語言體系,它的高效性是可以直接連接硬件系統,它的靈活性是不斷迭代完善的通用語義機制,當下C的發展演進可謂一路狂奔。不同應用中需要知道C對應的平臺或者版本的功能特性,標準庫信息、C編譯器特性等,…

基于PHP的輕量級博客typecho

本文完成于 5 月中旬,發布時未在最新版本上驗證; 什么是 typecho ? Typecho 是一款基于 PHP 的博客軟件,旨在成為世界上最強大的博客引擎。Typecho 在 GNU 通用公共許可證 2.0 下發布。支持多種數據庫,原生支持 Markdo…

24屆近5年南京大學自動化考研院校分析

今天給大家帶來的是南京大學控制考研分析 滿滿干貨~還不快快點贊收藏 一、南京大學 學校簡介 南京大學是一所歷史悠久、聲譽卓著的高等學府。其前身是創建于1902年的三江師范學堂,此后歷經兩江師范學堂、南京高等師范學校、國立東南大學、國立第四中…

JS 刪除的是最后一頁的最后一條,頁碼設置邏輯

刪除的場景: 解決思路: 1、計算操作后的總頁數 2、刪除成功之后的總頁數與當前總頁數進行比較 3、如果刪除成功之后的總頁數比小于當前總頁數,需要把當前頁碼減去1;否則,直接進行列表數據的請求 代碼實現 /*總條數…

VBA 學習筆記1 對象以及屬性

目錄 1 取得VBA對象1.1 取得工作簿對象1.2 取得工作表對象1.3 取得單元格對象1.4 取得對象的屬性1.5 文檔的方法1 進入vba 界面 方式之一: 快捷鍵:ALTERF11 運行方式之一: 進入vba界面,點擊綠色三角符號 1 取得VBA對象 1.1 取得…

DAY21

題目一 給定三個字符串str1、str2和aim, 如果aim包含且僅包含來自str1和str2的所有字符,而且在aim中屬于str1的字符 之間保持原來在str1中的順序,屬于str2的字符之間保持原來在str2中的順序,那么稱aim是str1和str2的交錯組成。實…

Springboot-Retrofit HTTP工具框架快速使用

在SpringBoot項目直接使用okhttp、httpClient或者RestTemplate發起HTTP請求,既繁瑣又不方便統一管理。 因此,在這里推薦一個適用于SpringBoot項目的輕量級HTTP客戶端框架retrofit-spring-boot-starter,使用非常簡單方便,同時又提供…

約數個數(質因子分解)

思路: (1)由數論基本定理,任何一個正整數x都能寫作,其中p1,p2..pk為x的質因子。 (2)由此可以推斷,要求一個數約數的個數,注意到約數就是p1,p2...pk的一種組合&#xff…

日常BUG—— SpringBoot項目DEBUG模式啟動慢、卡死。

😜作 者:是江迪呀??本文關鍵詞:日常BUG、BUG、問題分析??每日 一言 :存在錯誤說明你在進步! 一、問題描述 我們調試程序時,需要使用DEBUG模式啟動SpringBoot項目, 有時候會發…

convert Auto-Login (cwallet.sso) Wallet into a PKCS12 compliant Wallet

一步不行嗎 &#xff1f; 1. If $JAVA_HOME is not set: a)For FMW 11g components associated with a WebLogic Domain or a FMW 12c Collocated OHS install run: $MIDDLEWARE_HOME/user_projects/domains/<domain>/bin/setDomainEnv.sh b) For FMW 11g Standalone…

側滑置頂,取消置頂

第一步:布局 <?xml version"1.0" encoding"utf-8"?> <com.ddmh.magic.camera.ui.widget.SwipeMenuLayout xmlns:android"http://schemas.android.com/apk/res/android"xmlns:app"http://schemas.android.com/apk/res-auto"…

SQL | 使用通配符進行過濾

6-使用通配符進行過濾 6.1-LIKE操作符 前面介紹的所有操作符都是通過已知的值進行過濾&#xff0c;或者檢查某個范圍的值。但是如果我們想要查找產品名字中含有bag的數據&#xff0c;就不能使用前面那種過濾情況。 利用通配符&#xff0c;可以創建比較特定數據的搜索模式。 …

selenium 爬蟲

selenium 可以動態爬取網頁數據&#xff0c;就像真實用戶操作瀏覽器一樣&#xff0c;從終端用戶的角度測試應用程序&#xff0c;WebDriver通過原生瀏覽器支持或者瀏覽器擴展直接控制瀏覽器 webdriver下載 因為selenuim對瀏覽器的版本存在兼容問題&#xff0c;顧需要針對指定瀏…

SAP系統是什么呢?它有哪些優勢?

SAP系統是全球知名的企業資源規劃&#xff08;ERP&#xff09;解決方案供應商。它集成了財務、供應鏈管理、人力資源管理、銷售和客戶關系管理等多個功能模塊&#xff0c;為企業提供全面、集成的管理體驗。SAP系統已成為各行各業企業管理的智慧選擇&#xff0c;極大地提升了管理…