注册
麒麟系统下安装达梦数据库
培训园地/ 文章详情 /

麒麟系统下安装达梦数据库

DM_720759 2023/06/26 4152 0 0

一、安装DM8数据库软件

1、规划安装路径和用户

[root@localhost /]# mkdir /dm8

2、规划用户dmdba和群组dinstall,并修改/dm8权限

[root@localhost /]# id dmdba ——查询用户是否存在
[root@localhost /]# groupadd dinstall ——创建安装用户组
[root@localhost /]# useradd -g dinstall -m -d /home/dmdba -s /bin/bash dmdba
[root@localhost /]# passwd dmdba ——设置密码dameng123
[root@localhost /]# chown dmdba:dinstall -R /dm8

3、挂载DM8的ISO镜像文件

如果不是文件不是镜像文件则不需要挂载,可以直接安装 如果是ISO镜像文件,则需要挂载,挂在前需要赋予用户权限

[root@localhost /]# chmod -R 755 /opt/dm8_20220525_x86_rh6_64.iso
[root@localhost /]# mount -o loop /opt/dm8_20220525_x86_rh6_64.iso /mnt
扩展 tmp 空间:
mount -o remount,size=4G /tmp

4、使用图形化安装达梦数据库

4.1、调出图形化方法如下:

1)使用命令查询root账号的输出端,如果显示:0.0或者:1.0,exprot时使用查出来的输出端

[root@D ~]# echo $DISPLAY
[root@D ~]#

这时先给root用户设置一个临时输出端

[root@D ~]# export DISPLAY=:0.0

输入xhost +

[root@D ~]# xhost +
access control disabled, clients can connect from any host

2)切换dmdba账号,执行export 设置临时变量。

[root@D ~]# su - dmdba
[dmdba@D ~]# export DISPLAY=192.168.133.1:0.0
[dmdba@D ~]# xhost +
access control disabled, clients can connect from any host

3)执行安装命令 ,切换到DMinstall.bin路径,输入./DMInstall.bin执行

[dmdba@localhost ~]$ cd /mnt
[dmdba@localhost dm]$ ll
[dmdba@localhost dm]$ ./DMInstall.bin

4)可视化界面安装
默认安装---key文件跳过点【下一步】--典型安装--选择对应安装位置
图片1.png图片2.png
注意:开2个窗口,一个root用户,一个dmdba用户,避免切换错误
使用root账号执行以上命令,执行完成点击【确定】

[root@localhost tmp]# /dm8/script/root/root_installer.sh
移动 /dm8/bin/dm_svc.conf 到/etc 目录
修改服务器权限
创建 DmAPService 服务
创建服务(DmAPService)完成
启动 DmAPService 服务

二、创建数据库及数据库实例管理

1、创建数据库

•使用dmdba用户切换至tool路径,使用dbca.sh调出图形化界面

[root@D ~]# su - dmdba
[dmdba@localhost dm]$ cd /dm8/tool
[dmdba@localhost tool]$ ./dbca.shimage.png
默认安装
image.png
图片3.png

使用root账户,复制以上命令并执行,一条执行完再执行另一条,执行完成后点击确定。
图片4.png
##重启服务

[root@localhost ~]# systemctl restart DmServiceDMSERVER.service
##关闭数据库实例
./DmServiceDMSERVER stop
##开启数据库实例
./DmServiceDMSERVER start

2、连接数据库

2.1命令方式连接数据库

1.使用dmdba用户,切换bin路径,执行disql使数据库处于打开状态

[dmdba@localhost ~]$ cd /dm8/bin
[dmdba@localhost ~]$ ./disql sysdba/dameng123
图片5.png
2.执行sql查询语句,测试是否连通
图片6.png

2.2图形化方式连接数据库

1、使用命令打开图形化界面,进入tool路径,执行./manager
2、直接进入我的电脑-->dm8-->tool-->点击manager,执行
常见错误:
(1) DISPLAY 没有设置正确导致图形化界面无法打开。
(2) 报错权限不足 原因:使用 root 打开过图形化工具
解决方法:chown -R dmdba:dinstall /dm8/tool

2.3 服务查看器 ——注:root 账号去启动和关闭

[root@localhost tool]# ./dmservice.sh
图片7.png

2.4 设置数据库兼容为Oracle模式

1)命令方式:

oracle兼容模式:

SP_SET_PARA_VALUE(2,'COMPATIBLE_MODE',2);

查询数据库兼容

select name,type,value,sys_value,file_value from v$parameter t where name like 'COMPATIBLE_MODE';

2)图形化方式设置

[root@localhost tool]# ./console ——打开控制台工具
在实例配置-DMSERVER-兼容性相关参数-COMPATIBLE_MODE,设置为2图片8.png

3、数据库配置

3.1数据缓冲区Buffer

修改数据缓冲区大小

段落引用alter system set 'BUFFER'=500 spfile; 或
段落引用SP_SET_PARA_VALUE(2,’BUFFER’,500); ---1表示动态参数,2表示静态参数
或利用控制台工具修改参数

查询缓存区大小

Select para_name,para_value form v$dm_ini where para_name like ’%BUFFER%’

4、创建表空间

#创建表空间:

create tablespace 表空间名 datafile '数据文件路径' SIZE 数据文件大小(单位为mb);
create tablespace "TEST" datafile'/dm8/data/TEST_01.DBF' size 64;

数据文件的大小必须是—— 最小:页大小的4096倍数
最大:(页大小 *2^31)-1

#查看到表空间数据文件

select file_name, file_id, status, tablespace_name, bytes/1024/1024 from dba_data_files;

