linux环境命令行方式安装单机
(1)操作系统信息:cat /etc/os-release
(2)查看cpu:lscpu
注意:查看以上信息用于在官网选择下载对应的数据库安装包。
(3)查看防火墙是否关闭:systemctl status firewalld (查看防火墙状态),systemctl stop firewalld(关闭防火墙),systemctl disable firewalld(永久关闭)
(4)查看操作系统时间:date查看,时间不对可以利用date -s修改
(5)关闭SeLinux:vi /etc/selinux/config,设置SeLinux为disabled
(6)修改文件limits.conf,vi /etc/security/limits.conf,添加如图所示的内容:
(7)修改文件system.conf文件,vi /etc/systemd/system.conf,添加如图所示的内容,重启操作系统生效:
reboot ##重启
groupadd dinstall ##创建属组
useradd -g dinstall -m -d /home/dmdba -s /bin/bash dmdba ##创建用户
passwd dmdba ##设置密码为Dameng123
id dmdba ##查看dmdba用户信息
注意:/data为提前挂载的路径,chown -R dmdba:dinstall /data
mkdir /data/dmarch /data/dmbak /data/sqllog
chown -R dmdba:dinstall /data/dmarch /data/dmbak /data/sqllog
创建安装包存放路径/install,将从官网下载的对应安装包上传至该路径下
mkdir install ##创建路径
unzip dm8_20240408_x86_rh7_64_ent_8.1.3.140.zip ##解压安装包
mount -o loop dm8_20240408_x86_rh7_64.iso /mnt ##将iso挂载到/mnt下
su - dmdba ##切换为dmdba用户
cd /mnt/ ##进入挂载路径下
./DMInstall.bin -i ##执行安装命令
安装过程中,可以选择安装语言,此处为英文,可以不选择输入key文件,可以设置时区为China,选择典型安装Typical,最后默认数据库安装路径为/home/dmdba/dmdbms,安装过程如下:
切换为root用户,注册AP服务,该服务主要用于数据库备份
bash /home/dmdba/dmdbms/script/root/root_installer.sh
su - dmdba
cd /home/dmdba/dmdbms/bin
./dminit path=/data page_size=32 extent_size=32 log_size=2048 INSTANCE_NAME=DM1 DB_NAME=DAMENG
以上dminit为DM数据库创建数据库实例的工具,需要到数据库安装的bin路径下执行,可以执行./dminit help查看该工具的参数使用说明,以上我们设置了数据文件存放路径为/data,页大小为32k,簇大小为32k,重做日志文件大小为2048M,实例名为DM1,数据库名为DAMENG,其余参数未指定的则未默认值。各种参数的具体说明可以在官网进行查找学习。
切换为root,进入scrip/root路径下执行注册命令,其中-t代表注册的服务类型,DM数据库支持的服务类型主要有:dmap、dmamon、dmserver、dmwatcher、dmmonitor、dmasmsvr、dmasmsvrm等;-dm_ini:指定服务所需要的 dm.ini 文件路径,此处为/data/DAMEMG/dm.ini;-p后可以指定服务名的后缀,此处为DMTEST。
exit ##切换为root用户
cd /home/dmdba/dmdbms/script/root/
./dm_service_installer.sh -t dmserver -dm_ini /data/DAMENG/dm.ini -p DMTEST ##注册命令
su - dmdba
cd /home/dmdba/dmdbms/bin
ll |grep DmServiceDMTEST ##输出此服务名则注册成功
切换到root用户,进入到dmdba用户的根目录下,进入/home/dmdba路径下,编辑.bash_profile文件,在末尾添加export PATH=..../tool行,注意不要有空格,否则执行生效命令时会报错。
exit ##切换为root用户
cd /home/dmdba/
vi .bash_profile ##添加内容如图所示内容
su - dmdba
source .bash_profile ##使配置文件修改永久生效
启动数据库:DmServiceDMTEST start
停止数据库:DmServiceDMTEST stop
查看数据库状态:DmServiceDMTEST status
首先启动数据库
DmServiceDMTEST start
连接方式一:输入disql,然后输入username和password回车即可。
连接方式二:disql SYSDBA/SYSDBA的密码
连接方式三:disql SYSDBA/SYSDBA@192.168.40.111:5236
连接方式四:通过服务名方式连接数据库
切换为root用户,编辑dm_svc.conf文件,添加如图所示的内容,设置服务名为DM8Server:
exit
vi /etc/dm_svc.conf ##添加:DM8Server=(192.168.40.111:5236)
cat /etc/dm_svc.conf
su - dmdba
disql SYSDBA/SYSDBA@DM8Server ##服务名连接
在数据库中,我们需要开启跟踪日志参数用于性能诊断,可以通过该跟踪日志内容(SQL语句、参数信息、错误信息等)进行性能问题分析,因此,我们要开启SVR_LOG参数,执行
SP_SET_PARA_VALUE(1,'SVR_LOG',1)。
接着修改sqllog.ini文件:主要修改Log路径以及SWITCH_LIMIT的大小,如果内存大于32G需要做BUF_TOTAL_SIZE等参数的调整。
执行SP_REFRESH_SVR_LOG_CONFIG();即可生效。
数据库在安装部署完成后,备份是必须的操作,为防止数据库由于误操作或者某些原因造成数据丢失,备份集是进行数据恢复的重要文件,一般采用全备和增备结合的方式。
然而人工每天备份,不仅耗时还费力,因此可以利用DM数据库自带的作业备份功能,创建作业备份,可实现定期备份以及删除。一般情况下,作业备份执行时,数据库都处于运行状态,因此我们采用联机备份方式,此方式需要开启归档。
命令行创建方式如下:
disql连接数据库:执行以下命令
ALTER DATABASE MOUNT;
ALTER DATABASE ARCHIVELOG;
ALTER DATABASE ADD ARCHIVELOG 'DEST = /data/dmarch, TYPE = local,FILE_SIZE = 512, SPACE_LIMIT = 1024';
ALTER DATABASE OPEN;
--首先需要创建代理环境:
call SP_INIT_JOB_SYS(1);
--在每周日两点进行全库备份,全备成功后,删除一个月前的备份文件,可以执行:
call SP_CREATE_JOB('full_dele',1,0,'',0,0,'',0,'全备成功后,再删除过期备份文件');
call SP_JOB_CONFIG_START('full_dele');
call SP_ADD_JOB_STEP('full_dele', 'fullbak', 6, '00000000/data/dmbak', 3, 1, 0, 0, NULL, 0);
call SP_ADD_JOB_STEP('full_dele', 'delebak', 0, 'CALL SF_BAKSET_BACKUP_DIR_ADD(''DISK'',''/data/dmbak'');
CALL SP_DB_BAKSET_REMOVE_BATCH(''DISK'',sysdate-30);', 1, 1, 0, 0, NULL, 0);
call SP_ADD_JOB_SCHEDULE('full_dele', 'full_sche', 1, 2, 1, 1, 0, '02:00:00', NULL, '2022-11-24 22:00:00', NULL, '');
call SP_JOB_CONFIG_COMMIT('full_dele');
--每天两点(除了周日)增备,增备失败后做一次全备,可以执行:
call SP_CREATE_JOB('increbak',1,0,'',0,0,'',0,'增备失败后,全备一次');
call SP_JOB_CONFIG_START('increbak');
call SP_ADD_JOB_STEP('increbak', 'incre_bak', 6, '10000000/data/DAMENG/bak|/data/dmbak', 1, 3, 0, 0, NULL, 0);
call SP_ADD_JOB_STEP('increbak', 'in_fullbak', 6, '00000000/data/dmbak', 1, 1, 0, 0, NULL, 0);
call SP_ADD_JOB_SCHEDULE('increbak', 'incr_sche', 1, 2, 1, 126, 0, '02:00:00', NULL, '2022-11-24 22:00:00', NULL, '');
call SP_JOB_CONFIG_COMMIT('increbak');
在创建完作业备份后,需要进行备份作业是否成功创建的测试,以防止备份任务执行失败
先执行select * from SYSJOB.SYSJOBS;命令查询作业ID
执行SP_DBMS_JOB_RUN(1725268152);进行一次全备
建议执行两次增备测试,SP_DBMS_JOB_RUN(1725268153);
到路径/data/dmbak下查看备份集有一次全备的,两次增备的,说明定时备份作业创建成功且可以执行成功。
cd /home/dmdba/
mkdir core ##创建core路径
切换为root用户
vi /etc/sysctl.conf ##文件末尾添加kernel.core_pattern =/home/dmdba/core/core-%e-%p-%s
sysctl -p ##生效
tail -5 /etc/sysctl.conf查看是否生效:
disql连接数据库
新开一个终端,执行ps -ef|grep disql,查看disql进程ID号,kill -11 10449,杀死disql进程
到/home/dmdba/core路径下查看是否生成core文件,有文件生成则成功
注意:core频繁发生可能会撑爆磁盘,建议需要对core生成目录设置清理策略,保证该目录的可用性。
到此,DM数据库单机安装部署完成,安装过程中,需要注意各个路径或者文件的权限,其次是安装前系统环境的参数修改,如果有更高性能需求,还需要修改透明大页、关闭swap分区等操作。本文只展示了命令行安装部署,流程较为详细,可做学习参考使用,需要注意的是图形化安装部署需要提前做以下准备:
root用户:xhost +
echo $DISPLAY
:0.0
dmdba用户:export DISPLAY=:0.0
文章
阅读量
获赞