300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > 达梦数据库(DM8)常用功能总结-图形化界面

达梦数据库(DM8)常用功能总结-图形化界面

时间:2019-08-04 17:35:21

相关推荐

达梦数据库(DM8)常用功能总结-图形化界面

目录

所需软件准备工作一、将dm8和odbc复制到/opt文件夹二、检查glibc所需环境配置三、配置DM工具路径(可选) 图形化操作一、创建账户和文件夹,并配置文件打开参数二、安装达梦数据库DM8三、初始化数据库实例四、创建表空间五、创建用户六、创建表七、数据导入八、数据库备份九、执行脚本删除数据文件十、数据库逻辑导出十一、创建视图十二、添加索引十三、安装ODBC驱动 问题答疑一、无法打开图形化界面二、无法直接调用脚本三、创建数据库时显示打开文件数需要调整四、数据库不能自动提示

所需软件

虚拟机:VMWare15

操作系统:中标麒麟Linux7

软件:达梦数据库DM8

驱动:ODBC-2.3.0

准备工作

一、将dm8和odbc复制到/opt文件夹

步骤:

(1)在虚拟机的桌面上创建dm8file文件夹(名称自定),并赋予权限,用于临时存储文件

chmod 777 '/home/kylin7/桌面/dm8file'

(2)将dm8和odbc复制到此文件夹(建议安装vmtools后右键复制文件到虚拟机中)

(3)使用命令,将dm8file中的文件复制到/opt下

[root@localhost ~]# cd '/home/kylin7/桌面/dm8file'

[root@localhost ~]# cp dm8_setup_rh7_64_ent_8.1.1.88_2029.iso /opt/dm8_setup_rh7_64_ent_8.1.1.88_2029.iso

[root@localhost ~]# cp unixODBC-2.3.0.tar.gz /opt/unixODBC-2.3.0.tar.gz

复制完成后如下:

二、检查glibc所需环境配置

步骤:

使用命令,检查glibc的环境是否已经配置

[root@localhost ~]# rpm -qa|grep glibc

结果如下:

glibc-common-2.17-222.el7.ns7.01.x86_64glibc-devel-2.17-222.el7.ns7.01.x86_64glibc-headers-2.17-222.el7.ns7.01.x86_64glibc-2.17-222.el7.ns7.01.x86_64

三、配置DM工具路径(可选)

在安装完成数据库之后,即完成图形化操作(二)后,可以将dm8的工具路径添加到配置文件中,便于直接操作

步骤:

(1)在dmdba下,打开.bash_profile,并配置bin和tool路径

[dmdba@localhost ~]$ vi .bash_profile

当前的文档内容:(已经存在的文档内容)

# .bash_profile# Get the aliases and functionsif [ -f ~/.bashrc ]; then. ~/.bashrcfi# User specific environment and startup programsPATH=$PATH:$HOME/.local/bin:$HOME/binexport PATHexport LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/dm8/bin"export DM_HOME="/dm8"

增加如下代码:

export PATH=$PATH:$DM_HOME/bin:$DM_HOME/tool

将配置文件生效:

[dmdba@localhost ~]$ source .bash_profile

图形化操作

一、创建账户和文件夹,并配置文件打开参数

1.创建dmdba账户

(1)创建dinstall组

[root@localhost ~]# groupadd dinstall

(2)创建dmdba用户

[root@localhost ~]# useradd -g dinstall dmdba

(3)查看dmdba用户信息

[root@localhost ~]# id dmdba

结果:

uid=1001(dmdba) gid=1002(dinstall) 组=1002(dinstall)

(4)更改dmdba用户密码

[root@localhost ~]# passwd dmdba

2.创建安装所需的文件夹

(1)创建dm8文件夹

[root@localhost ~]# mkdir /dm8

(2)将dm8文件夹赋于的mdba的操作权限

[root@localhost ~]# chown dmdba:dinstall /dm8

(3)修改文件打开数

[root@localhost ~]# vi /etc/security/limits.conf

在limits.conf中增加下列代码

dmdba soft nofile 10240dmdba hard nofile 65536

二、安装达梦数据库DM8

(1)将dm8软件挂载在/mnt文件夹下

[root@localhost ~]# mount /opt/dm8_setup_rh7_64_ent_8.1.1.88_2029.iso /mnt

结果:

mount: /dev/loop0 写保护,将以只读方式挂载

(2)切换到dmdba用户

