1. 程式人生 > 其它 >單機部署達夢8+定時備份

單機部署達夢8+定時備份

單機部署比較簡單,之前沒打算整理出一篇部落格,但是後來發現每個人的習慣不同,部署方式、部署目錄等有些區別,現在參考其他同事的習慣,總結出一個適合自己的部署方式。

1. 環境部署說明

1.1 軟硬體資源

1.1.1常用命令

1.1.1.1檢視是否支援圖形化

rpm -qa | grep -i xorg-x11

沒有任何輸出的話就是不支援圖形化。

1.1.1.2檢視系統發行版本

cat /etc/redhat-release

1.1.1.3查cup

lscpu

1.1.1.4處理器

cat /proc/cpuinfo

只有一個英特爾處理器.

1.1.1.5記憶體大小

free -g

1.1.1.6虛擬機器還是物理機

dmidecode -s system-product-name

或者lshw -class system

或者dmesg | grep -i virtual

如果結果返回包含virtual,則是虛擬機器

1.1.2配置資訊

(1)伺服器配置:

硬體類別

硬體名稱

配置

數量

備註

資料伺服器

虛擬機器

CPU:x86_64

OS: CentOS Linux release 7.5.1804 (Core)

核數:1

記憶體:1GB

1

(2)軟體配置資訊如下:

軟體類別

作業系統

備註

達夢資料庫

dm8_20210618_x86_rh7_64_ent_8.1.2.18_pack3

(3)網路IP規劃

伺服器類別

IP1地址

IP2地址

備註

英特爾伺服器1

192.168.202.133

(4)目錄與儲存規劃

目錄

說明

容量

/home/dmdba/dmdbms

軟體程式安裝目錄

/home/dmdba/dmdbms/bin

達夢執行程式所在目錄

/home/dmdba/dmdbms/data/DAMENG

存放資料庫檔案(資料檔案、REDO日誌檔案、控制檔案等)

/home/dmdba/dmdbms/data/ DAMENG /arch

存放歸檔日誌

/home/dmdba/dmdbms/data/DAMENG/bak

存放資料庫備份

1.2 資料庫部署環境

現場共部署1臺達夢資料庫單機。

初始化資訊:./dminit path=/home/dmdba/dmdbms/data case_sensitive=n

1.2.1伺服器部署環境說明

1)配置資訊

資料庫配置詳情

IP地址

初始狀態

預設使用者名稱/密碼:埠號

啟動服務

192.168.202.133

單機

DMSERVER

SYSDBA/SYSDBA:5236

啟動例項:

systemctl start DmServiceDMSERVER

停止例項:

systemctl stop DmServiceDMSERVER

2.安裝達夢資料庫

2.1安裝達夢資料庫管理系統DM8.1

[root@dameng1 home]# groupadd dinstall

[root@dameng1 home]# useradd -g dinstall dmdba

[root@dameng1 home]# vi /etc/security/limits.conf

* hard nonfile 65536
* soft nonfile 65536

[root@dameng1 mnt]# su - dmdba

dmdba口令:略

[dmdba@dameng1 dmdba]$ ./DMInstall.bin -i

[dmdba@dameng1 soft]$ ./DMInstall.bin -i
Please select the installer's language (E/e:English C/c:Chinese) [E/e]:c
解壓安裝程式..........
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 7190
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) 4096
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited
可開啟檔案數過少,建議至少設定為65536或更多。
歡迎使用達夢資料庫安裝程式
是否輸入Key檔案路徑? (Y/y:是 N/n:否) [Y/y]:n
是否設定時區? (Y/y:是 N/n:否) [Y/y]:n
安裝型別:
1 典型安裝
2 伺服器
3 客戶端
4 自定義
請選擇安裝型別的數字序號 [1 典型安裝]:
所需空間: 1263M
請選擇安裝目錄 [/home/dmdba/dmdbms]:
可用空間: 6G
是否確認安裝路徑(/home/dmdba/dmdbms)? (Y/y:是 N/n:否)  [Y/y]:y

