第一步:在每台节点服务器上安装达梦数据库,并初始化实例。 |
安装前准备: |
修改操作系统限制。 (vi /etc/security/limits.conf 在文件中添加两行: * soft nofile 102400 * hard nofile 102400 重启后永久生效, 使用ulimit -n 102400 命令可立即临时生效 ) |
添加用于安装和启动数据库的用户。 |
groupadd dinstall useradd -g dinstall -m -d /home/dmdba -s /bin/bash dmdba passwd dmdba |
切换到新建的dmdba用户并开始安装。 |
su – dmdba ./DMInstall.bin –i (-i表示非图形化安装,适合于一些不支持图形化到系统) 整个安装过程根据提示即可完成。 |
初始化实例 |
./dminit path=实例路径 charset=字符集(默认是0表示GB18030,1表示utf-8,2 代表韩文字符集 EUC-KR) case_sensitive=大小写是否民管 page_size=页大小(可以是4,8,16,32) 注:通过./dminit –h可以查看更多到参数说明。 |
第二步:注册相关服务(需要root用户注册) |
(1)主节点 |
cd /dmdb/dmdbms/script/root --注册实例服务 .dm_service_installer.sh -t dmserver -dm_ini /dmdb/data/dm8/DAMENG/dm.ini -p DM01 -m mount --注册守护服务 .dm_service_installer.sh -t dmwatcher -watcher_ini /dmdb/data/dm8/DAMENG/dmwatcher.ini -p DM01 |
(2)备节点 |
cd /dmdb/dmdbms/script/root --注册实例服务 .dm_service_installer.sh -t dmserver -dm_ini /dmdb/data/dm8/DAMENG/dm.ini -p DM02 -m mount --注册守护服务 .dm_service_installer.sh -t dmwatcher -watcher_ini /dmdb/data/dm8/DAMENG/dmwatcher.ini -p DM02 |
第三步:配置主节点 |
(1)以mount方式启动服务:进入dmserver所在目录执行以下命令从前台启动数据库服务:./dmserver /dmdb/data/dm8/DAMENG/dm.ini mount(或者执行以下命令从后台启动数据库服务:./DmServiceDM01 start ,使用这种方式服务会一直运行在后台,不会因为窗口关闭而关闭服务) (2)用SYSDBA用户(默认密码SYSDBA)登录DISQL或管理工具执行以下内容来进行联机归档配置 配置本地归档: ALTER DATABASE ADD ARCHIVELOG 'DEST = /dmdb/data/dmarch, TYPE = local, FILE_SIZE = 1024, SPACE_LIMIT = 2048'; 开启归档模式: ALTER DATABASE ARCHIVELOG; (3)关闭数据库服务,如果是前台启动到数据库服务则关闭窗口即可,如果四从后台启动到服务则执行:./DmServiceDM01 stop (4)使用dmrman进行数据库备份 在bin文件夹下执行./dmrman即可进入dmrman工具,执行以下命令备份数据库 Backup database '/dmdb/data/dm8/DAMENG/dm.ini' full backupset '/dmdb/data/dmbak/' |
第四步:将主节点的备份还原到备节点 |
(1)登录备节点服务器并从主节点拷贝备份文件 scp -r 主节点IP:/dmdb/data/dmbak/DB_BAK /dmdb/data/dmbak/ (2)进行rman脱机还原 cd /dmdb/dmdbms/bin ./dmrman RMAN>restore database '/dmdb/data/dm8/DAMENG/dm.ini' from backupset '/dmdb/data/dmbak/DB_BAK'; RMAN>recover database '/dmdb/data/dm8/DAMENG/dm.ini' from backupset '/dmdb/data/dmbak/DB_BAK'; RMAN>recover database '/dmdb/data/dm8/DAMENG/dm.ini' update db_magic; |
第五步:修改各节点上的配置文件 |
(1)修改主节点配置文件 cd /dmdb/data/dm8/DAMENG --修改dm.ini INSTANCE_NAME = DM01 #实例名 PORT_NUM = 5236 #数据库实例监听端口 DW_INACTIVE_INTERVAL = 60 #接收守护进程消息超时时间 ALTER_MODE_STATUS = 0 #不允许手工方式修改实例模式/状态/OGUID ENABLE_OFFLINE_TS = 2 #不允许备库 OFFLINE 表空间 MAL_INI = 1 #打开 MAL 系统 ARCH_INI = 1 #打开归档配置 RLOG_SEND_APPLY_MON = 64 #统计最近 64 次的日志发送信息 --修改dmarch.ini [ARCHIVE_REALTIME] ARCH_TYPE = REALTIME #实时归档类型 ARCH_DEST = DM02 #实时归档目标实例名 [ARCHIVE_LOCAL1] ARCH_TYPE = LOCAL #本地归档类型 ARCH_DEST = /dmdb/data/dmarch #本地归档文件存放路径 ARCH_FILE_SIZE = 1024 #单位 Mb,本地单个归档文件最大值 ARCH_SPACE_LIMIT = 20480 #单位 Mb,0 表示无限制,范围 1024~4294967294M --修改dmmal.ini MAL_CHECK_INTERVAL = 5 #MAL 链路检测时间间隔 MAL_CONN_FAIL_INTERVAL = 5 #判定 MAL 链路断开的时间 [MAL_INST1] MAL_INST_NAME = DM01 #实例名,和 dm.ini 中的 INSTANCE_NAME 一致 MAL_HOST = 心跳ip #MAL 系统监听 TCP 连接的 IP 地址 MAL_PORT = 6141 #MAL 系统监听 TCP 连接的端口 MAL_INST_HOST = 业务ip #实例的对外服务 IP 地址 MAL_INST_PORT = 5236 #实例的对外服务端口,和 dm.ini 中的 PORT_NUM 一致 MAL_DW_PORT = 7141 #实例本地的守护进程监听 TCP 连接的端口 MAL_INST_DW_PORT = 8141 #实例监听守护进程 TCP 连接的端口 [MAL_INST2] MAL_INST_NAME = DM02 MAL_HOST = 心跳ip MAL_PORT = 6141 MAL_INST_HOST = 业务ip MAL_INST_PORT = 5236 MAL_DW_PORT = 7141 MAL_INST_DW_PORT = 8141 --修改dmwatcher.ini [GRP1] DW_TYPE = GLOBAL #全局守护类型 DW_MODE = AUTO #自动切换模式 DW_ERROR_TIME = 10 #远程守护进程故障认定时间 INST_RECOVER_TIME = 60 #主库守护进程启动恢复的间隔时间 INST_ERROR_TIME = 10 #本地实例故障认定时间 INST_OGUID = 453331 #守护系统唯一 OGUID 值 INST_INI = /dmdb/data/dm8/DAMENG/dm.ini #dm.ini 配置文件路径 INST_AUTO_RESTART = 1 #打开实例的自动启动功能 INST_STARTUP_CMD = /dmdb/dmdbms/bin/dmserver #命令行方式启动 RLOG_SEND_THRESHOLD = 0 #指定主库发送日志到备库的时间阀值,默认关闭 RLOG_APPLY_THRESHOLD = 0 #指定备库重演日志的时间阀值,默认关闭 (2)拷贝主节点配置文件到备节点并修改备节点配置文件 scp -r 主节点ip:/dmdb/dm8/DAMENG/dm.ini dmarch.ini dmwatcher.ini dmmal.ini /dmdb/dm8/DAMENG/ --修改dm.ini文件 INSTANCE_NAME = DM02 --修改dmarch.ini [ARCHIVE_REALTIME] ARCH_TYPE = REALTIME #实时归档类型 ARCH_DEST = DM01 #实时归档目标实例名 [ARCHIVE_LOCAL1] ARCH_TYPE = LOCAL #本地归档类型 ARCH_DEST = /dmdb/data/dmarch #本地归档文件存放路径 ARCH_FILE_SIZE = 1024 #单位 Mb,本地单个归档文件最大值 ARCH_SPACE_LIMIT = 20480 #单位 Mb,0 表示无限制,范围 1024~4294967294M |
第六步:修改数据库模式 |
(1)启动主备节点实例服务 --主节点 cd /dmdb/dmdbms/bin ./DmServiceDM01 start --备节点 cd /dmdb/dmdbms/bin ./DmServiceDM02 start (2)配置数据库模式修改OGUID值 --主节点 使用disql或者管理工具连接数据库,登录sysdba用户执行以下sql SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 1); SP_SET_OGUID(453331); ALTER DATABASE PRIMARY; SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 0); --备节点 cd /dmdb/dmdbms/bin ./disql SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 1); SP_SET_OGUID(453331); ALTER DATABASE PRIMARY; SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 0); (3)启动主备节点守护服务 --主节点 cd /dmdb/dmdbms/bin ./DmWatcherServiceDM01 start --备节点 cd /dmdb/dmdbms/bin ./DmWatcherServiceDM02 start |
第七步:配置监视器(监视器需要配置在第三台服务器上,保证端口和网络互通) |
(1)配置监视器文件 在/dmdb/dmdbms/bin目录下配置dmmonitor.ini文件 MON_DW_CONFIRM = 1 #1表示确认监视器,0表示非确认监视器 MON_LOG_PATH = /dmdb/dmdbms/log #监视器日志文件存放路径 MON_LOG_INTERVAL = 60 #每隔 60s 定时记录系统信息到日志文件 MON_LOG_FILE_SIZE = 32 #每个日志文件最大 32M MON_LOG_SPACE_LIMIT = 2048 #不限定日志文件总占用空间 [GRP1] MON_INST_OGUID = 453331 #组 GRP1 的唯一 OGUID 值 #IP 对应 dmmal.ini 中的 MAL_HOST,PORT 对应 dmmal.ini 中的 MAL_DW_PORT MON_DW_IP = 心跳ip:7141 MON_DW_IP = 心跳ip:7141
--前台启动 cd /dmdb/dmdbms/bin ./dmmonitor dmmonitor.ini --后台启动 cd /dmdb/dmdbms/script/root 注册服务(需要root用户) .dm_service_installer.sh -t dmmonitor -monitor_ini /dmdb/dmdbms/bin/dmmonitor.ini -p DM0102 启动服务 cd /dmdb/dmdbms/bin ./DmMonitorServiceDM0102 start |
达梦云适配技术社区:https://eco.dameng.com/