当前位置: 首页 > news >正文

达梦数据库在Linux,信创云 安装,备份,还原

(一)系统环境检查
1操作系统:确认使用的是国产麒麟操作系统,检查系统版本是否兼容达梦数据库 V8。可以通过以下命令查看系统版本:
cat /etc/os-release

2硬件资源:确保服务器具备足够的硬件资源,建议最低配置为:
CPU:2 核及以上
内存:4GB 及以上
磁盘空间:安装目录至少需要 2GB 可用空间,数据存储目录根据实际需求预留足够空间。


命令
(一)挂载资源cd /opt 切换到 opt 目录:把对应安装包放入上去
安装包拖拽到 opt
安装前必须创建 dmdba 用户,禁止使用 root 用户安装数据库
(二)创建用户和用户组
为了安全和管理方便,创建专门的用户和用户组来安装和运行达梦数据库。
1.创建用户所在的组,命令如下:
groupadd dinstall -g 2001

2.创建用户,命令如下:
useradd  -G dinstall -m -d /home/dmdba -s /bin/bash -u 2001 dmdba

3.修改用户密码,命令如下:
passwd dmdba
passwd Dameng123

(三)、修改文件打开最大数
1.limits.conf追加参数 使用 root 用户

vi /etc/security/limits.conf

# 追加
dmdba  soft      nice       0
dmdba  hard      nice       0
dmdba  soft      as         unlimited
dmdba  hard      as         unlimited
dmdba  soft      fsize      unlimited
dmdba  hard      fsize      unlimited
dmdba  soft      nproc      65536
dmdba  hard      nproc      65536
dmdba  soft      nofile     65536
dmdba  hard      nofile     65536
dmdba  soft      core       unlimited
dmdba  hard      core       unlimited
dmdba  soft      data       unlimited
dmdba  hard      data       unlimited


修改配置文件后重启服务器生效

切换到 dmdba 用户,查看是否生效
su - dmdba
ulimit -a
看到上面的65536对应上了就好


(四)目录
默认配置 DM 数据库安装在 /home/dmdba 文件夹下
##实例保存目录
mkdir -p /dmdata/data 
##归档保存目录
mkdir -p /dmdata/arch
##备份保存目录
mkdir -p /dmdata/dmbak

4.1修改目录权限
将新建的路径目录权限的用户修改为 dmdba,用户组修改为 dinstall。命令如下:

chown -R dmdba:dinstall /dmdata/data
chown -R dmdba:dinstall /dmdata/arch
chown -R dmdba:dinstall /dmdata/dmbak

给路径下的文件设置 755 权限。命令如下:
chmod -R 755 /dmdata/data
chmod -R 755 /dmdata/arch
chmod -R 755 /dmdata/dmbak

4.进行安装(opt是上传的路径,mnt是解压包安装路径)
切换到 root 用户,将 DM 数据库的 iso 安装包保存在任意位置,例如 /opt 目录下,执行如下命令挂载镜像:
cd  /opt
mount -o loop dm8_20240116_x86_rh7_64.iso /mnt

切换至 dmdba 用户
su - dmdba
cd /mnt

执行安装命令:
./DMInstall.bin -i

回答
1 y y 21 1 y


从这里开始都是用root用户进行操作
su - root

创建 DmAPService,否则会影响数据库备份
/home/dmdba/dmdbms/script/root/root_installer.sh


5.配置环境变量
切换到root用进入dmdba用户根目录下,配置相对应环境变量,DM_HOME会在数据库安装完成之后自动导入
cd /home/dmdba/
vi .bash_profile


su - dmdba
source .bash_profile


三、配置实例
cd /home/dmdba/dmdbms/bin

开始配置实例,初始化实例参数
./dminit path=/dmdata/data PAGE_SIZE=32 EXTENT_SIZE=32 CASE_SENSITIVE=N 
CHARSET=1 DB_NAME=DMTEST INSTANCE_NAME=DBSERVER PORT_NUM=5237 BUFFER=2048 
SYSDBA_PWD=MyDb@2025Pass SYSAUDITOR_PWD=Audit@2025Secure


四、注册成服务
注册服务需要使用root用户注册,使用root用户进入数据库的安装目录的 /script/root下
cd /home/dmdba/dmdbms/script/root/    
注意:
配置的路径中的DAMENG就是第三步配置的名称,检查第三步所配置的是否一致 
DMSERVER是即将被注册成服务的服务名

./dm_service_installer.sh -t dmserver -dm_ini /dmdata/data/DMTEST/dm.ini -p DMTEST

备注(安装路径)
cd /home/dmdba/dmdbms/bin

五、启动、停止、重启数据库
自动开机开启服务
systemctl enable DmServiceDMTEST.service

systemctl start DmServiceDMTEST.service
systemctl stop  DmServiceDMTEST.service
systemctl status DmServiceDMTEST.service

或者目录启动
cd /home/dmdba/dmdbms/bin
./DmServiceDMTEST stop