安裝前小結
安裝位置: /home/dmdba/dmdbms
所需空間: 1263M
可用空間: 6G
版本資訊:
有效日期:
安裝型別: 典型安裝
是否確認安裝? (Y/y:是 N/n:否):y
2021-08-09 09:29:42
[INFO] 安裝達夢資料庫...
2021-08-09 09:29:42
[INFO] 安裝 基礎 模組...
2021-08-09 09:30:11
[INFO] 安裝 伺服器 模組...
2021-08-09 09:30:17
[INFO] 安裝 客戶端 模組...
2021-08-09 09:30:55
[INFO] 安裝 驅動 模組...
2021-08-09 09:31:14
[INFO] 安裝 手冊 模組...
2021-08-09 09:31:22
[INFO] 安裝 服務 模組...
2021-08-09 09:31:28
[INFO] 移動日誌檔案。
2021-08-09 09:31:28
[INFO] 安裝達夢資料庫完成。

請以root系統使用者執行命令:
/home/dmdba/dmdbms/script/root/root_installer.sh

安裝結束

 
[root@dameng1 bin]# cd /home
[root@dameng1 home]# /home/dmdba/dmdbms/script/root/root_installer.sh
移動 /home/dmdba/dmdbms/bin/dm_svc.conf 到/etc目錄
mv: cannot stat ‘/home/dmdba/dmdbms/bin/dm_svc.conf’: No such file or directory
修改伺服器許可權
建立DmAPService服務
建立服務(DmAPService)完成
啟動DmAPService服務

注意:我一開始做個解除安裝操作,在root使用者下注冊DmAPService服務的時候報錯,如下圖:

該錯誤表示 getcwd 命令無法定位到當前工作目錄。一般來說是因為你 cd 到了某個目錄之後 rm 了這個目錄,這時去執行某些 service 指令碼的時候就會報 getcwd 錯誤。只需要 cd 到任何一個實際存在的目錄下在執行命令即可。我的處理方法是cd到home下再執行。

2.2建立資料庫

[dmdba@dameng1 /]$ cd /home/dmdba/dmdbms/bin

[dmdba@dameng1 bin]$ ./dminit path=/home/dmdba/dmdbms/data case_sensitive=n

[dmdba@dameng1 bin]$ ./dminit path=/home/dmdba/dmdbms/data CASE_SENSITIVE=n

initdb V8
db version: 0x7000c
file dm.key not found, use default license!
License will expire on 2022-06-17
Normal of FAST
Normal of DEFAULT
Normal of RECYCLE
Normal of KEEP
Normal of ROLL

 log file path: /home/dmdba/dmdbms/data/DAMENG/DAMENG01.log
 log file path: /home/dmdba/dmdbms/data/DAMENG/DAMENG02.log
write to dir [/home/dmdba/dmdbms/data/DAMENG].
create dm database success. 2021-08-09 09:39:38

2.3啟動達夢資料庫服務

[dmdba@dameng1 bin]$ ./dmserver /home/dmdba/dmdbms/data/DAMENG/dm.ini

