DM8 使用裸裝置搭建DMRAC
使用裸裝置搭建DMRAC
一、操作環境
主機 IP地址(對外服務) IP地址(內部通訊) 例項名 作業系統 dm8dsc1 10.10.13.205 11.11.11.3 dsc0 Redhat 7.8 dm8dsc2 10.10.13.206 11.11.11.4 dsc1 Redhat 7.8
共享儲存
/dev/sdb /dev/raw/raw1 dcr disk 2G /dev/sdc /dev/raw/raw2 voting disk 2G /dev/sdd1 /dev/raw/raw3 log disk1 2G /dev/sdd2 /dev/raw/raw4 log disk2 2G /dev/sdd3 /dev/raw/raw5 log disk3 2G /dev/sdd5 /dev/raw/raw6 log disk4 2G /dev/sde1 /dev/raw/raw7 data disk1 5G /dev/sde2 /dev/raw/raw8 data disk2 5G /dev/sdf1 /dev/raw/raw9 data disk3 5G /dev/sdf2 /dev/raw/raw10 data disk4 5G /dev/sdg1 /dev/raw/raw11 data disk5 5G /dev/sdg2 /dev/raw/raw12 data disk6 5G
二、作業系統配置
1、關閉防火牆和SELINUX
[root@gbase ~]# systemctl stop firewalld [root@gbase ~]# systemctl disable firewalld Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service. Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service. [root@gbase ~]# systemctl status firewalld firewalld.service - firewalld - dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled) Active: inactive (dead) Docs: man:firewalld(1) Dec 08 10:57:13 gbase systemd[1]: Starting firewalld - dynamic firewall daemon... Dec 08 10:57:17 gbase systemd[1]: Started firewalld - dynamic firewall daemon. Dec 08 14:46:41 gbase systemd[1]: Stopping firewalld - dynamic firewall daemon... Dec 08 14:46:42 gbase systemd[1]: Stopped firewalld - dynamic firewall daemon. [root@gbase ~]# setenforce 0 [root@gbase ~]# sed -i s:^SELINUX=.*$:SELINUX=disabled:g /etc/selinux/config [root@gbase ~]# cat /etc/selinux/config # This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: # enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - No SELinux policy is loaded. SELINUX=disabled # SELINUXTYPE= can take one of three values: # targeted - Targeted processes are protected, # minimum - Modification of targeted policy. Only selected processes are protected. # mls - Multi Level Security protection. SELINUXTYPE=targeted [root@gbase ~]# systemctl stop firewalld [root@gbase ~]# systemctl disable firewalld Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service. Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service. [root@gbase ~]# systemctl status firewalld firewalld.service - firewalld - dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled) Active: inactive (dead) Docs: man:firewalld(1) Dec 08 10:57:19 gbase systemd[1]: Starting firewalld - dynamic firewall daemon... Dec 08 10:57:21 gbase systemd[1]: Started firewalld - dynamic firewall daemon. Dec 08 14:46:45 gbase systemd[1]: Stopping firewalld - dynamic firewall daemon... Dec 08 14:46:46 gbase systemd[1]: Stopped firewalld - dynamic firewall daemon. [root@gbase ~]# setenforce 0 [root@gbase ~]# sed -i s:^SELINUX=.*$:SELINUX=disabled:g /etc/selinux/config [root@gbase ~]# cat /etc/selinux/config # This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: # enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - No SELinux policy is loaded. SELINUX=disabled # SELINUXTYPE= can take one of three values: # targeted - Targeted processes are protected, # minimum - Modification of targeted policy. Only selected processes are protected. # mls - Multi Level Security protection. SELINUXTYPE=targeted
2、修改主機名
[root@gbase ~]# hostnamectl set-hostname dm8dsc1 [root@gbase ~]# sed -i s:^HOSTNAME=.*$:HOSTNAME=dm8dsc1:g /etc/sysconfig/network [root@gbase ~]# echo " > 10.10.13.205 dm8dsc1 > 10.10.13.206 dm8dsc2" >> /etc/hosts [root@gbase ~]# cat /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 10.10.13.205 dm8dsc1 10.10.13.206 dm8dsc2 [root@gbase ~]# hostnamectl set-hostname dm8dsc2 [root@gbase ~]# sed -i s:^HOSTNAME=.*$:HOSTNAME=dm8dsc2:g /etc/sysconfig/network [root@gbase ~]# echo " > 10.10.13.205 dm8dsc1 > 10.10.13.206 dm8dsc2" >> /etc/hosts [root@gbase ~]# cat /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 10.10.13.205 dm8dsc1 10.10.13.206 dm8dsc2
三、 安裝達夢軟體
3.1檢查Linux(Unix)系統資訊
[root@dm8dsc1 ~]# getconf LONG_BIT 64 [root@dm8dsc2 ~]# getconf LONG_BIT 64
查詢作業系統release資訊
[root@dm8dsc1 ~]# cat /etc/redhat-release Red Hat Enterprise Linux Server release 7.8 Beta (Maipo) [root@dm8dsc2 ~]# cat /etc/redhat-release Red Hat Enterprise Linux Server release 7.8 Beta (Maipo)
3.2建立安裝使用者
為了減少對作業系統的影響,使用者不應該以root系統使用者來安裝和執行DM。使用者可以在安裝之前為DM建立一個專用的系統使用者。
1. 建立安裝使用者組dinstall。
[root@dm8dsc1 ~]# groupadd dinstall [root@dm8dsc2 ~]# groupadd dinstall
2. 建立安裝使用者dmdba。
[root@dm8dsc1 ~]# useradd -g dinstall -m -d /home/dmdba -s /bin/bash dmdba [root@dm8dsc2 ~]# useradd -g dinstall -m -d /home/dmdba -s /bin/bash dmdba
3. 初始化使用者密碼。
[root@dm8dsc1 ~]# passwd dmdba Changing password for user dmdba. New password: Retype new password: passwd: all authentication tokens updated successfully. [root@dm8dsc2 ~]# passwd dmdba Changing password for user dmdba. New password: Retype new password: passwd: all authentication tokens updated successfully.
3.3 Linux(Unix)下檢查作業系統限制
在Linux(Unix)系統中,因為ulimit命令的存在,會對程式使用作業系統資源進行限制。為了使DM能夠正常執行,建議使用者檢查當前安裝使用者的ulimit引數。
執行ulimit -a進行查詢。如下圖所示:
[root@dm8dsc1 ~]# ulimit -a core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 31152 max locked memory (kbytes, -l) 64 max memory size (kbytes, -m) unlimited open files (-n) 1024 pipe size (512 bytes, -p) 8 POSIX message queues (bytes, -q) 819200 real-time priority (-r) 0 stack size (kbytes, -s) 8192 cpu time (seconds, -t) unlimited max user processes (-u) 31152 virtual memory (kbytes, -v) unlimited file locks (-x) unlimited [root@dm8dsc2 ~]# ulimit -a core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 31152 max locked memory (kbytes, -l) 64 max memory size (kbytes, -m) unlimited open files (-n) 1024 pipe size (512 bytes, -p) 8 POSIX message queues (bytes, -q) 819200 real-time priority (-r) 0 stack size (kbytes, -s) 8192 cpu time (seconds, -t) unlimited max user processes (-u) 31152 virtual memory (kbytes, -v) unlimited file locks (-x) unlimited
引數使用限制:
1.data seg size
data seg size (kbytes, -d)
建議使用者設定為1048576(即1GB)以上或unlimited(無限制),此引數過小將導致資料庫啟動失敗。
2. file size
file size(blocks, -f)
建議使用者設定為unlimited(無限制),此引數過小將導致資料庫安裝或初始化失敗。
3. open files
open files(-n)
建議使用者設定為65536以上或unlimited(無限制)。
4.virtual memory
virtual memory (kbytes, -v)
建議使用者設定為1048576(即1GB)以上或unlimited(無限制),此引數過小將導致資料庫啟動失敗。
如果使用者需要為當前安裝使用者更改ulimit的資源限制,請修改檔案/etc/security/limits.conf。
root@dm8dsc1 ~]# vi /etc/security/limits.conf dmdba soft data unlimited dmdba hard data unlimited dmdba soft fsize unlimited dmdba hard fsize unlimited dmdba soft nofile 65536 dmdba hard nofile 65536 [root@dm8dsc2 ~]# vi /etc/security/limits.conf dmdba soft data unlimited dmdba hard data unlimited dmdba soft fsize unlimited dmdba hard fsize unlimited dmdba soft nofile 65536 dmdba hard nofile 65536 [root@dm8dsc1 ~]# su - dmdba [dmdba@dm8dsc1 ~]$ ulimit -a core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 31152 max locked memory (kbytes, -l) 64 max memory size (kbytes, -m) unlimited open files (-n) 65536 pipe size (512 bytes, -p) 8 POSIX message queues (bytes, -q) 819200 real-time priority (-r) 0 stack size (kbytes, -s) 8192 cpu time (seconds, -t) unlimited max user processes (-u) 4096 virtual memory (kbytes, -v) unlimited file locks (-x) unlimited [root@dm8dsc2 ~]# su - dmdba [dmdba@dm8dsc2 ~]$ ulimit -a core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 31152 max locked memory (kbytes, -l) 64 max memory size (kbytes, -m) unlimited open files (-n) 65536 pipe size (512 bytes, -p) 8 POSIX message queues (bytes, -q) 819200 real-time priority (-r) 0 stack size (kbytes, -s) 8192 cpu time (seconds, -t) unlimited max user processes (-u) 4096 virtual memory (kbytes, -v) unlimited file locks (-x) unlimited
3.4.檢查系統記憶體與儲存空間
1.檢查記憶體
為了保證DM的正確安裝和執行,要儘量保證作業系統至少1GB的可用記憶體(RAM)。如果可用記憶體過少,可能導致DM安裝或啟動失敗。使用者可以使用以下命令檢查操作記憶體:
#獲取記憶體總大小 [root@dm8dsc1 ~]# grep MemTotal /proc/meminfo MemTotal: 8009068 kB [root@dm8dsc2 ~]# grep MemTotal /proc/meminfo MemTotal: 8009068 kB #獲取交換分割槽大小 [root@dm8dsc1 ~]# grep SwapTotal /proc/meminfo SwapTotal: 8257532 kB [root@dm8dsc2 ~]# grep SwapTotal /proc/meminfo SwapTotal: 8257532 kB #獲取記憶體使用詳情 [root@dm8dsc1 ~]# free -g total used free shared buff/cache available Mem: 7 0 6 0 0 6 Swap: 7 0 7 [root@dm8dsc2 ~]# free -g total used free shared buff/cache available Mem: 7 0 6 0 0 6 Swap: 7 0 7
2.檢查儲存空間
1) DM完全安裝需要1GB的儲存空間,使用者需要提前規劃好安裝目錄,預留足夠的儲存空間。使用者在DM安裝前也應該為資料庫例項預留足夠的儲存空間,規劃好資料路徑和備份路徑。使用者可使用以下命令檢查儲存空間:
#查詢目錄/dm8可用空間 [root@dm8dsc1 ~]# mkdir /dm8 [root@dm8dsc1 ~]# chown -R dmdba:dinstall /dm8 [root@dm8dsc1 ~]# chmod -R 775 /dm8 [root@dm8dsc2 ~]# mkdir /dm8 [root@dm8dsc2 ~]# chown -R dmdba:dinstall /dm8 [root@dm8dsc2 ~]# chmod -R 775 /dm8 [root@dm8dsc1 ~]# df -h /dm8 Filesystem Size Used Avail Use% Mounted on /dev/mapper/rhel-root 48G 5.6G 43G 12% / [root@dm8dsc2 ~]# df -h /dm8 Filesystem Size Used Avail Use% Mounted on /dev/mapper/rhel-root 48G 5.6G 43G 12% /
2) DM安裝程式在安裝時將產生臨時檔案,臨時檔案需要1GB的儲存空間,臨時檔案目錄預設為/tmp。使用者可以使用以下命令檢查儲存空間。
如下圖所示:
[root@dm8dsc1 ~]# df -h /tmp Filesystem Size Used Avail Use% Mounted on /dev/mapper/rhel-root 48G 5.6G 43G 12% / [root@dm8dsc2 ~]# df -h /tmp Filesystem Size Used Avail Use% Mounted on /dev/mapper/rhel-root 48G 5.6G 43G 12% /
3.5.安裝DM
建立目錄/soft/dmsoft用來儲存掛載iso檔案後來顯示軟體包中的文
[root@dm8dsc1 ~]# cd /soft [root@dm8dsc1 soft]# unzip dm8_20211021_x86_rh6_64_ent.zip Archive: dm8_20211021_x86_rh6_64_ent.zip creating: dm8_20211021_x86_rh6_64_ent/ inflating: dm8_20211021_x86_rh6_64_ent/dm8_20211021_x86_rh6_64_ent_8.1.2.84.iso extracting: dm8_20211021_x86_rh6_64_ent/dm8_20211021_x86_rh6_64_ent_8.1.2.84.iso_SHA256.txt extracting: dm8_20211021_x86_rh6_64_ent/verinfo.txt [root@dm8dsc1 soft]# ls -lrt total 778320 drwxr-xr-x. 2 root root 132 Nov 12 13:43 dm8_20211021_x86_rh6_64_ent -rw-r--r--. 1 root root 796998047 Nov 29 10:25 dm8_20211021_x86_rh6_64_ent.zip [root@dm8dsc1 soft]# mv dm8_20211021_x86_rh6_64_ent dm8 [root@dm8dsc1 soft]# mkdir dmsoft [root@dm8dsc1 soft]# mount -t iso9660 -o loop dm8/dm8_20211021_x86_rh6_64_ent_8.1.2.84.iso /soft/dmsoft mount: /dev/loop0 is write-protected, mounting read-only [root@dm8dsc1 soft]# cd dmsoft [root@dm8dsc1 dmsoft]# ls -lrt total 790160 -r-xr-xr-x. 1 root root 2802503 Oct 21 14:04 DM8 Install.pdf -r-xr-xr-x. 1 root root 806320703 Oct 21 14:11 DMInstall.bin [root@dm8dsc2 ~]# cd /soft [root@dm8dsc2 soft]# unzip dm8_20211021_x86_rh6_64_ent.zip Archive: dm8_20211021_x86_rh6_64_ent.zip creating: dm8_20211021_x86_rh6_64_ent/ inflating: dm8_20211021_x86_rh6_64_ent/dm8_20211021_x86_rh6_64_ent_8.1.2.84.iso extracting: dm8_20211021_x86_rh6_64_ent/dm8_20211021_x86_rh6_64_ent_8.1.2.84.iso_SHA256.txt extracting: dm8_20211021_x86_rh6_64_ent/verinfo.txt [root@dm8dsc2 soft]# ls -lrt total 778320 drwxr-xr-x. 2 root root 132 Nov 12 13:43 dm8_20211021_x86_rh6_64_ent -rw-r--r--. 1 root root 796998047 Nov 29 10:25 dm8_20211021_x86_rh6_64_ent.zip [root@dm8dsc2 soft]# mv dm8_20211021_x86_rh6_64_ent dm8 [root@dm8dsc2 soft]# mkdir dmsoft [root@dm8dsc2 soft]# mount -t iso9660 -o loop dm8/dm8_20211021_x86_rh6_64_ent_8.1.2.84.iso /soft/dmsoft mount: /dev/loop0 is write-protected, mounting read-only [root@dm8dsc2 soft]# cd dmsoft [root@dm8dsc2 dmsoft]# ls -lrt total 790160 -r-xr-xr-x. 1 root root 2802503 Oct 21 14:04 DM8 Install.pdf -r-xr-xr-x. 1 root root 806320703 Oct 21 14:11 DMInstall.bin
在/soft/dmsoft目錄下存在DMInstall.bin檔案, DMInstall.bin檔案就是DM的安裝程式。在執行安裝程式前,需要賦予DMInstall.bin檔案執行許可權。具體命令如下所示:
[root@dm8dsc1 dmsoft]# chmod 755 DMInstall.bin chmod: changing permissions of ‘DMInstall.bin’: Read-only file system [root@dm8dsc2 dmsoft]# chmod 755 DMInstall.bin chmod: changing permissions of ‘DMInstall.bin’: Read-only file system
在現實中,許多Linux(Unix)作業系統上是沒有圖形化介面的,為了使DM能夠在這些作業系統上順利安裝,DM提供了命令列的安裝方式。在終端進入到安裝程式所在資料夾,執行以下命令進行命令列安裝:
[dmdba@dm8dsc1 dmsoft]$ ./DMInstall.bin -i Please select the installer's language (E/e:English C/c:Chinese) [E/e]:e Extract install files......... Welcome to DM DBMS Installer Whether to input the path of Key File? (Y/y:Yes N/n:No) [Y/y]:n Whether to Set The TimeZone? (Y/y:Yes N/n:No) [Y/y]:y TimeZone: [ 1]: GTM-12=West Date Line [ 2]: GTM-11=Samoa [ 3]: GTM-10=Hawaii [ 4]: GTM-09=Alaska [ 5]: GTM-08=Pacific(America and Canada) [ 6]: GTM-07=Arizona [ 7]: GTM-06=Central(America and Canada) [ 8]: GTM-05=East(America and Canada) [ 9]: GTM-04=Atlantic(America and Canada) [10]: GTM-03=Brasilia [11]: GTM-02=Middle Atlantic [12]: GTM-01=Azores [13]: GTM=Greenwich Mean Time [14]: GTM+01=Sarajevo [15]: GTM+02=Cairo [16]: GTM+03=Moscow [17]: GTM+04=AbuDhabi [18]: GTM+05=Islamabad [19]: GTM+06=Dakar [20]: GTM+07=BangKok,Hanoi [21]: GTM+08=China [22]: GTM+09=Seoul [23]: GTM+10=Guam [24]: GTM+11=Solomon [25]: GTM+12=Fiji [26]: GTM+13=Nukualofa [27]: GTM+14=Kiribati Please Select the TimeZone [21]:21 Installation Type: 1 Typical 2 Server 3 Client 4 Custom Please Input the number of the Installation Type [1 Typical]:4 1 Server component 2 Client component 2.1 Manager 2.2 Monitor 2.3 DTS 2.4 Console 2.5 Analyzer 2.6 DISQL 3 DM Drivers 4 Manual component 5 DBMS Service 5.1 Realtime Audit Service 5.2 Job Service 5.3 Instance Monitor Service 5.4 Assistant Plug-In Service Please Input the number of the Installation Type [1 2 3 4 5]:1 2 3 4 5 Require Space: 1242M Please Input the install path [/home/dmdba/dmdbms]:/dm8 Available Space:39G Please Confirm the install path(/dm8)? (Y/y:Yes N/n:No) [Y/y]:y Pre-Installation Summary Installation Location: /dm8 Require Space: 1242M Available Space: 39G Version Information: Expire Date: Installation Type: Custom Confirm to Install? (Y/y:Yes N/n:No):y 2021-12-08 15:24:33 [INFO] Installing DM DBMS... 2021-12-08 15:24:34 [INFO] Installing BASE Module... 2021-12-08 15:24:36 [INFO] Installing SERVER Module... 2021-12-08 15:24:36 [INFO] Installing CLIENT Module... 2021-12-08 15:24:37 [INFO] Installing DRIVERS Module... 2021-12-08 15:24:37 [INFO] Installing MANUAL Module... 2021-12-08 15:24:37 [INFO] Installing SERVICE Module... 2021-12-08 15:24:43 [INFO] Move log file to log directory. 2021-12-08 15:24:45 [INFO] Installed DM DBMS completely. Please execute the commands by root: /dm8/script/root/root_installer.sh End
以root使用者來執行上面的指令碼
[root@dm8dsc1 dmsoft]# /dm8/script/root/root_installer.sh Move /dm8/bin/dm_svc.conf to /etc Modify the files' mode of DM Server [root@dm8dsc1 dmsoft]# su - dmdba Last login: Wed Dec 8 15:22:23 CST 2021 on pts/2 [dmdba@dm8dsc1 ~]$ cat .bash_profile # .bash_profile # Get the aliases and functions if [ -f ~/.bashrc ]; then . ~/.bashrc fi # User specific environment and startup programs PATH=$PATH:$HOME/.local/bin:$HOME/bin export PATH export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/dm8/bin" export DM_HOME="/dm8" [dmdba@dm8dsc1 ~]$ vi .bash_profile # .bash_profile # Get the aliases and functions if [ -f ~/.bashrc ]; then . ~/.bashrc fi # User specific environment and startup programs PATH=$PATH:$HOME/.local/bin:$HOME/bin export PATH export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/dm8/bin" export DM_HOME="/dm8" export PATH=$PATH:$LD_LIBRARY_PATH [dmdba@dm8dsc2 dmsoft]$ ./DMInstall.bin -i Please select the installer's language (E/e:English C/c:Chinese) [E/e]:e Extract install files......... Welcome to DM DBMS Installer Whether to input the path of Key File? (Y/y:Yes N/n:No) [Y/y]:n Whether to Set The TimeZone? (Y/y:Yes N/n:No) [Y/y]:y TimeZone: [ 1]: GTM-12=West Date Line [ 2]: GTM-11=Samoa [ 3]: GTM-10=Hawaii [ 4]: GTM-09=Alaska [ 5]: GTM-08=Pacific(America and Canada) [ 6]: GTM-07=Arizona [ 7]: GTM-06=Central(America and Canada) [ 8]: GTM-05=East(America and Canada) [ 9]: GTM-04=Atlantic(America and Canada) [10]: GTM-03=Brasilia [11]: GTM-02=Middle Atlantic [12]: GTM-01=Azores [13]: GTM=Greenwich Mean Time [14]: GTM+01=Sarajevo [15]: GTM+02=Cairo [16]: GTM+03=Moscow [17]: GTM+04=AbuDhabi [18]: GTM+05=Islamabad [19]: GTM+06=Dakar [20]: GTM+07=BangKok,Hanoi [21]: GTM+08=China [22]: GTM+09=Seoul [23]: GTM+10=Guam [24]: GTM+11=Solomon [25]: GTM+12=Fiji [26]: GTM+13=Nukualofa [27]: GTM+14=Kiribati Please Select the TimeZone [21]:21 Installation Type: 1 Typical 2 Server 3 Client 4 Custom Please Input the number of the Installation Type [1 Typical]:4 1 Server component 2 Client component 2.1 Manager 2.2 Monitor 2.3 DTS 2.4 Console 2.5 Analyzer 2.6 DISQL 3 DM Drivers 4 Manual component 5 DBMS Service 5.1 Realtime Audit Service 5.2 Job Service 5.3 Instance Monitor Service 5.4 Assistant Plug-In Service Please Input the number of the Installation Type [1 2 3 4 5]:1 2 3 4 5 Require Space: 1242M Please Input the install path [/home/dmdba/dmdbms]:/dm8 Available Space:39G Please Confirm the install path(/dm8)? (Y/y:Yes N/n:No) [Y/y]:y Pre-Installation Summary Installation Location: /dm8 Require Space: 1242M Available Space: 39G Version Information: Expire Date: Installation Type: Custom Confirm to Install? (Y/y:Yes N/n:No):y 2021-12-08 15:26:51 [INFO] Installing DM DBMS... 2021-12-08 15:26:51 [INFO] Installing BASE Module... 2021-12-08 15:26:54 [INFO] Installing SERVER Module... 2021-12-08 15:26:55 [INFO] Installing CLIENT Module... 2021-12-08 15:27:03 [INFO] Installing DRIVERS Module... 2021-12-08 15:27:03 [INFO] Installing MANUAL Module... 2021-12-08 15:27:03 [INFO] Installing SERVICE Module... 2021-12-08 15:27:10 [INFO] Move log file to log directory. 2021-12-08 15:27:15 [INFO] Installed DM DBMS completely. Please execute the commands by root: /dm8/script/root/root_installer.sh End
以root使用者來執行上面的指令碼
[root@dm8dsc2 dmsoft]# /dm8/script/root/root_installer.sh Move /dm8/bin/dm_svc.conf to /etc Modify the files' mode of DM Server [root@dm8dsc2 dmsoft]# su - dmdba Last login: Wed Dec 8 15:22:48 CST 2021 on pts/2 [dmdba@dm8dsc2 ~]$ cat .bash_profile # .bash_profile # Get the aliases and functions if [ -f ~/.bashrc ]; then . ~/.bashrc fi # User specific environment and startup programs PATH=$PATH:$HOME/.local/bin:$HOME/bin export PATH export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/dm8/bin" export DM_HOME="/dm8" [dmdba@dm8dsc2 ~]$ vi .bash_profile # .bash_profile # Get the aliases and functions if [ -f ~/.bashrc ]; then . ~/.bashrc fi # User specific environment and startup programs PATH=$PATH:$HOME/.local/bin:$HOME/bin export PATH export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/dm8/bin" export DM_HOME="/dm8" export PATH=$PATH:$LD_LIBRARY_PATH
四、繫結UDEV
編輯/etc/udev/rules.d/99-dm-devices.rules檔案
[root@dm8dsc1 dmsoft]# cd /etc/udev/rules.d/ [root@dm8dsc1 rules.d]# vi 99-dm-devices.rules ACTION=="add", KERNEL=="sdb", RUN+="/bin/raw /dev/raw/raw1 %N" ACTION=="add", KERNEL=="sdc", RUN+="/bin/raw /dev/raw/raw2 %N" ACTION=="add", KERNEL=="sdd1", RUN+="/bin/raw /dev/raw/raw3 %N" ACTION=="add", KERNEL=="sdd2", RUN+="/bin/raw /dev/raw/raw4 %N" ACTION=="add", KERNEL=="sdd3", RUN+="/bin/raw /dev/raw/raw5 %N" ACTION=="add", KERNEL=="sdd4", RUN+="/bin/raw /dev/raw/raw6 %N" ACTION=="add", KERNEL=="sde1", RUN+="/bin/raw /dev/raw/raw7 %N" ACTION=="add", KERNEL=="sde2", RUN+="/bin/raw /dev/raw/raw8 %N" ACTION=="add", KERNEL=="sdf1", RUN+="/bin/raw /dev/raw/raw9 %N" ACTION=="add", KERNEL=="sdf2", RUN+="/bin/raw /dev/raw/raw10 %N" ACTION=="add", KERNEL=="sdg1", RUN+="/bin/raw /dev/raw/raw11 %N" ACTION=="add", KERNEL=="sdg2", RUN+="/bin/raw /dev/raw/raw12 %N" ACTION=="add", KERNEL=="raw[1-12]", OWNER="dmdba", GROUP="dinstall", MODE="660" [root@dm8dsc2 dmsoft]# cd /etc/udev/rules.d/ [root@dm8dsc2 rules.d]# vi 99-dm-devices.rules ACTION=="add", KERNEL=="sdb", RUN+="/bin/raw /dev/raw/raw1 %N" ACTION=="add", KERNEL=="sdc", RUN+="/bin/raw /dev/raw/raw2 %N" ACTION=="add", KERNEL=="sdd1", RUN+="/bin/raw /dev/raw/raw3 %N" ACTION=="add", KERNEL=="sdd2", RUN+="/bin/raw /dev/raw/raw4 %N" ACTION=="add", KERNEL=="sdd3", RUN+="/bin/raw /dev/raw/raw5 %N" ACTION=="add", KERNEL=="sdd4", RUN+="/bin/raw /dev/raw/raw6 %N" ACTION=="add", KERNEL=="sde1", RUN+="/bin/raw /dev/raw/raw7 %N" ACTION=="add", KERNEL=="sde2", RUN+="/bin/raw /dev/raw/raw8 %N" ACTION=="add", KERNEL=="sdf1", RUN+="/bin/raw /dev/raw/raw9 %N" ACTION=="add", KERNEL=="sdf2", RUN+="/bin/raw /dev/raw/raw10 %N" ACTION=="add", KERNEL=="sdg1", RUN+="/bin/raw /dev/raw/raw11 %N" ACTION=="add", KERNEL=="sdg2", RUN+="/bin/raw /dev/raw/raw12 %N" ACTION=="add", KERNEL=="raw[1-12]", OWNER="dmdba", GROUP="dinstall", MODE="660" ~ [root@dm8dsc1 rules.d]# /sbin/udevadm trigger --type=devices --action=change [root@dm8dsc1 rules.d]# ls -lrt /dev/raw total 0 crw-rw----. 1 root disk 162, 0 Dec 8 15:37 rawctl [root@dm8dsc2 rules.d]# /sbin/udevadm trigger --type=devices --action=change [root@dm8dsc2 rules.d]# ls -lrt /dev/raw total 0 crw-rw----. 1 root disk 162, 0 Dec 8 15:37 rawctl
如果不能正常顯示就重啟作業系統
[root@dm8dsc1 ~]# ls -lrt /dev/raw total 0 crw-rw---- 1 root disk 162, 0 Dec 8 15:38 rawctl crw-rw---- 1 root disk 162, 5 Dec 8 15:38 raw5 crw-rw---- 1 root disk 162, 4 Dec 8 15:38 raw4 crw-rw---- 1 root disk 162, 3 Dec 8 15:38 raw3 crw-rw---- 1 dmdba dinstall 162, 2 Dec 8 15:38 raw2 crw-rw---- 1 dmdba dinstall 162, 1 Dec 8 15:38 raw1 crw-rw---- 1 root disk 162, 9 Dec 8 15:38 raw9 crw-rw---- 1 root disk 162, 8 Dec 8 15:38 raw8 crw-rw---- 1 root disk 162, 7 Dec 8 15:38 raw7 crw-rw---- 1 root disk 162, 6 Dec 8 15:38 raw6 crw-rw---- 1 root disk 162, 12 Dec 8 15:38 raw12 crw-rw---- 1 root disk 162, 11 Dec 8 15:38 raw11 crw-rw---- 1 root disk 162, 10 Dec 8 15:38 raw10 [root@dm8dsc2 ~]# ls -lrt /dev/raw total 0 crw-rw---- 1 root disk 162, 0 Dec 8 15:38 rawctl crw-rw---- 1 root disk 162, 7 Dec 8 15:38 raw7 crw-rw---- 1 dmdba dinstall 162, 2 Dec 8 15:38 raw2 crw-rw---- 1 dmdba dinstall 162, 1 Dec 8 15:38 raw1 crw-rw---- 1 root disk 162, 9 Dec 8 15:38 raw9 crw-rw---- 1 root disk 162, 8 Dec 8 15:38 raw8 crw-rw---- 1 root disk 162, 5 Dec 8 15:38 raw5 crw-rw---- 1 root disk 162, 4 Dec 8 15:38 raw4 crw-rw---- 1 root disk 162, 3 Dec 8 15:38 raw3 crw-rw---- 1 root disk 162, 11 Dec 8 15:38 raw11 crw-rw---- 1 root disk 162, 10 Dec 8 15:38 raw10 crw-rw---- 1 root disk 162, 6 Dec 8 15:38 raw6 crw-rw---- 1 root disk 162, 12 Dec 8 15:38 raw12 [root@dm8dsc1 ~]# vi /etc/rc.d/rc.local #!/bin/bash # THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES # # It is highly advisable to create own systemd services or udev rules # to run scripts during boot instead of using this file. # # In contrast to previous versions due to parallel execution during boot # this script will NOT be run after all other services. # # Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure # that this script will be executed during boot. touch /var/lock/subsys/local chown dmdba:dinstall /dev/raw/raw[1-12] chmod 660 /dev/raw/raw[1-12] [root@dm8dsc1 ~]# vi /etc/rc.d/rc.local #!/bin/bash # THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES # # It is highly advisable to create own systemd services or udev rules # to run scripts during boot instead of using this file. # # In contrast to previous versions due to parallel execution during boot # this script will NOT be run after all other services. # # Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure # that this script will be executed during boot. touch /var/lock/subsys/local chown dmdba:dinstall /dev/raw/raw[1-12] chmod 660 /dev/raw/raw[1-12]
修改裸裝置的許可權防止因為重啟許可權不正確導致dmasmcmd不能識別
[root@dm8dsc1 ~]# ls -lrt /dev/raw/ total 0 crw-rw---- 1 root disk 162, 0 Dec 8 16:27 rawctl crw-rw---- 1 dmdba dinstall 162, 9 Dec 8 16:27 raw9 crw-rw---- 1 dmdba dinstall 162, 10 Dec 8 16:27 raw10 crw-rw---- 1 dmdba dinstall 162, 6 Dec 8 16:27 raw6 crw-rw---- 1 dmdba dinstall 162, 5 Dec 8 16:27 raw5 crw-rw---- 1 dmdba dinstall 162, 3 Dec 8 16:27 raw3 crw-rw---- 1 dmdba dinstall 162, 2 Dec 8 16:27 raw2 crw-rw---- 1 dmdba dinstall 162, 1 Dec 8 16:27 raw1 crw-rw---- 1 dmdba dinstall 162, 8 Dec 8 16:27 raw8 crw-rw---- 1 dmdba dinstall 162, 7 Dec 8 16:27 raw7 crw-rw---- 1 dmdba dinstall 162, 4 Dec 8 16:27 raw4 crw-rw---- 1 dmdba dinstall 162, 12 Dec 8 16:27 raw12 crw-rw---- 1 dmdba dinstall 162, 11 Dec 8 16:27 raw11 [root@dm8dsc2 ~]# ls -lrt /dev/raw/ total 0 crw-rw---- 1 root disk 162, 0 Dec 8 16:26 rawctl crw-rw---- 1 dmdba dinstall 162, 1 Dec 8 16:26 raw1 crw-rw---- 1 dmdba dinstall 162, 5 Dec 8 16:26 raw5 crw-rw---- 1 dmdba dinstall 162, 2 Dec 8 16:26 raw2 crw-rw---- 1 dmdba dinstall 162, 8 Dec 8 16:26 raw8 crw-rw---- 1 dmdba dinstall 162, 7 Dec 8 16:26 raw7 crw-rw---- 1 dmdba dinstall 162, 6 Dec 8 16:26 raw6 crw-rw---- 1 dmdba dinstall 162, 4 Dec 8 16:26 raw4 crw-rw---- 1 dmdba dinstall 162, 3 Dec 8 16:26 raw3 crw-rw---- 1 dmdba dinstall 162, 11 Dec 8 16:26 raw11 crw-rw---- 1 dmdba dinstall 162, 9 Dec 8 16:26 raw9 crw-rw---- 1 dmdba dinstall 162, 12 Dec 8 16:26 raw12 crw-rw---- 1 dmdba dinstall 162, 10 Dec 8 16:26 raw10
可以透過blockdev --getsize64 /dev/raw/raw1命令檢視裸裝置大小
[root@dm8dsc1 ~]# blockdev --getsize64 /dev/raw/raw1 2147483648 [root@dm8dsc1 ~]# blockdev --getsize64 /dev/raw/raw2 2147483648 [root@dm8dsc1 ~]# blockdev --getsize64 /dev/raw/raw3 2147483648 [root@dm8dsc1 ~]# blockdev --getsize64 /dev/raw/raw4 2147483648 [root@dm8dsc1 ~]# blockdev --getsize64 /dev/raw/raw5 2147483648 [root@dm8dsc1 ~]# blockdev --getsize64 /dev/raw/raw6 2147483648 [root@dm8dsc1 ~]# blockdev --getsize64 /dev/raw/raw7 5368709120 [root@dm8dsc1 ~]# blockdev --getsize64 /dev/raw/raw8 5367660544 [root@dm8dsc1 ~]# blockdev --getsize64 /dev/raw/raw9 5368709120 [root@dm8dsc1 ~]# blockdev --getsize64 /dev/raw/raw10 5367660544 [root@dm8dsc1 ~]# blockdev --getsize64 /dev/raw/raw11 5368709120 [root@dm8dsc1 ~]# blockdev --getsize64 /dev/raw/raw12 5367660544 [root@dm8dsc2 ~]# blockdev --getsize64 /dev/raw/raw1 2147483648 [root@dm8dsc2 ~]# blockdev --getsize64 /dev/raw/raw2 2147483648 [root@dm8dsc2 ~]# blockdev --getsize64 /dev/raw/raw3 2147483648 [root@dm8dsc2 ~]# blockdev --getsize64 /dev/raw/raw4 2147483648 [root@dm8dsc2 ~]# blockdev --getsize64 /dev/raw/raw5 2147483648 [root@dm8dsc2 ~]# blockdev --getsize64 /dev/raw/raw6 2147483648 [root@dm8dsc2 ~]# blockdev --getsize64 /dev/raw/raw7 5368709120 [root@dm8dsc2 ~]# blockdev --getsize64 /dev/raw/raw8 5367660544 [root@dm8dsc2 ~]# blockdev --getsize64 /dev/raw/raw9 5368709120 [root@dm8dsc2 ~]# blockdev --getsize64 /dev/raw/raw10 5367660544 [root@dm8dsc2 ~]# blockdev --getsize64 /dev/raw/raw11 5368709120 [root@dm8dsc2 ~]# blockdev --getsize64 /dev/raw/raw12 5367660544
五.配置dmdcr_cfg.ini檔案
在2個節點的/dm8/data目錄下建立配置檔案dmdcr_cfg.ini,在檔案中新增如下內容:
[root@dm8dsc1 ~]# su - dmdba Last login: Wed Dec 8 15:27:56 CST 2021 on pts/1 [dmdba@dm8dsc1 ~]$ mkdir /dm8/data [root@dm8dsc2 ~]# su - dmdba Last login: Wed Dec 8 15:27:32 CST 2021 on pts/1 [dmdba@dm8dsc2 ~]$ mkdir /dm8/data [dmdba@dm8dsc1 ~]$ cd /dm8/data [dmdba@dm8dsc1 data]$ vi dmdcr_cfg.ini DCR_N_GRP = 2 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 = 11.11.11.3 DCR_EP_PORT = 9541 [GRP_CSS] DCR_EP_NAME = CSS1 DCR_EP_HOST = 11.11.11.4 DCR_EP_PORT = 9541 [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 = DSC0 DCR_EP_SEQNO = 0 DCR_EP_PORT = 5236 DCR_CHECK_PORT = 9741 [GRP_DSC] DCR_EP_NAME = DSC1 DCR_EP_SEQNO = 1 DCR_EP_PORT = 5236 DCR_CHECK_PORT = 9741 [dmdba@dm8dsc2 ~]$ cd /dm8/data [dmdba@dm8dsc2 data]$ vi dmdcr_cfg.ini DCR_N_GRP = 2 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 = 11.11.11.3 DCR_EP_PORT = 9541 [GRP_CSS] DCR_EP_NAME = CSS1 DCR_EP_HOST = 11.11.11.4 DCR_EP_PORT = 9541 [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 = DSC0 DCR_EP_SEQNO = 0 DCR_EP_PORT = 5236 DCR_CHECK_PORT = 9741 [GRP_DSC] DCR_EP_NAME = DSC1 DCR_EP_SEQNO = 1 DCR_EP_PORT = 5236 DCR_CHECK_PORT = 9741
六、使用 DMASMCMD 工具初始化(任意一節點執行)
[dmdba@dm8dsc1 ~]$ dmasmcmd DMASMCMD V8 ASM>create dcrdisk '/dev/raw/raw1' 'dcr' [Trace]The ASM initialize dcrdisk /dev/raw/raw1 to name DMASMdcr Used time: 269.118(ms). ASM>create votedisk '/dev/raw/raw2' 'vote' [Trace]The ASM initialize votedisk /dev/raw/raw2 to name DMASMvote Used time: 108.701(ms). ASM>init dcrdisk '/dev/raw/raw1' from '/dm8/data/dmdcr_cfg.ini' identified by 'dameng123' [Trace]DG 126 alloc one extent for inodes, addr(disk_id, disk_auno, extent_no):(0,0,1). [Trace]DG 126 allocate 4 extents for file 0xfe000002. [Trace]DG 126 alloc 4 extents for 0xfe000002, addr(disk_id, disk_auno, extent_no):(0, 0, 2)->(0, 0, 5), need_init = 1. Used time: 00:00:02.244. ASM>init votedisk '/dev/raw/raw2' from '/dm8/data/dmdcr_cfg.ini' [Trace]DG 125 alloc one extent for inodes, addr(disk_id, disk_auno, extent_no):(0,0,1). [Trace]DG 125 allocate 4 extents for file 0xfd000002. [Trace]DG 125 alloc 4 extents for 0xfd000002, addr(disk_id, disk_auno, extent_no):(0, 0, 2)->(0, 0, 5), need_init = 1. Used time: 431.131(ms).
七.準備dmdcr.ini 配置檔案
dmdcr.ini 是 dmcss、dmasmsvr、dmasmtool 工具的輸入引數。記錄了當前節點序列號以及 DCR 磁碟路徑。在2個節點的/dm8/data目錄下建立dmdcr.ini 配置檔案,dmdcr_path 相同,dmasvrmal.ini 檔案內容也相同,dmdcr_seqo 分別為 0 和 1。
節點 1:
[dmdba@dm8dsc1 data]$ vi dmdcr.ini DMDCR_PATH = /dev/raw/raw1 DMDCR_SEQNO = 0 #DB DMDCR_DB_RESTART_INTERVAL = 0 DMDCR_DB_STARTUP_CMD = /dm8/bin/dmserver path=/dm8/data/dsc0_config/dm.ini dcr_ini=/dm8/data/dmdcr.ini
節點2:
[dmdba@dm8dsc2 data]$ vi dmdcr.ini DMDCR_PATH = /dev/raw/raw1 DMDCR_SEQNO = 1 #DB DMDCR_DB_RESTART_INTERVAL = 0 DMDCR_DB_STARTUP_CMD = /dm8/bin/dmserver path=/dm8/data/dsc1_config/dm.ini dcr_ini=/dm8/data/dmdcr.ini
八.啟動DMCSS服務程式
1、註冊 DMCSS
節點一:
[root@dm8dsc1 ~]# /dm8/script/root/dm_service_installer.sh -t dmcss -dcr_ini /dm8/data/dmdcr.ini -p dsc1 Created symlink from /etc/systemd/system/multi-user.target.wants/DmCSSServicedsc1.service to /usr/lib/systemd/system/DmCSSServicedsc1.service. Finished to create the service (DmCSSServicedsc1)
節點二:
[root@dm8dsc2 ~]# /dm8/script/root/dm_service_installer.sh -t dmcss -dcr_ini /dm8/data/dmdcr.ini -p dsc2 Created symlink from /etc/systemd/system/multi-user.target.wants/DmCSSServicedsc2.service to /usr/lib/systemd/system/DmCSSServicedsc2.service. Finished to create the service (DmCSSServicedsc2)
2、啟動DMCSS 服務
節點一:
[root@dm8dsc1 ~]# service DmCSSServicedsc1 start Redirecting to /bin/systemctl start DmCSSServicedsc1.service [root@dm8dsc1 ~]# service DmCSSServicedsc1 status Redirecting to /bin/systemctl status DmCSSServicedsc1.service DmCSSServicedsc1.service - DM Cluster Synchronization Services Service(DmCSSServicedsc1). Loaded: loaded (/usr/lib/systemd/system/DmCSSServicedsc1.service; enabled; vendor preset: disabled) Active: active (running) since Wed 2021-12-08 17:19:47 CST; 38s ago Process: 3776 ExecStart=/dm8/bin/DmCSSServicedsc1 start (code=exited, status=0/SUCCESS) Main PID: 3800 (dmcss) Tasks: 9 CGroup: /system.slice/DmCSSServicedsc1.service └─3800 /dm8/bin/dmcss dcr_ini=/dm8/data/dmdcr.ini Dec 08 17:19:32 dm8dsc1 systemd[1]: Starting DM Cluster Synchronization Services Service(DmCSSServicedsc1).... Dec 08 17:19:47 dm8dsc1 DmCSSServicedsc1[3776]: [38B blob data] Dec 08 17:19:47 dm8dsc1 systemd[1]: Started DM Cluster Synchronization Services Service(DmCSSServicedsc1)..
節點二:
[root@dm8dsc2 ~]# service DmCSSServicedsc2 start Redirecting to /bin/systemctl start DmCSSServicedsc2.service [root@dm8dsc2 ~]# service DmCSSServicedsc2 status Redirecting to /bin/systemctl status DmCSSServicedsc2.service DmCSSServicedsc2.service - DM Cluster Synchronization Services Service(DmCSSServicedsc2). Loaded: loaded (/usr/lib/systemd/system/DmCSSServicedsc2.service; enabled; vendor preset: disabled) Active: active (running) since Wed 2021-12-08 17:20:19 CST; 13s ago Process: 3546 ExecStart=/dm8/bin/DmCSSServicedsc2 start (code=exited, status=0/SUCCESS) Main PID: 3569 (dmcss) Tasks: 9 CGroup: /system.slice/DmCSSServicedsc2.service └─3569 /dm8/bin/dmcss dcr_ini=/dm8/data/dmdcr.ini Dec 08 17:20:04 dm8dsc2 systemd[1]: Starting DM Cluster Synchronization Services Service(DmCSSServicedsc2).... Dec 08 17:20:19 dm8dsc2 DmCSSServicedsc2[3546]: [38B blob data] Dec 08 17:20:19 dm8dsc2 systemd[1]: Started DM Cluster Synchronization Services Service(DmCSSServicedsc2)..
九.作業系統配置準備配置dminit.ini檔案,存放在/dm8/data目錄中(資料檔案儲存在/dev/raw/raw3-6裸裝置上,日誌檔案儲存在/dev/raw/raw7-10
[dmdba@dm8dsc1 data]$ vi dminit.ini system_path = /dm8/data db_name=dsc main = /dev/raw/raw3 main_size = 128 roll = /dev/raw/raw4 roll_size = 128 system = /dev/raw/raw5 system_size = 128 ctl_path = /dev/raw/raw6 ctl_size = 8 dcr_path=/dev/raw/raw1 dcr_seqno=0 [dsc0] config_path=/dm8/data/dsc0_config port_num = 5236 mal_host = 11.11.11.3 mal_port = 9340 log_size = 256 log_path = /dev/raw/raw7 log_path = /dev/raw/raw8 [dsc1] config_path=/dm8/data/dsc1_config port_num = 5236 mal_host = 11.11.11.4 mal_port = 9341 log_size = 256 log_path = /dev/raw/raw9 log_path = /dev/raw/raw10
十、作業系統配置使用dminit初始化DB環境
在任意節點啟動 dminit 工具初始化資料庫。dminit 執行完成後,會在 config_path 目錄(/dm8/data/dsc0_config 和/dm8/data/dsc1_config)下生成配置檔案 dm.ini 和 dmmal.ini。
[dmdba@dm8dsc1 data]$ dminit control=/dm8/data/dminit.ini initdb V8 db version: 0x7000c file dm.key not found, use default license! License will expire on 2022-10-21 Normal of FAST Normal of DEFAULT Normal of RECYCLE Normal of KEEP Normal of ROLL log file path: /dev/raw/raw7 log file path: /dev/raw/raw8 log file path: /dev/raw/raw9 log file path: /dev/raw/raw10 FILE "/dev/raw/raw5" has already existed FILE "/dev/raw/raw4" has already existed FILE "/dev/raw/raw3" has already existed FILE "/dev/raw/raw6" has already existed FILE "/dev/raw/raw7" has already existed FILE "/dev/raw/raw8" has already existed FILE "/dev/raw/raw9" has already existed FILE "/dev/raw/raw10" has already existed File "/dev/raw/raw5" has already existed, whether overwrite(y/n, 1/0): y File "/dev/raw/raw4" has already existed, whether overwrite(y/n, 1/0): y File "/dev/raw/raw3" has already existed, whether overwrite(y/n, 1/0): y File "/dev/raw/raw6" has already existed, whether overwrite(y/n, 1/0): y File "/dev/raw/raw7" has already existed, whether overwrite(y/n, 1/0): y File "/dev/raw/raw8" has already existed, whether overwrite(y/n, 1/0): y File "/dev/raw/raw9" has already existed, whether overwrite(y/n, 1/0): y File "/dev/raw/raw10" has already existed, whether overwrite(y/n, 1/0): y write to dir [/dm8/data/dsc]. create dm database success. 2021-12-08 17:30:36 [dmdba@dm8dsc1 data]$ ls -lrt total 12 -rw-r--r-- 1 dmdba dinstall 563 Dec 8 16:49 dmdcr_cfg.ini -rw-r--r-- 1 dmdba dinstall 182 Dec 8 17:05 dmdcr.ini -rw-r--r-- 1 dmdba dinstall 546 Dec 8 17:28 dminit.ini drwxr-xr-x 2 dmdba dinstall 87 Dec 8 17:30 dsc0_config drwxr-xr-x 2 dmdba dinstall 55 Dec 8 17:30 dsc1_config drwxr-xr-x 5 dmdba dinstall 70 Dec 8 17:30 dsc
將節點一的配置檔案複製到節點二:
[dmdba@dm8dsc1 data]$ scp -r dsc1_config 10.10.13.206:`pwd` The authenticity of host '10.10.13.206 (10.10.13.206)' can't be established. ECDSA key fingerprint is SHA256:6O8c9WEeEYPbL4ncdRR1RsrjxxmfzPq9Tkq4/6uLSP4. ECDSA key fingerprint is MD5:e1:73:3e:8d:79:be:5c:82:0f:c7:58:79:45:ad:df:86. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '10.10.13.206' (ECDSA) to the list of known hosts. dmdba@10.10.13.206's password: dmmal.ini 100% 200 17.0KB/s 00:00 dm.ini 100% 52KB 2.2MB/s 00:00 sqllog.ini 100% 481 53.4KB/s 00:00
一定要將節點一/dm8/data/目錄中生成的dsc目錄複製到節點二的/dm8/data目錄中,否則在節點二中啟動資料庫時會出現以下錯誤,原因就是因為使用裸裝置時生成的dsc目錄及其檔案不是儲存在共享儲存中可以讓叢集節點都能訪問。
Starting DmServicerac2: [ FAILED ] file dm.key not found, use default license! Read ini warning, default dm.ctl backup path [/dm8/data/dsc/ctl_bak] does not exist. Read ini error, name:SYSTEM_PATH, value:/dm8/data/dsc dmserver startup failed, code = -803 [Invalid ini config value]
將節點一/dm8/data/目錄中生成的dsc目錄複製到節點二的/dm8/data目錄
[dmdba@dm8dsc1 data]$ scp -r dsc 10.10.13.206:`pwd` dmdba@10.10.13.206's password: dm_20211208173029_111982.ctl 100% 6144 493.8KB/s 00:00 dm_service.prikey 100% 633 57.0KB/s 00:00
十一. 啟動資料庫伺服器
1、在2個節點分別註冊DM 資料庫服務:
節點一:
[root@dm8dsc1 init.d]# /dm8/script/root/dm_service_installer.sh -t dmserver -dm_ini /dm8/data/dsc0_config/dm.ini -dcr_ini /dm8/data/dmdcr.ini -p dsc1 dmserver(RAC) need to be set the dependent service(dmasmsvr)!
提示需要依賴服務dmasmsvr,但使用裸裝置沒有配置dmasm例項,所以只能手動啟動服務
手工啟動命令如下,手工啟動後視窗不能關閉
[dmdba@dm8dsc1 ~]$ dmserver /dm8/data/dsc0_config/dm.ini dcr_ini=/dm8/data/dmdcr.ini & [dmdba@dm8dsc2 ~]$ dmserver /dm8/data/dsc1_config/dm.ini dcr_ini=/dm8/data/dmdcr.ini &
如果DMCSS配置有自動拉起dmserver的功能,可以等待DMCSS自動拉起例項,不需要手動啟動。在dmdcr.ini檔案中配置如下選項
#DB DMDCR_DB_RESTART_INTERVAL = 10 DMDCR_DB_STARTUP_CMD = /dm8/bin/dmserver path=/dm8/data/dsc0_config/dm.ini dcr_ini=/dm8/data/dmdcr.ini
十二.連線資料庫驗證
1.配置服務名檔案
[dmdba@dm8dsc1 ~]$ vi /etc/dm_svc.conf TIME_ZONE=(480) LANGUAGE=(en) rac=(10.10.13.205:5236,10.10.13.206:5236) SWITCH_TIME=(10000) SWITCH_INTERVAL=(10) [dmdba@dm8dsc2 ~]$ vi /etc/dm_svc.conf TIME_ZONE=(480) LANGUAGE=(en) rac=(10.10.13.205:5236,10.10.13.206:5236) SWITCH_TIME=(10000) SWITCH_INTERVAL=(10)
2.連線RAC叢集
節點一:
[dmdba@dm8dsc1 ~]$ disql SYSDBA/SYSDBA@rac Server[10.10.13.205:5236]:mode is normal, state is open login used time : 4.303(ms) disql V8 SQL> select * from v$instance; LINEID NAME INSTANCE_NAME INSTANCE_NUMBER HOST_NAME SVR_VERSION DB_VERSION START_TIME STATUS$ MODE$ OGUID DSC_SEQNO DSC_ROLE ---------- ---- ------------- --------------- --------- -------------------------- ------------------- ------------------- ------- ------ ----------- ----------- ------------ 1 DSC0 DSC0 1 dm8dsc1 DM Database Server x64 V8 DB Version: 0x7000c 2021-12-09 12:56:06 OPEN NORMAL 0 0 Control node used time: 6.832(ms). Execute id is 400. SQL> select * from v$dsc_ep_info; LINEID EP_NAME EP_SEQNO EP_GUID EP_TIMESTAMP EP_MODE EP_STATUS ---------- ------- ----------- -------------------- -------------------- ------------ --------- 1 DSC0 0 2477818562 2477826305 Control Node OK 2 DSC1 1 2477823752 2477831486 Normal Node OK used time: 1.221(ms). Execute id is 401. SQL>
節點二:
[dmdba@dm8dsc2 ~]$ disql SYSDBA/SYSDBA@rac Server[10.10.13.205:5236]:mode is normal, state is open login used time : 3.048(ms) disql V8 SQL> select * from v$instance; LINEID NAME INSTANCE_NAME INSTANCE_NUMBER HOST_NAME SVR_VERSION DB_VERSION START_TIME STATUS$ MODE$ OGUID DSC_SEQNO DSC_ROLE ---------- ---- ------------- --------------- --------- -------------------------- ------------------- ------------------- ------- ------ ----------- ----------- ------------ 1 DSC0 DSC0 1 dm8dsc1 DM Database Server x64 V8 DB Version: 0x7000c 2021-12-09 12:56:06 OPEN NORMAL 0 0 Control node used time: 5.261(ms). Execute id is 500. SQL> select * from v$dsc_ep_info; LINEID EP_NAME EP_SEQNO EP_GUID EP_TIMESTAMP EP_MODE EP_STATUS ---------- ------- ----------- -------------------- -------------------- ------------ --------- 1 DSC0 0 2477818562 2477826342 Control Node OK 2 DSC1 1 2477823752 2477831523 Normal Node OK used time: 1.499(ms). Execute id is 501.
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26015009/viewspace-2871091/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- DM7使用裸裝置搭建DMRAC
- DM8使用共享儲存DMASM搭建DMRACASM
- oracle安裝使用裸裝置問題Oracle
- 字元裝置、塊裝置與裸裝置字元
- 字元裝置、塊裝置、裸裝置、RAW裝置 .字元
- linux下裸裝置的使用Linux
- Linux使用udev繫結裸裝置Linuxdev
- 建立裸裝置庫
- raw 裸裝置資料檔案更改其他raw裸裝置位置
- udev 裸裝置 安裝racdev
- 裸裝置、字元裝置、塊裝置不全面比較字元
- 裸裝置與塊裝置的區別
- linux 使用裸裝置建立表空間Linux
- AIX中的裸裝置AI
- oracle 裸裝置(轉載)Oracle
- 為ASM生成裸裝置ASM
- linux裸裝置操作Linux
- oracle11Gr2安裝ASM,使用裸裝置OracleASM
- DM7使用DMASM安裝DMRACASM
- Linux裸裝置總結Linux
- 【儲存】裸裝置和OracleOracle
- linux下新增裸裝置Linux
- 裸裝置基礎知識
- linux下配置裸裝置Linux
- rhel 7.x 使用 udev scsi rules 配置裸裝置dev
- linux下使用裸裝置建立oracle表空間LinuxOracle
- oracle9.2.0在RHEL中建庫使用裸裝置Oracle
- aix5.3上使用裸裝置建立表空間AI
- linux udev裸裝置繫結Linuxdev
- Linux-建立裸裝置RawLinux
- Linux裸裝置管理詳解Linux
- 裸裝置基礎知識(轉)
- Linux裸裝置管理學習Linux
- Linux裸裝置總結(ZT)Linux
- LINUX下裸裝置的操作Linux
- LINUX裸裝置取消繫結Linux
- vmware + 裸裝置 + crs + oracle10g RAC搭建步驟(二):安裝linuxOracleLinux
- 用裸裝置安裝RAC 10g