[root@localhost ~]# su - dmdba

(3)安装数据库软件

[dmdba@localhost ~]$ cd /mnt

[dmdba@localhost mnt]$ ./DMInstall.bin

启动图形化界面安装:

这里因为是开发版,没有key文件;如果是正式版本的,可以选择key文件

可以根据需要选择安装的类型,这里选择典型安装即可

这里注意,需要安装到自己创建的文件夹下

这里需要开启另一个终端窗口,使用root执行脚本

执行脚本指令

[root@localhost ~]# /dm8/script/root/root_installer.sh

结果:

移动 /dm8/bin/dm_svc.conf 到/etc目录修改服务器权限创建DmAPService服务Created symlink from /etc/systemd/system/multi-user.target.wants/DmAPService.service to /usr/lib/systemd/system/DmAPService.service.创建服务(DmAPService)完成启动DmAPService服务

这里点击取消,稍后执行初始化操作

三、初始化数据库实例

(1)直接打开图形化界面

[dmdba@localhost ~]$ dbca.sh

(2)进行图形化操作

注意检查数据库存放位置

填写数据库名称、实例名和端口号

注意参数要求

设置口令,这里设置的是:Dameng123

这里同样需要使用root执行一些脚本

(3).设置兼容sqlserver

打开控制台工具,显示图形化界面:

[dmdba@localhost ~]$ console

找到兼容性选项,将其修改为兼容sqlserver

根据后面的注释,修改兼容性参数

(4)设置密码策略

根据后面的策略说明,进行设置

指令设置:(sql查询窗口)

sp_set_para_value(1,'PWD_POLICY',7)

至此,数据库实例初始化完成

四、创建表空间

注意:下列图形化界面操作使用SYSDBA用户登陆

(1)打开达梦数据库的管理工具,开启图形化界面:

[dmdba@localhost ~]$ manager

(2)链接上面创建的数据库,注意端口号不要写错:

设置表空间的参数时,需要注意各个参数的配置

至此,表空间设置完成

五、创建用户

注意:下列图形化界面操作使用SYSDBA用户登陆

(1)使用指令开启DM管理工具的图形化界面

[dmdba@localhost ~]$ manager

(2)创建用户并填写信息

根据要求填写用户信息,这里的密码为:Dameng123

(3)创建角色并填写信息

授予角色权限

(4)将对应角色授予给DMTEST

授予查询dba_tablespaces的权限

图形化界面操作:

在 对象权限-SYS-视图-系统视图中,找到 DBA_TABLESPACES,选择 select 权限

sql语句操作:

grant select on sys.dba_tablespaces TO dmtest;

六、创建表

注意:下列图形化界面操作使用DMTEST用户登陆

(1)使用DMTEST用户登陆,密码是:Dameng123

创建表的位置在 模式-用户名-表 下

(2)创建DEPT表(先创建这个表,便于之后的外键关联)

注意主键的设置、数据类型设置、非空设置、精度设置等

(3)创建EMP表

注意数据的设置,需要关联DEPT表的主键作为外键

(4)将EMP表和DEPT表进行外键约束

选择外键列,选择参照列

设置完成后,可以查看设置的约束属性

如果创建完成表之后,没有创建外键,则可以通过下列方式创建:

(这里是EMP表的外键引用DEPT表的主键)

七、数据导入

(1)使用终端,切换到dmdba用户,使用DMTEST,密码Dameng123,连接5238上的数据库

[dmdba@localhost ~]$ disql DMTEST/Dameng123@localhost:5238

(2)使用start指令,将sql数据插入到表中

SQL> start /opt/script1.sql

插入后可以使用图形化界面查看,结果如下

直接使用图形化界面操作如下:

(1)打开script1.sql文件,直接全选+复制数据

(2)粘贴到DM管理工具中的查询窗口中,并执行

八、数据库备份

备份之前的准备:

1、在初始化完成数据库实例后,建议直接打开归档设置,便于备份后可以恢复到之前任意时间的数据

(1)切换到dmdba下,打开DM管理工具的图形化界面

[dmdba@localhost ~]$ manager

(2)登陆SYSDBA账号,开启归档设置

注意:在打开归档设置之前,需要将数据库的状态设置为“配置”状态

先点击配置,然后点击转换按钮

最后,别忘记将配置状态修改为打开状态

2-1【冷备份】、 备份之前需要关闭数据库实例

(1)切换到root下,在/dm8/tool下启动数据库服务的图形化界面