file dm.key not found, use default license!
version info: develop
DM Database Server x64 V8 1-2-18-21.06.17-141777-10013-ENT  startup...
Normal of FAST
Normal of DEFAULT
Normal of RECYCLE
Normal of KEEP
Normal of ROLL
Database mode = 0, oguid = 0
License will expire on 2022-06-17
file lsn: 0
ndct db load finished
ndct fill fast pool finished
iid page's trxid[1002]
NEXT TRX ID = 1003
pseg_collect_mgr_items, total collect 0 active_trxs, 0 cmt_trxs, 0 pre_cmt_trxs, 0 active_pages, 0 cmt_pages, 0 pre_cmt_pages, 0 mgr pages, 0 mgr recs!
total 0 active crash trx, pseg_crash_trx_rollback sys_only(0) begin ...
pseg_crash_trx_rollback end, total 0 active crash trx, include 0 empty_trxs, 0 empty_pages which only need to delete mgr recs.
pseg_crash_trx_rollback end
pseg recv finished
nsvr_startup end.
aud sys init success.
aud rt sys init success.
trx: 2004 purged 1 pages
trx: 2023 purged 1 pages
trx: 2024 purged 1 pages
trx: 2025 purged 1 pages
trx: 2026 purged 1 pages
trx: 2036 purged 1 pages
trx: 2156 purged 1 pages
trx: 2169 purged 1 pages
trx: 2170 purged 1 pages
trx: 2171 purged 1 pages
trx: 2172 purged 1 pages
trx: 2173 purged 1 pages
trx: 2175 purged 1 pages
trx: 2176 purged 1 pages
trx: 2178 purged 1 pages
trx: 2180 purged 1 pages
trx: 2186 purged 1 pages
trx: 2192 purged 1 pages
trx: 2202 purged 1 pages
trx: 2215 purged 1 pages
trx: 2216 purged 1 pages
trx: 2217 purged 1 pages
trx: 2218 purged 1 pages
trx: 2230 purged 1 pages
trx: 2232 purged 1 pages
trx: 2233 purged 1 pages
trx: 2234 purged 1 pages
trx: 2247 purged 1 pages
trx: 2250 purged 23 pages
trx: 2277 purged 1 pages
trx: 2278 purged 1 pages
trx: 2279 purged 1 pages
trx: 2280 purged 1 pages
trx: 2286 purged 1 pages
trx: 2288 purged 1 pages
trx: 2290 purged 1 pages
trx: 2295 purged 1 pages
trx: 2300 purged 1 pages
trx: 2305 purged 1 pages
trx: 2307 purged 1 pages
trx: 2310 purged 1 pages
trx: 2312 purged 1 pages
trx: 2318 purged 1 pages
trx: 2319 purged 1 pages
trx: 2468 purged 1 pages
trx: 2494 purged 8 pages
trx: 2516 purged 1 pages
systables desc init success.
ndct_db_load_info success.
nsvr_process_before_open begin.
nsvr_process_before_open success.
total 0 active crash trx, pseg_crash_trx_rollback sys_only(0) begin ...
pseg_crash_trx_rollback end, total 0 active crash trx, include 0 empty_trxs, 0 empty_pages which only need to delete mgr recs.
pseg_crash_trx_rollback end
SYSTEM IS READY.

2.4 註冊資料庫服務

2.4.1 註冊資料庫例項服務

[root@dameng1 home]# cd /home/dmdba/dmdbms/script/root

[root@dameng1 root]# ls

dm_service_installer.sh  dm_service_uninstaller.sh  root_installer.sh

[root@dameng1 root]# ./dm_service_installer.sh -t dmserver -p DMSERVER -dm_ini /home/dmdba/dmdbms/data/DAMENG/dm.ini

建立服務(DmServiceDMSERVER)完成

注意:

1、 必須用root使用者註冊服務

2、 如果不知道註冊服務的命令,可以./dm_service_installer.sh -h檢視幫助。

2.4.2用服務方式啟動資料庫

[dmdba@dameng1 root]$ cd /home/dmdba/dmdbms/bin

[dmdba@dameng1 bin]$ ./DmServiceDMSERVER start

Starting DmServiceDMSERVER:                                [ OK ]

注意:

1、 啟動服務最好用dmdba使用者

2、 還可以用systemctl start DmServiceDMSERVER在任意目錄啟動資料庫。

2.4.3驗證是否啟動成功

[dmdba@dameng1 bin]$ ./disql
disql V8
使用者名稱:
密碼:
伺服器[LOCALHOST:5236]:處於普通開啟狀態
登入使用時間 : 24.605(ms)
SQL> exit;

注意:

1、 安裝的時候沒有修改使用者名稱密碼,則預設直接回車即可,預設(SYSDBA/ SYSDBA)

2、 用服務的方式驗證

2.5定時備份

2.5.1開啟歸檔

ALTER DATABASE MOUNT;
ALTER DATABASE ADD ARCHIVELOG 'DEST = home/dmdba/dmdbms/data/DAMENG/arch, TYPE = local,FILE_SIZE = 1024, SPACE_LIMIT = 2048';
ALTER DATABASE ARCHIVELOG;
ALTER DATABASE OPEN;
select arch_mode from v$database;--檢視是否開啟歸檔

2.5.2全庫備份

