本文章主要通过进行一次完整的数据库安装,强调一下达梦数据库Linux安装过程中需要注意的问题
操作系统 | centos6 |
数据库版本 | DM8 |
1.安装前准备
(1)使用 root 用户建立文件夹:mkdir /dm8
(2)新建 dmdba 用户
groupadd dinstall
useradd -g dinstall -m -d /home/dmdba -s /bin/bash dmdba
passwd dmdba
(3)修改文件打开最大数
vi编辑器打开/etc/security/limits.conf文件,添加语句:
dmdba hard nofile 65536
dmdba soft nofile 65536
dmdba hard stack 32768
dmdba soft stack 16384
在dmdba 用户下,修改查看是否生效:ulimit -a
(4)挂载镜像
mount -o loop /home/linux/dm8_setup_rh6_64_ent_8.1.1.45_20191121.iso /mnt
(5)修改安装目录权限
chown dmdba:dinstall -R /dm8/ (将新建的安装路径目录权限的用户修改为 dmdba,用户组修改为 dinstall)
chmod -R 755 /dm8 (给文件设置755权限(可读可写))
2.数据库安装
使用命令行进行数据库安装,切换至 dmdba 用户下,在 /mnt 目录下使用命令行安装数据库程序:
su - dmdba
cd /mnt/
./DMInstall.bin -i
建议使用dmdba用户安装数据库,否则之后打开管理工具可能会报错。
安装完成后,还要执行在root用户下,执行/dm8/script/root/root_installer.sh,否则会影响备份。
3.DM数据库实例部署
利用./dminit进行数据库实例设置
./dminit help (查看可配置参数)
其中页大小 (page_size)、簇大小 (extent_size)、大小写敏感 (case_sensitive)、字符集 (charset) 这四个参数,一旦确定无法修改,需谨慎设置。
名称 | 含义 | 可设置值 |
page_size | 数据文件使用的页大小 | 4/8/16/32 |
extent_size | 簇大小,每次分配新的段空间时连续的页数 | 16/32/64 |
case_sensitive | 标识符大小写敏感。当大小写敏感时,小写的标识符要用双引号括起,否则被转换为大写;当大小写不敏感时,系统不自动转换标识符的大小写,在标识符比较时也不区分大小写。 | Y/y/N/n/1/0(默认为Y) |
charset | 字符集选项,0 代表 GB18030;1 代表 UTF-8;2 代表韩文字符集 EUC-KR | 0/1/2(默认为0) |
length_in_char | VARCHAR 类型长度是否以字符为单位 | Y/N,1/0(默认为N) |
例如:
./dminit path=/dm8/data PAGE_SIZE=32 EXTENT_SIZE=32 CASE_SENSITIVE=y
CHARSET=1 DB_NAME=DMDB INSTANCE_NAME=DBSERVER PORT_NUM=5236
上述语句表示:设置页大小为 32 KB,簇大小为 32 KB,大小写敏感,字符集为 utf-8,数据库名为 DMDB,实例名为 DBSERVER,端口为 5236。
数据库实例参数设置的更多内容,可以参照博客:
4.注册数据库服务
使用 root 用户进行注册
cd /dm8/script/root
./dm_service_installer.sh -t dmserver -dm_ini /dm8/data/DAMENG/dm.ini -p DMSERVER
其实进行到这里,DM数据库的安装就结束了,但是一般会对数据库的正常启停、备份还原和导入导出进行一个简单测试:
5.数据库启停
(1)数据库前台启停操作:
启动:
su - dmdba
cd /dm8/bin
./dmserver path=/dm8/data/DAMENG/dm.ini
停止/重启:./DmServiceDMSERVER stop/restart
查看数据库状态: ./DmServiceDMSERVER status
(2)数据库后台启停
root用户下操作:
找到数据库服务所在目录,若数据库服务目录不对,启动服务会报错
cd /etc/init.d/
./DmServiceDMSERVER start/stop/restart
6.数据库备份还原
开启本地归档
启动备份:
su - dmdba切换到dmdba身份
cd /dm8/bin 进入到bin目录下
./DmAPService start启动备份
启动命令行操作数据库:
./disql SYSDBA/SYSDBA@localhost:5236 (在bin目录下的disql中启动数据库,用户名/密码@服务名:端口号)
进行联机归档配置:
(1)修改数据库为mount状态;
alter database mount
(2)配置本地归档;
alter database add archivelog ‘dest = /dm8/dm_arch/arch, type = local,file_size = 1024,space_limit = 2048’;
(3)开启归档模式;alter database archivelog;
(4)修改数据库为OPEN状态。alter database open;
进入./dmrman进行备份还原操作
备份:backup database '/dm8/data/DAMENG/dm.ini' backupset '/dm8/backup';
还原:restore database '/dm8/data/DAMENG/dm.ini' from backupset '/dm8/backup';
恢复recover database '/dm8/data/DAMENG/dm.ini' from backupset '/dm8/backup';
更新数据库:recover database '/dm8/data/DAMENG/dm.ini' update db_magic;
达梦数据库介绍了多种备份还原方式,更多备份还原相关内容见博客:
7.导入导出
需要启动数据库服务
dexp导出,在bin目录下执行:
./dexp SYSDBA/SYSDBA@localhost:5236 file=dexp01.dmp log=dexp01.log directory=/dm8/data full=y
导出数据库的所有对象(FULL=Y),导出文件为 dexp01.dmp,导出日志为 dexp01.log,
导出文件和日志文件都存放在/dm8/data 目录中。
dimp导入:
/dimp SYSDBA/SYSDBA@localhost:5236 file=/dm8/data/dexp01.dmp log=dimp02.log directory=/dm8/data SCHEMAS=SYSDBA
导入 SYSDBA模式中的数据(SCHEMAS=SYSDBA),导入文件就是上一步导出的文件 dexp01.dmp,导入日志 dimp02.log 放入/dm8/data目录中。