[root@localhost tool]# ./dmservice.sh

(2)关闭需要备份的数据库实例

正式备份操作

(1)在终端中开启控制台工具的图形化界面

[dmdba@localhost ~]$ console

(2)选择 备份还原 ,选择 新建备份功能

设置需要备份的路径、名称和备份的类型

备份完成后,即可查看到备份的信息

2-2【热备份】.不需要关闭数据库实例

(1)进入DM管理工具,选择 备份-库备份

(2)设置备份名称和备份路径

3.设置代理环境

4.设置定时任务,在每周日的22点进行完全备份

5.设置定时任务,在周一到周六的22点进行增量备份

九、执行脚本删除数据文件

调用script2.sh,删除表空间

执行如下指令删除:

[dmdba@localhost opt]$ ./script2.sh

存在的问题:

(1)-bash: ./script2.sh: /bin/sh^M: 坏的解释器: 没有那个文件或目录

这个问题是因为script2.sh在windows系统下进行编译,所以文件中存在\r\n字符,需要转换成\n

解决方案:

使用vi打开script2.sh使用如下指令修改::set ff=unix:wq

(2)不存在DmServiceDBSERVER数据库实例

由于之前在创建实例时,原先的实例名称为:DmServiceDMSERVER,后来修改实例名称为:DmServiceDBSERVER,可以使用vi命令,修改script2.sh文件中的实例名称

执行脚本完成后,需要将数据进行还原,还原成之前的数据

(1)打开控制台工具界面,进入“还原”界面

选择之前备份文件的目录,执行库还原

(2)还原完毕之后,选择“恢复”功能

恢复类型选择指定归档恢复,选择之前设置归档的目录

(3)完成恢复之后,选择“更新DB_MAGIC”的功能

执行更新DB_MAGIC的操作

十、数据库逻辑导出

使用SYSDBA登陆数据库,在数据库上右键,选择导出

十一、创建视图

登陆DMTEST账号,使用sql语句添加视图

(1)创建VIEW_HIREDATE,存放数据

create or REPLACE VIEW VIEW_HIREDATE AS SELECT * FROM DMTEST.EMP where DMTEST.EMP.HIRE_DATE >= TO_DATE('-01-01','YYYY-MM-DD') AND DMTEST.EMP.HIRE_DATE <= TO_DATE('-01-01','YYYY-MM-DD');

(2)创建VIEW_SALARY,存放数据

create or REPLACE VIEW VIEW_SALARY AS SELECT e.DEPT_ID,avg(e.salary) AS avgs FROM DMTEST.EMP e GROUP BY e.DEPT_ID HAVING avg(e.SALARY)>12000;

十二、添加索引

这里使用DMTEST账号登陆

(1)在模式中,找到相应的表,新建索引

(2)填写需要设置索引的信息

十三、安装ODBC驱动

安装驱动需要处于root下,执行下列指令操作

[root@localhost ~]# cd /opt

[root@localhost opt]# tar -xvf unixODBC-2.3.0.tar.gz

[root@localhost opt]# cd /opt/unixODBC-2.3.0

[root@localhost unixODBC-2.3.0]# ./configure

[root@localhost unixODBC-2.3.0]# make

[root@localhost unixODBC-2.3.0]# make install

配置odbc驱动,用于链接dm8数据库

[root@localhost unixODBC-2.3.0]# odbcinst -j

[root@localhost unixODBC-2.3.0]# cd /usr/local/etc

(1)配置odbc.ini

[root@localhost etc]# vim odbc.ini

添加以下内容

[dm8]Description = DM ODBC DSNDDriver = DM8 ODBC DRIVERSERVER = localhostUID = SYSDBAPWD = Dameng123TCP_PORT = 5238

(2)配置odbcinst.ini

[root@localhost etc]# vim odbcinst.ini

添加以下内容

[DM8 ODBC DRIVER]Description = ODBC DRIVER FOR DM8DRIVER = /dm8/bin/libdodbc.so

配置完成后,测试能否连接到达梦数据库

[dmdba@localhost ~]$ isql dm8 -v

链接成功的结果如下:

+---------------------------------------+| Connected! || || sql-statement|| help [tablename] || quit || |+---------------------------------------+

问题如下:

在链接数据库时,显示[01000][unixODBC][Driver Manager]Can’t open lib

‘/dm8/bin/libdodbc.so’ : file not found