backup database full to "DB_DAMENG_FULL_2021_08_09_10_21_15" backupset '/home/dmdba/dmdbms/data/DAMENG/bak/DB_DAMENG_FULL_2021_08_09_10_21_15';

注意,我執行全庫備份時報如下錯誤:

解決方式:

[dmdba@dameng1 bin]$ ./DmServiceDMSERVER stop

Stopping DmServiceDMSERVER:                                [ OK ]

[dmdba@dameng1 bin]$ ./dmrman
dmrman V8
RMAN> repair archivelog database '/home/dmdba/dmdbms/data/DAMENG/dm.ini';
repair archivelog database '/home/dmdba/dmdbms/data/DAMENG/dm.ini'; Database mode = 0, oguid = 0 Normal of FAST Normal of DEFAULT Normal of RECYCLE Normal of KEEP Normal of ROLL EP[0]'s cur_lsn[29463], file_lsn[29463] repair archive log successfully. repair time used: 212.885(ms) time used: 225.800(ms) RMAN> exit time used: 0.505(ms)
[dmdba@dameng1 bin]$ ./DmServiceDMSERVER start Starting DmServiceDMSERVER: [ OK ]
修復歸檔後再備份就成功了。

2.5.3建立代理環境

SP_INIT_JOB_SYS(1);

注意:

1、 如果不建立代理環境,會報如下錯誤

2、 關閉代理環境

SP_INIT_JOB_SYS(10);

2.5.3定時增量備份

每週一到週六23點執行增量備份。

call SP_CREATE_JOB('增量備份',1,0,'',0,0,'',0,'');
call SP_JOB_CONFIG_START('增量備份');
call SP_ADD_JOB_STEP('增量備份', 'Step1', 6, '11000000/home/dmdba/dmdbms/data/DAMENG/bak|/home/dmdba/dmdbms/data/DAMENG/bak', 0, 0, 0, 0, NULL, 0);
call SP_ADD_JOB_SCHEDULE('增量備份', 'Step2', 1, 2, 1, 126, 0, '23:00:00', NULL, '2021-08-09 11:00:16', NULL, '');
call SP_JOB_CONFIG_COMMIT('增量備份');

2.5.3定時全庫備份

每週日22點進行全庫備份

call SP_CREATE_JOB('全庫備份',1,0,'',0,0,'',0,'');
call SP_JOB_CONFIG_START('全庫備份');
call SP_ADD_JOB_STEP('全庫備份', 'Step1', 6, '01000000/home/dmdba/dmdbms/data/DAMENG/bak', 0, 0, 0, 0, NULL, 0);
call SP_ADD_JOB_SCHEDULE('全庫備份', 'Step2', 1, 2, 1, 1, 0, '22:00:00', NULL, '2021-08-09 11:02:31', NULL, '');
call SP_JOB_CONFIG_COMMIT('全庫備份');

2.6修改redo日誌大小

單位是M

ALTER DATABASE RESIZE LOGFILE '/home/dmdba/dmdbms/data/DAMENG/DAMENG01.log' to 2048;

ALTER DATABASE RESIZE LOGFILE '/home/dmdba/dmdbms/data/DAMENG/DAMENG02.log' to 2048;

3.配置服務名

編輯dm_svc.conf,新增如下內容:

# 全域性配置區
NORMAL=(127.0.0.1:5236)
TIME_ZONE=(+480) #表示+8:00 時區
LOGIN_ENCRYPT=(0)
DIRECT=(Y)

# 服務配置區
# 常規環境,兩個沒有關係的 IP
[ NORMAL ]
TIME_ZONE=(+540) #表示+9:00 時區
LOGIN_MODE=(4)
SWITCH_TIMES=(3)
SWITCH_INTERVAL=(100)

4.其他

我是在虛擬機器裡建立的達夢資料庫,為了節省空間,未支援圖形化,所以不能在bin下./manager開啟管理工具.但是,我本地安裝了達夢資料庫,可以用我本地的manager連線虛擬機器裡的資料庫例項,如下圖,可以看到我新建的資料庫備份以及作業.

更多資訊請上達夢技術社群瞭解: https://eco.dameng.com