注册
达梦DCP经验总结分享
培训园地/ 文章详情 /

达梦DCP经验总结分享

Shower 2025/09/01 124 0 0

在进行达梦数据库实例操作时,诸多关键环节需谨慎对待。创建数据库实例时,若采用命令行方式,无法创建示例库 。创建完成后,需留意数据库的部分关键设置,诸如页大小、簇大小、数据库字符集以及字符串大小敏感等信息,这些设置在数据库创建完成后便无法更改。当需兼容不同数据库时,对于 MySQL 和 Oracle 数据库,应勾选 “字符串大小敏感信息”,而 SQLserver 数据库对字符大小写不敏感,无需进行此项勾选 。
在数据库实例删除操作方面,若以 dmdba 用户执行,需切换至 /dm8/tool 目录下,执行./dbca.sh 命令来删除数据库实例 。但要注意,通过达梦配置助手删除数据库实例,仅适用于有数据库服务的实例,并且在删除前必须先停止相应的数据库服务。若采用命令行方式,可先执行命令 ps -ef |grep dmserver ,随后在 /dm8/tool 目录下,执行./dmservice.sh 查看数据库服务状态 。不过,该方法仅能查看已创建服务的数据库实例,并且若要使用 DM 服务查看器启动和关闭 DM 服务,需以 root 用户身份操作,因为只有 root 用户具备使用 DM 服务查看器修改数据库实例服务状态的权限,例如执行 DmServiceDMTEST04SERVER status 命令查看特定服务状态 。
在 Linux 环境下,若要使用数据库配置助手删除数据库实例,可在达梦安装目录下的 tool 文件夹中,通过命令./dbca.sh 启动该助手 。删除时,选择【删除数据库实例(D)】并点击【开始】按钮,接着可选择通过数据库实例名或指定数据库的配置文件来选定要删除的数据库标识 。确认要删除的数据库摘要信息无误后,点击【完成】按钮,此时系统会提示需以 root 用户身份执行脚本。删除数据库实例主要涉及两条命令:一是 systemctl disable XXX 数据库实例服务,用于停止数据库对应的服务;二是 rm -f /usr/lib/systemd/system/ 数据库实例服务,用于删除数据库实例对应的服务文件 。执行完上述命令后,点击执行配置脚本对话框上的【确定】按钮,即可完成数据库实例的删除操作 。但需明确,删除数据库实例是不可逆的操作,所有与该实例相关的数据都将丢失,因此在执行删除操作前,务必提前备份重要数据 。
此外,若要在虚拟机上安装达梦数据库并删除实例,可先通过 mkdir /dm8 创建安装目录,并使用 chown dmdba:dinstall /dm8 赋予权限 。通过 mkdir /mnt/dm 创建挂载点,利用 mount -o loop /path/to/dm8.iso/mnt/dm 挂载安装镜像 。安装完成后,使用 dminit 工具初始化数据库实例,例如 cd /mnt/dm 后 su - dmdba./dminit path=/dm8/data 设置数据库路径等参数 。若要注册数据库实例服务,可执行 systemctl enable dmserver,之后使用 systemctl start dmserver 启动数据库服务 。若需删除数据库实例,可登录为 SYSDBA 用户,使用 DELETE DATABASE <实例名>; 命令,或者使用./dmdropdb -y < 实例名 > 命令删除指定的数据库实例,这将一并删除所有的数据和日志文件 。删除完成后,还需清理环境,如使用 rm -rf /dm8/data 删除与实例相关的配置文件和目录,通过./DMUninstall.bin 卸载达梦数据库软件包,若不再需要相关用户和用户组,可使用 groupdel dinstall 和 userdel dmdba 进行清理 。最后,可通过检查端口是否释放或查看相关目录是否已清空来验证删除操作是否成功 。
在配置数据守护系统前,务必确保数据守护系统中各实例使用的 DM 服务器版本一致,同时各实例所在主机的操作系统位数、大小端模式、时区及时间设置也要保持一致 。此外,需使用同一个用户启动 DM 服务器和守护进程 dmwatcher,以免系统运行时出现意外错误 。在配置数据守护 V4.0 之前,必须通过备份还原方式同步各数据库的数据,确保各数据库的数据完全一致 。主库既可以是新初始化的数据库,也可以是正在生产使用中的数据库,而备库在备份还原前,需先初始化一个新库 。需注意,不能采用分别初始化库或者直接拷贝数据文件的方法来配置数据库守护,原因在于每个库都有永久魔数(permenant_magic),主库传送日志时会校验该值,若不一致则无法传送日志 。并且 dminit 初始化数据库时会生成随机密钥用于加密,每次生成的密钥不同,导致备库无法解析主库加密的数据 。再者,每个库都有数据库魔数(DB_MAGIC),每次还原、恢复操作都会使其变化,以此区分数据守护环境中的不同库 。若要使用 Huge 表,初始化库时需将建库参数 HUGE_WITH_DELTA 和 RLOG_GEN_FOR_HUGE 都配置为 1 。对于新初始化的库,首次启动不允许使用 Mount 方式,需先正常启动并正常退出后,才允许以 Mount 方式启动 。准备数据时,若主库是新初始化的库,先正常启动并正常退出,再使用备份还原方式准备备库数据 。若为初始搭建环境,可对主库进行脱机备份、对备库进行脱机还原;若主库已在运行状态,则可对主库进行联机备份、对备库进行脱机还原 。两种方式都要求服务器配置本地归档,具体配置步骤为:首先在 dm.ini 中打开 ARCH_INI 参数,然后配置 dmarch.ini,设置 ARCH_TYPE = LOCAL 指定本地归档类型,ARCH_DEST = /dm/data/DAMENG/arch 设置本地归档文件存放路径,ARCH_SPACE_LIMIT = 0(单位为 Mb,0 表示无限制,范围 1024~2147483647M) 。关于备份还原的详细说明,可参考《DM8 备份与还原》 。
在配置实时主备时,有多种配置方案可供选择,可根据实际情况部署 。例如,可只配置主库和最多 8 个实时备库;或只配置主库和最多 8 个异步备库;亦或配置主库、最多 8 个实时备库以及最多 8 个异步备库 。在实际应用中,若数据库规模庞大且对数据实时性要求不高,可配置多个异步备库用于分担统计报表等任务 。异步备库的配置可参考相关章节 。为便于理解,以常见的一个主库和一个实时备库的配置方案为例进行说明 。实际配置时,相关的端口配置和 OGUID 值建议不要与手册示例完全相同,避免多个用户在同一环境下搭建不同的数据守护系统时出现消息混乱或端口冲突等问题 。
达梦数据库的相关操作复杂且关键,无论是数据库实例的创建、删除,还是数据守护系统的配置等,都需要严格遵循操作规范和注意事项,以确保数据库的稳定运行和数据安全 。

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服