# 修改临时表空间的初始大小:

alter system set 'TEMP_SIZE'=100 spfile;

#清理临时表空间

Alter tablespace "TEMP" resize datafile 'TEAP.DBF' to 32;

# 表空间脱机、联机

alter tablespace test02 offline; ——online 联机

# 修改表空间的缓冲区类型

alter tablespace "TEST02" cache = "KEEP";

#表空间重命名

alter tablespace tbs RENAME TO dmtbs;

#删除表空间

Drop tablespace test;

5、创建角色

命令方式创建:创建角色,并赋予校色权限

create role 角色名;
create role "ROLEDM";

grant 权限 to 角色名;
grant CREATE TABLE,CREATE VIEW,CREATE INDEX to "TESTDM";

6、创建用户

create user 用户名 identified by 密码 default tablespace 表空间名;
create user "DMTEST" identified by "Dmeng123";

7、表管理

7.1创建表 注:表名是区分大小写的

CREATE TABLE 表名 (表字段名 定义每个表字段);

create table DMTEST.DEPT(
DEPT_ID INTEGER not null,
DEPT_NAME VARCHAR(30) not null,
LOCATION_ID INTEGER not null,
LOCATION_ADDR VARCHAR(30) not null,
primary key("DEPT_ID")
);

# 添加字段

alter table DMTEST.DEPT add email varchar(20);

# 修改字段

alter table DMTEST.DEPT modify email varchar(30);

# 删除字段

alter table DMTEST.DEPT drop email;

7.2 约束

添加主键约束:

alter table test.t1 add CONSTRAINT t1_pri primary key(id);

添加检查约束

create TABLE test.t2(id int CHECK(id>=5));

7.3索引

创建索引表空间

create tablespace 表空间名 datafile 数据文件路径 size 数据文件大小;
create tablespace index1 datafile '/dm8/data/DAMENG/index1_01.DBF' size 32;

创建表索引

create index idx_表名_字段名 ON 表名 (字段名,字段名);
create index "DMTEST"."IND_EMP_NAME" on "DMTEST"."EMP"("EMP_NAME") ;

7.4视图管理

创建视图:
create view 视图名称 as
select * from 表名 where 条件;

8、数据导入

(1)通过SQL语句来单个插入:insert into 表名(列名) values (列值);
(2)通过执行/dm8下的导入脚本进行数据导入:
1)在dm8下创建sql脚本文件a.sql

[root@D dm8~]# mkdir a.sql
[root@D dm8~]# vi a.sql
[root@D dm8~]# cd /bin
[root@D bin~]# ./disql syadba/Dameng123
SQL> START /dm/a.sql

三、备份与还原

热备:DMAP 服务是打开的,数据库实例也是打开的,数据库是归档模式。

3.1开启归档

[root@D dm8~]# cd /dm8/bin
[root@D bin~]# ./disql sysdba/Dameng123
SQL>select name,status$, arch_mode from v$database; ——查看归档状态
SQL>alter database add archivelog 'type=local,dest=/dm8/arch, file_size=64,space_limit=0';
SQL> alter database archivelog;
SQL> alter database open;
SQL> select name,status$, arch_mode from v$database;

物理备份

利用管理工具来进行热备(完全备份/增量备份)
image.png
image.png

逻辑备份

逻辑导出

[dmdba@localhost bin]$ ./dexp sysdba/dameng123@localhost:5236 file=dexp01.dmp log=dexp01.log directory=/dm8/backup/dexp full=y

逻辑导入

[dmdba@localhost bin]$ ./dimp sysdba/SYSDBA@localhost:5239 file=/dm8/backup/dexp/dexp01.dmp
log=/dm8/backup/dexp/dimp01.log

四、ODBC配置

1、检查 gcc 包
[root@localhost ~]# rpm -aq|grep gcc
2、解压安装包
[root@localhost opt]# tar -xzvf unixODBC-2.3.0.tar.gz
3、配置 ODBC
[root@localhost unixODBC-2.3.0]# ./configure --enable-gui=no
4、编译安装 ODBC
[root@localhost unixODBC-2.3.0]# make && make install
5、查看 odbc 版本
[root@localhost unixODBC-2.3.0]# odbc_config --version
2.3.0
6、查看 odbc 配置文件路径
[root@localhost unixODBC-2.3.0]# odbcinst -j
unixODBC 2.3.0
DRIVERS............: /usr/local/etc/odbcinst.ini
SYSTEM DATA SOURCES: /usr/local/etc/odbc.ini
FILE DATA SOURCES..: /usr/local/etc/ODBCDataSources
USER DATA SOURCES..: /root/.odbc.ini
SQLULEN Size.......: 8
122SQLLEN Size........: 8
SQLSETPOSIROW Size.: 8
7、配置 odbc.ini 和 odbcinst.ini
[root@localhost unixODBC-2.3.0] cd /usr/local/etc/
[root@localhost etc]# vim odbc.ini

[DM8] # 这个按要求改
Description = DM ODBC DSND
Driver = DM8 ODBC DRIVER # 要和下面对应
SERVER = localhost
UID = SYSDBA
PWD = SYSDBA
TCP_PORT = 5236

[root@localhost etc]# vim odbcinst.ini
[DM8 ODBC DRIVER] # 这块要和上边对应
Drscription = ODBC DRIVER FOR DM8
Driver = /dm8/bin/libdodbc.so

切换到dmdba用户,进行登陆即可
[root@localhost etc]#su -dmdba
[dm8@localhost ~]# isql dm8

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服