查看是否打开防火墙,如果打开了,需要放开端口,不然不能访问
firewall-cmd --zone=public --add-port=5237/tcp --permanent (permanent永久生效,没有此参数重启后失效)
sudo firewall-cmd --reload
sudo firewall-cmd --list-all

测试访问

页面设置定时备份:一周一个全量,一天一个增量

删除30天前的数据代理脚本
call SF_BAKSET_BACKUP_DIR_ADD('DISK', '/data/dmdata/dmbak');
CALL SP_DB_BAKSET_REMOVE_BATCH('DISK', NOW()-30);

查找
find / -name "dm.ini" 2>/dev/null
find / -name "dmdbms" 2>/dev/null

文件查找/ n是下一个, sheft+n是上一个


--修改最大访问数MAX_SESSIONS 
vi /dmdbms/data/DAMENG/dm.ini

--设置账号密码
./dminit path=/dmdata/data PAGE_SIZE=32 EXTENT_SIZE=32 CASE_SENSITIVE=y CHARSET=1 DB_NAME=DMTEST INSTANCE_NAME=DBSERVER PORT_NUM=5237 SYSDBA_PWD=MyDb@2025Pass SYSAUDITOR_PWD=Audit@2025Secure

1恢复全量数据命令
CHECK BACKUPSET '/opt/DB_CDMZHD_FULL_2025_03_01_23_00_42.bak';
RESTORE DATABASE '/dmdata/data/DMTEST/dm.ini' FROM BACKUPSET '/opt/DB_CDMZHD_FULL_2025_03_01_23_00_42';

2恢复增量数据命令
RECOVER DATABASE '/dmdata/data/DMTEST/dm.ini' FROM BACKUPSET '/opt/DB_CDMZHD_FULL_2025_03_01_23_00_42';

3更新数据库
RECOVER DATABASE '/dmdata/data/DMTEST/dm.ini' UPDATE DB_MAGIC;
 

注意!这里的是文件夹目录(依据备份产生的数据来)

里面的数据是全部要复制到指定目录里面去的


--查看最大会话数
SELECT SF_GET_PARA_VALUE(2, 'MAX_SESSIONS');


-- 获取INI文件中的配置参数值
SELECT SF_GET_PARA_VALUE(1, 'MAX_SESSIONS') FROM DUAL;

-- 获取内存中的配置参数值
SELECT SF_GET_PARA_VALUE(2, 'MAX_SESSIONS') FROM DUAL;

--查看所有参数
SELECT * FROM V$DM_INI;

--获取CPU核心数
SELECT N_CPU FROM V$SYSTEMINFO;

--获取物理内存大小(GB)
SELECT TOTAL_PHY_SIZE/1024/1024/1024 AS TOTAL_MEMORY_MB FROM V$SYSTEMINFO;


DECLARE
  v_cpus INT;
  v_mem_mb INT;
BEGIN
  -- 获取CPU核心数
  SELECT N_CPU INTO v_cpus FROM V$SYSTEMINFO;

  -- 获取物理内存大小(GB)
  SELECT TOTAL_PHY_SIZE/1024/1024/1024 INTO v_mem_mb FROM V$SYSTEMINFO;

  -- 输出结果
  PRINT 'CPU Cores: ' || v_cpus;
  PRINT 'Total Memory (GB): ' || v_mem_mb;
END;


SELECT * FROM V$PARAMETER WHERE NAME LIKE '%SVR_LOG%';
SP_REFRESH_SVR_LOG_CONFIG();
sp_set_para_value(1,'SVR_LOG',1);

select * from v$parameter where name like 'SVR_LOG';

相关文章:

  • 在Vue中,onLoad,onShow ,mounted的区别
  • go并发学习笔记
  • Java 大视界 -- 基于 Java 的大数据实时数据处理框架性能评测与选型建议(121)
  • 美杜莎:带多个解码头的简单LLM推理加速框架
  • 《打造视频同步字幕播放网页:从0到1的技术指南》
  • 软考中级_【软件设计师】知识点之【面向对象】
  • 线程的常见使用方法
  • 硬件基础(4):(2)认识ADC参考电压
  • 当服务器出现卡顿该怎么办?
  • MELON的难题
  • 09第三方库的使用
  • 关于无感方波启动预定位阶段
  • PAT乙级真题(2014·冬)
  • JavaWeb-mysql8版本安装
  • 【SpringBoot】统一功能处理
  • vite.config.js 是Vite 项目的配置文件,分析具体用法
  • 消息队列为什么会有消费组的概念,什么作用,以订单系统为例说明
  • Vue _总结
  • AutoAWQ - 易用的 4 位量化模型工具
  • 栈在数组、链表中的应用 ---- 十进制转二进制函数、十进制转八进制函数
  • 公司网站一般去哪里做/如何创建自己的卡网
  • 怎么给公司做免费网站/网上教育培训机构排名
  • 白酒pc网站建设方案/2024年新冠疫情最新消息今天
  • 邯郸有建网站吗哪个公司好些/网页广告怎么投放
  • 越秀高端网站建设/谷歌优化教程
  • 广州微型网站建设/百度问答平台