解决方案:

(1)使用如下命令查看是否未找到so文件的依赖性

[root@localhost etc]# ldd /dm8/drivers/odbc/libdodbc.so

显示如下:

linux-vdso.so.1 => (0x00007ffcb2594000)libdmdpi.so => not foundlibdmfldr.so => not foundlibdmelog.so => not foundlibdmutl.so => not foundlibdmclientlex.so => not foundlibdmos.so => not foundlibdmcvt.so => not foundlibdmstrt.so => not foundlibrt.so.1 => /lib64/librt.so.1 (0x00007fc57b95e000)libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fc57b742000)libdl.so.2 => /lib64/libdl.so.2 (0x00007fc57b53e000)libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007fc57b237000)libm.so.6 => /lib64/libm.so.6 (0x00007fc57af35000)libc.so.6 => /lib64/libc.so.6 (0x00007fc57ab68000)libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007fc57a952000)/lib64/ld-linux-x86-64.so.2 (0x00007fc57bd91000)

(2)因为libdmapi.so未找到,推测为环境变量的问题,修改环境变量

[dmdba@localhost ~]$ vi .bash_profile

修改后:

# .bash_profile# Get the aliases and functionsif [ -f ~/.bashrc ]; then. ~/.bashrcfi# User specific environment and startup programsPATH=$PATH:$HOME/.local/bin:$HOME/binexport PATHexport LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/dm8/bin"export DM_HOME="/dm8"export PATH=$PATH:$DM_HOME/bin:$DM_HOME/tool

修改完成后,使用如下代码使环境变量生效

source .bash_profile

(3)修改后,检查是否存在依赖关系

[dmdba@localhost ~]$ ldd /dm8/bin/libdodbc.so

显示如下:

linux-vdso.so.1 => (0x00007ffcb91f5000)libdmdpi.so => /dm8/bin/libdmdpi.so (0x00007f679bd00000)libdmfldr.so => /dm8/bin/libdmfldr.so (0x00007f679b00c000)libdmelog.so => /dm8/bin/libdmelog.so (0x00007f679ae06000)libdmutl.so => /dm8/bin/libdmutl.so (0x00007f679abf5000)libdmclientlex.so => /dm8/bin/libdmclientlex.so (0x00007f679a9a2000)libdmos.so => /dm8/bin/libdmos.so (0x00007f679a777000)libdmcvt.so => /dm8/bin/libdmcvt.so (0x00007f679a097000)libdmstrt.so => /dm8/bin/libdmstrt.so (0x00007f6799e83000)librt.so.1 => /lib64/librt.so.1 (0x00007f6799c7b000)libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f6799a5f000)libdl.so.2 => /lib64/libdl.so.2 (0x00007f679985b000)libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007f6799554000)libm.so.6 => /lib64/libm.so.6 (0x00007f6799252000)libc.so.6 => /lib64/libc.so.6 (0x00007f6798e85000)libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f6798c6f000)libdmmem.so => /dm8/bin/libdmmem.so (0x00007f6798a62000)libdmcalc.so => /dm8/bin/libdmcalc.so (0x00007f67987f2000)/lib64/ld-linux-x86-64.so.2 (0x00007f679cb71000)

问题答疑

一、无法打开图形化界面

(1)在dmdba用户下,检查图形化界面是否正确

[dmdba@localhost mnt]$ xhost +

正确结果:

access control disabled, clients can connect from any host

错误结果:

xhost: unable to open display ""

解决方案:

[dmdba@localhost mnt]$ export DISPLAY=:0

特殊问题:(考试的虚拟机上,需要查看root下的DISPLAY类型是什么,根据此类型进行设置)

export DISPLAY=:2

结果:

如果仍然不行进行图形化操作,则切换到root下,检查图形化并执行此命令

注意:此操作为临时性的,当从root切换到dmdba时,需要重新设置

二、无法直接调用脚本

如果无法直接输入脚本或者指令调用相应的功能,则需要进行路径的配置:

解决请方案:

请查看准备工作3中的操作并进行路径配置

三、创建数据库时显示打开文件数需要调整

解决方案:

查看图形化操作(一)中第二部分的第三小节,增大打开文件数参数

四、数据库不能自动提示

在数据库查询数据时,不能自动提示函数信息和表的信息,需要手动编写

解决方案:

(1)打开窗口-选项界面

(2)修改编辑器中的语法检查和输入助手功能

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。