达梦8(DM8)数据库入门及使用

to 达梦大学

刘秀君原创,抄袭必究

目录

1     介绍

武汉达梦数据库有限公司成立于2000年,为中国电子信息产业集团(CEC)旗下基础软件企业,专业从事数据库管理系统的研发、销售与服务,同时可为用户提供大数据平台架构咨询、数据技术方案规划、产品部署与实施等服务。多年来,达梦公司始终坚持原始创新、独立研发,目前已掌握数据管理与数据分析领域的核心前沿技术,拥有全部源代码,具有完全自主知识产权。达梦公司是国家规划布局内重点软件企业,同时也是获得国家“双软”认证和国家自主原创产品认证的高新技术企业,拥有国内数据库研发精英团队,多次与国际数据库巨头同台竞技并夺标。

本次内容主要针对达梦8数据库的安装及使用进行实操全程大量截图和演示。

2     安装环境要求

2.1   操作系统

Centos7或中标麒麟7 64位操作系统。本次部署在vmware 15.5环境上。

1、检查操作系统版本及位数:

uname -ra

2、安装KDE/GNOME 桌面环境(没有的话只能命令行操作了)

3、检查操作系统cpu以确保后续用什么版本数据库:

cat /proc/cpuinfo

4、检查数据库依赖包:

rpm -aq|grep glibc

如果没有,执行yum install glibc -y 安装(2.3以上)

5、检查内存 free -m swap分区为物理内存的1.5倍以上

6、检查磁盘空间容量,根据实际业务计算,df -h

2.2   数据库版本

达梦V8试用版 Linux x64版本。

2.3   连接工具

Xshell、vnc

3     开始安装

3.1   安装前准备

3.1.1 操作系统参数调优

操作系统参数将影响数据库的最优运行,需要提前进行调优:

ulimit -a检查open file 最大打开数,默认是1024,需要扩充:

vi /etc/security/limits.conf(重启后生效)

*                soft   nofile          102400

*                hard   nofile          102400

为了不重启服务器,可使用:

ulimit -HSn 102400

临时扩大,重启后失效

3.1.2 VNC安装

[root@dmdb ~]# rpm -q vnc-server

未安装软件包 vnc-server

[root@dmdb ~]# yum install tigervnc-server -y

[root@dmdb ~]# /./usr/bin/vncserver

Warning: dmdb:1 is taken because of /tmp/.X11-unix/X1

Remove this file if there is no X server dmdb:1

You will require a password to access your desktops.

Password:

Verify:

Would you like to enter a view-only password (y/n)? n

A view-only password is not used

New 'dmdb:2 (root)' desktop is dmdb:2

Creating default startup script /root/.vnc/xstartup

Creating default config /root/.vnc/config

Starting applications specified in /root/.vnc/xstartup

Log file is /root/.vnc/dmdb:2.log

开放防火墙端口:

[root@dmdb ~]# firewall-cmd --zone=public --permanent --add-port=5902/tcp

[root@dmdb ~]# systemctl restart firewalld

启停命令:

/usr/local/vncserver :1 stop

/usr/local/vncserver :1 restart

用vnc工具连接测试一下:

VNC安装调试完毕。

3.1.3 上传数据库文件

[root@dmdb /]# cd /opt

[root@dmdb opt]# ls

dm8_setup.iso

3.1.4 挂载ISO镜像

[root@dmdb opt]# mount -o loop /opt/dm8_setup.iso /mnt

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

[root@dmdb opt]# cd /mnt

[root@dmdb mnt]# ls

DMInstall.bin  DM_Install.pdf  release_en.txt  release_zh.txt

挂载成功

3.2   安装数据库程序

3.2.1 创建数据库用户、分组信息,环境变量等配置

groupadd dinstall

useradd -g dinstall dmdba

passwd dmdba  (密码默认设为:dmdba)

创建数据库安装路径:

mkdir /dm8

chown -R dmdba:dinstall /dm8

配置dmdba用户环境变量

[root@dmdb mnt]# su - dmdba

上一次登录:日 6月 21 17:39:25 CST 2020pts/2 上

[dmdba@dmdb ~]$ vi .bash_profile

最底部增加:

export DM_HOME=/dm8

export PAHT=$PATH:$HOME/.local/bin:$HOME/bin:$DM_HOME/bin:$DM_HOME/tool

3.2.2 开始安装数据库

使用图形化界面安装,使用dmdba用户安装

[dmdba@dmdb ~]$ cd /mnt

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

提示图形化安装不了,需要设置xhost 用dmdba用户设置

export DISPLAY=127.0.0.1:2 注意后面2是vnc序号

xhsot +

3.2.3 初始化数据库

安装完毕会自动打开初始化数据库或者使用dmdba运行

./dm8/tool/dbca.sh

这个是为了将数据库加入操作系统服务中。

4     达梦相关资料介绍

4.1   工具命令

cd /dm8/tool

下面有很多日常数据库管理工具,可以方便进行数据库管理维护,下面是各功能的介绍:

./manager 数据库管理工具,可视化数据库管理

./dts数据库迁移工具,导入数据文件或将数据库迁移到达梦

./dbca.sh 数据库配置助手,用于数据库实例的可视化增删,以及数据库服务注册(开机启停数据库)

./console 控制台工具,服务器实例参数管理/备份还原/数据库许可证等

./monitor 性能监控工具,监控系统运行情况

./analyzer审计分析程序,针对审计日志文件进行分析的工具

./dmservice.sh 达梦服务器查看器,用于监控各服务启停情况

./disql  类似oracle的sqlplus 用于连接达梦数据库

4.2   达梦数据库手册

cd /dm8/doc 里面有详细的使用介绍

4.3   连接数据库

su – dmdba

disql sysdba/dameng123

或者指定端口:

disql sysdba/dameng123@localhost:5236

5     数据库使用

可通过:

/dm/tool/manager 图形化来管理

5.1   表空间管理

5.1.1 查询表空间

达梦默认的系统表空间

SYSTEM:数据字典和全局的系统数据

ROLL:存入了数据库运行过程中产生的回滚记录

TEMP:临时表空间

MAIN:存放对象数据的表空间,创建对象的时候,如果不指定表空

间,就是放在该表空间

HMAIN:存放huge table的信息的表空间。

5.1.2 创建表空间

create tablespace "TEST" datafile '/dm8/data/DAMENG/TBS01.DBF' size 32 autoextend on next 1 CACHE = NORMAL;

5.1.3 表空间状态

一般表空间出现问题需要做恢复时,需要先脱机。

脱机状态

alter tablespace TEST offline;

在线状态

alter tablespace TEST online;

5.1.4 表空间维护

5.1.4.1  表空间不足扩容

alter tablespace "TEST" resize datafile 'TBS01.DBF' to 64;

5.1.4.2  扩容表空间文件

先查看表空间有多少文件,可以图形化或者命令查看

select FILE_NAME,STATUS,TABLESPACE_NAME from dba_data_files;

5.1.4.3  增加数据文件

alter tablespace "TEST" add datafile '/dm8/data/DAMENG/TBS02.DBF' size 64;

5.1.4.4  更换存储的位置

注意:system,roll,temp 不能offline

alter tablespace TEST offline;

select tablespace_name,status from dba_tablespaces;

alter tablespace TEST rename datafile

'/dm8/data/DAMENG/TBS02.DBF' to '/dm8/tbs02.dbf';

alter tablespace TEST rename datafile

'/dm8/data/DAMENG/TBS02.DBF' to '/dm8/tbs01.dbf';

alter tablespace TEST online;

5.1.5 临时表空间

select para_name,para_value from v$dm_ini where para_name like

'TEMP%';

5.1.6 Roll表空间

Roll时回滚表空间,如果不够就需要扩充

参数undo_retention

Roll 表空间不足:

Alter tablespace roll resize datafile ‘/dm8/data/DAMENG/ROLL.DBF’

to 256;

5.1.7 删除表空间

drop tablespace test;  后续还要使用先不要删;

5.1.8 实验

创建一个表空间,初始大小50M,表空间由2 个数据文件组成,分别存储在不同的位置,数据文件自动扩展,每次扩展1M,每个数据文件最大100M。

create tablespace "CESHI" datafile '/dm8/CESHI1.DBF' size 50 autoextend on next 1 maxsize 100, '/dm8/CESHI2.DBF' size 50 autoextend on next 1 maxsize 100 CACHE = NORMAL;

5.2   用户管理

5.2.1 用户体系介绍

在DM 数据库中用户管理主要涉及到三块,用户,权限,角色权限:执行特定类型sql 或是访问其他模式对象的权利系统权限:数据库对象的创建,删除,修改等等。

对象权限:对数据对象的数据的操作权限。

数据库预定义用户Sysdba

Sys:不能用于用户登录,是系统内置用户

Syssso

Sysauditor

sysdbo

三权分立(企业版)

Sysdba:数据库系统管理员

Syssso:数据安全员

Sysauditor:数据库审计员

四权分立(安全版)

Sysdba

Syssso

Sysauditor

Sysdbo :数据库对象操作员

5.2.2 用户规则

名字:字母开头,a_z,0-9,$#_

位置:对应的表空间

密码:口令策略

0:无策略

1:禁止与用户名相同

2:口令长度不小于9

4:至少包含一个大写字母

8:至少包含一个数字

16:至少包含一个标点符号(英文状态下输入除空格和“”)

口令可以单独使用,也可以组合使用。比如:要求口令策略禁止用户

名相同,并且口令长度不小于9)

则设置口令策略为1+2=3

Faild_login_attemps:密码尝试登录次数

Password_lock_time:密码失败后锁定时间

Password_life_time 密码过期时间。

策略配置地方在:

/dm8/tool/console

5.2.3 删除用户

drop user test cascade;  级联删除,关联的schema都会被删除

drop user test;只删除用户账号

5.2.4 删除角色

drop role testrole;

5.2.5 案例1

案例1:建立用户test,用户可以创建自己的表,有属于自己的表空间,用户密码要求每60 天变更一次。

create user "TEST" identified by "dameng123"

limit password_life_time 60

default tablespace "TEST";

grant "PUBLIC","VTI" to "TEST";

grant CREATE TABLE to "TEST";

这里就使用上面那个test表空间

查看test拥有哪些权限了

select grantee,granted_role from SYS.DBA_ROLE_PRIVS where grantee='TEST';

查看public角色有哪些权限

SELECT GRANTEE,PRIVILEGE FROM SYS.DBA_SYS_PRIVS WHERE GRANTEE='PUBLIC';

5.2.6 案例2

规划一个用户test2,用户每60 天变更一次密码,密码尝试连

接2 次失败,账号锁定5 分钟,用户能查询dmhr.employee 表。

create user "TEST2" identified by "dameng123"

limit failed_login_attemps 2, password_life_time 60, password_lock_time 5;

grant "PUBLIC","VTI" to "TEST2";

grant SELECT on "DMHR"."EMPLOYEE" to "TEST2";

5.2.7 案例3

企业招聘一批录入人员,权限固定,只能录入city 表的权限。

角色:一组固定权限的集合。

create role "TESTROLE3";

grant REFERENCES ANY TABLE to "TESTROLE3";

grant INSERT on "DMHR"."CITY" to "TESTROLE3";

grant "TESTROLE3" to "TEST2";

测试一下:

[dmdba@dmdb ~]$ disql test2/dameng123

SQL> insert into dmhr.city(city_id,city_name,region_id) values('11','beijing',1);

SQL>commit;

5.3   模式对象管理

模式(scema)是一个特定的对象集合,在概念上可将其看作是包含表、视图、索引等若干对象的对象集模式对象:表、视图、约束、索引、序列、触发器、存储过程/函数、包、同义词、类、域Dm 创建用户的时候,会默认去创建一个同名的式,如果你创建的用户,模式名已存在,用户无法创建一个用户可以拥有多个模式。

5.3.1 表操作

create table "TEST"."STU"

(

"ID" CHAR(10) not null ,

"SNAME" VARCHAR(20) not null ,

"SEX" CHAR(1),

"AGE" INT,

"TEL" VARCHAR(15) not null ,

"ADDRESS" VARCHAR(50),

primary key("ID")

)

storage(initial 1, next 1, minextents 1, fillfactor 0, on "STU");

comment on table "TEST"."STU" is 'STUDENT INFO';

增加列

alter table DMHR.TEST add column(AGE INT);

删除列

alter table DMHR.TEST drop column AGE;

5.3.2 创建表指定约束

1、非空约束

SQL> create table test.t1(id int);

48

SQL> alter table test.t1 modify id int not null;

2、唯一约束(唯一约束遇到null,忽略,可录入多个null 值)

SQL> create table test.t3(id int, name varchar(20) unique);

SQL>insert into test.t3 values(1,'ssss');

SQL> insert into test.t3 values(2,null);

SQL> insert into test.t3 values(3,null);

SQL> insert into test.t3 values(4,null);

commit;

3、主键约束(一张表只能有一个主键约束)

SQL> create table test.t4(id int primary key, name varchar(20));

SQL> create table test.t5(id int);

SQL> alter table test.t5 add constraint t5_pri primary key(id);

4、检查约束

SQL> create table test.t6(id int check(id>=5));

5、外健约束

SQL> create table test.t8(sid int primary key ,pid int);

SQL> create table test.t9(id int primary key,sid int foreign key references

test.t8(sid));

外键一定是其他表的主键。

6、对列加备注;

SQL> comment on column test.t8.sid is '测试';

查看约束

select CONSTRAINT_NAME,CONSTRAINT_TYPE,TABLE_NAME,STATUS from dba_constraints where TABLE_NAME='T8';

select * from dba_col_comments where table_name='T8';

5.3.3 导入数据

create table test.t10(sid int);

制造数据

vi test.sql

insert into test.t10(sid) values(1);

insert into test.t10(sid) values(2);

insert into test.t10(sid) values(3);

insert into test.t10(sid) values(4);

insert into test.t10(sid) values(5);

insert into test.t10(sid) values(6);

两种操作,命令行:

SQL> start /home/dmdba/test.sql

图形化:

/dm8/tool/dts

这个执行特别慢。

完成后执行:

select * from test.t10

5.3.4 表维护

1、重命名:

SQL> alter table test.t1 rename to tt;

启用和禁用约束

SQL>select

CONSTRAINT_NAME,CONSTRAINT_TYPE,TABLE_NAME,STATUS from

dba_constraints where TABLE_NAME='T3';

alter table test.t3 disable constraint CONS134218845;

alter table test.t3 enable constraint CONS134218845;

删除表:

SQL> drop table test.tt;

5.3.5 视图

视图分类:简单视图,复杂视图,物化视图

1、简单视图

创建语法:create view() as select() from() where ()

修改语法:craete or replace view() as select () from () where ()

SQL> create view test.v1 as select * from dmhr.employee;

SQL> create or replace view test.v1 as select employee_name from

dmhr.employee limit 5;

删除视图

SQL> drop view test.v1;

查询视图

DBA_VIEWS;

5.3.6 索引

索引的作用:加快表的查询,增加数据库的查询性能,对数据库做DML 操作的时候,数据库会自动维护索引,索引占空间。

达梦支持的索引:二级索引,位图索引,唯一索引,复合索引,函数索引,分区索引等。

建立索引的规则:

适合建索引的情况:

1、经常查询的列

2、连接条件列

3、谓词经常出现的列(where)

4、查询是返回表的一小部分数据。

不适合建索引的情况

1、列上有大量的null

2、列上的数据是有限的(性别)

查看表的索引

select table_name,index_name from dba_indexes where

table_name='STU';

创建索引:

规划索引表空间,表的数据无序的,索引的数据是有序的

创建索引表空间

SQL> create tablespace index1 datafile '/dm8/data/DAMENG/index1_01.dbf' size 32;

建索引

SQL> create table test.emp as select * from dmhr.employee;

SQL> create table test.dept as select * from dmhr.department;

SQL> create index ind_emp on test.emp(employee_id) tablespace index1;

查看表的执行计划

SQL> explain select * from test.emp where employee_id<20;

1   #NSET2: [0, 42, 280]

2     #PRJT2: [0, 42, 280]; exp_num(12), is_atom(FALSE)

3       #SLCT2: [0, 42, 280]; EMP.EMPLOYEE_ID < 20

4         #CSCN2: [0, 856, 280]; INDEX33555551(EMP)

没有走我们自己建的索引,统计信息是旧的,需要得新收集统计信息;

收集统计信息

SQL> begin

dbms_stats.gather_table_stats('TEST','EMP');

END;

/

DMSQL 过程已成功完成

SQL>  explain select * from test.emp where employee_id<20;

1   #NSET2: [0, 1, 280]

2     #PRJT2: [0, 1, 280]; exp_num(12), is_atom(FALSE)

3       #BLKUP2: [0, 1, 280]; IND_EMP(EMP)

4         #SSEK2: [0, 1, 280]; scan_type(ASC), IND_EMP(EMP), scan_range(null2,20)

注意:创建索引,删除索引,重建索引和收集统计信息,不要在业务

高峰去做。在业务低谷的时候去操作。

维护索引:

重建索引:

SQL> alter index test.ind_emp rebuild;

SQL> alter index test.ind_emp rebuild online; ---慎用

删除索引:

SQL> drop index test.ind_emp;

注意:达梦默认不会自动收集统计信息,需要手动收集,可以利用作

业来定时的自动收集。

5.4   DMSQL

5.4.1 介绍

DMSQL 基于sql92,部分sql99 的。

Sql 语句的分类

DQL:数据查询语句select ...from....where 组成的查询块

DDL:数据定义语句create table create view create index 等等

DML:数据操作语句insert update delete

DCL:数据控制语句用于授予或回收访问数据库的某种特权,控制数据操作纵事务,对数据库进行监视等

Grant revoke commit rollback lock unlock 等。

5.4.2 语法

语法:select () from () where ()

过滤查询

Where

Where 子句常用的查询条件

谓词种类谓词

比较> < <= >= != not

确定范围Between and >= and <=

集合In not in

字符匹配Like not like

空值Is null is not null

这些和日常oracle语法都一样

多重条件And or

注意like用法 %号模糊匹配,_下划线匹配后面一个字,两个下划线两个字

select employee_name,salary from test.emp where employee_name like

'刘%';

select employee_name,salary from test.emp where employee_name like

'刘_';

查找工资在20000 到30000 之间的员工。

Sql>select employee_name,salary from test.emp where salary between

20000 and 30000;

等价的sql

SQL> select employee_name,salary from test.emp where salary >=20000

and salary<=30000;

5.4.3 函数

5.4.3.1  单行函数

 大小写处理函数

5.4.3.2  字符处理函数

5.4.3.3  数值处理函数

ROUND:将值舍入到指定的小数位(四舍五入)

ROUND(49.36, 1) 49.4

TRUNC:将值截断到指定的小数位(不舍入)

TRUNC(49.36,1) 49.3

MOD:返回除法运算的余数

MOD(100, 3) 1

5.4.3.4  日期函数

MONTHS_BETWEEN 两个日期之间的月数

ADD_MONTHS 将日历月份添加到日期中

NEXT_DAY 指定日期的下一天

LAST_DAY 月份的最后的一天

显示转换

TO_CHAR

select employee_name,to_char(salary,'L999,999.00') from

dmhr.employee;

TO_NUMBER (char [,fmt])

TO_DATE (char [,fmt])

select employee_name,hire_date,to_date(hire_date,'yyyy-mm-dd') from

dmhr.employee;

5.4.3.5  分组函数

分组函数作用于一组数据,并对一组数据返回一个值。

常见的分组函数:

AVG 、COUNT 、MAX 、MIN 、SUM…

案例1:求各个部门的最高工资。

select department_id,max(salary) from test.emp group by

department_id;

案例2:找出部门平均工资大于10000 的所有部门。

select department_id,avg(salary) av1 from test.emp

group by department_id having avg(salary)>10000 order by av1 desc;

注意:having 表示分组后的数据进行过虑,having 不能单独使用,一定是和group by 一起使用的,分组函数不能出现在where 子句中。

5.4.3.6  排序order by

升序:asc 降序:desc 默认是升序

案例3:从邮件地址中取出邮箱名字

select substr(email,1,(instr(email,'@')-1)), employee_name from test.emp limit 10;

5.4.4 多表联接查询

语法:select () from join () on()

1、内连接:结果集显示全部满足条件的记录。

select employee_name,department_name

from test.emp e join test.dept d on e.department_id=d.department_id

2、外连接

左外连接:把left join 左边的全部显示出来,右边的只显示满足条件

的,不满足条件的用null 代替

select employee_name,department_name

from test.emp e left join test.dept d on

e.department_id=d.department_id

右外连接:把right join 右边的全部显示出来,左边的只显示满足条

件的,不满足条件的用null 代替

select employee_name,department_name

from test.emp e right join test.dept d on

e.department_id=d.department_id

全外连接=左外连接+右外连接

select employee_name,department_name

from test.emp e full join test.dept d on

e.department_id=d.department_id

5.4.5 DML 语句

insert into

insert into test.dept values('1106', 'aaaaa', '9002', 9);

update

update test.emp set department_id=null where employee_id='1001';

delete

delete test.dept where department_id='1106';

MERGE 语法

使用merge into 语法可以合并update 和insert 语句

merge into test.t1 using test.t12 on (test.t1.c1=test.t12.c3)

when MATCHED THEN update set test.t1.c2=test.t12.C4

when not matched then insert (c1,c2) values (test.t12.c3,t12.c4);

5.5   备份还原

5.5.1 介绍

数据库备份就是制作数据库的“副本”防止数据库丢失数据,在数据丢失后重建数据库.

完全备份是指一个备份包含指定数据库或表空间的所有数据

增量备份是指在一次全备份或上一次增量备份后,以后每次的备份只需备份与前一次相比增加或者被修改的文件。

备份的方式:物理备份和逻辑备份

备份的介质:磁盘,磁带,光盘

集群:数据守护,dsc (rac)

也支持第三方的备份软件:爱数,鼎甲

5.5.2 物理备份

5.5.3 冷备和热备

5.5.3.1  热备管理工具方式

backup database full to "DB_DAMENG_FULL_2020_06_21_22_58_54" backupset 'DB_DAMENG_FULL_2020_06_21_22_58_54';

命令行方式下全备,增量备

全备

SQL> backup database full backupset '/dm8/backup/fullbak2';

增量备

SQL> backup database increment backupset '/dm8/backup/incr_bak';

表空间还原:

表空间只能脱机还原,使用Dmrman

模拟表空间test 损坏:

[dmdba@localhost DAMENG]$ mv TEST01.DBF TEST01.DBF.BAK

重启实例服务,实例处于mount 状态。关闭实例服务

使用dmrman 进行还原

1、校验备份集

RMAN> check backupset '/dm8/backup/fullbak2';

2、还原表空间

RMAN> restore database '/dm8/data/DAMENG/dm.ini' tablespace test

from backupset '/dm8/backup/fullbak2';

2、恢复表空间

RMAN> recover database '/dm8/data/DAMENG/dm.ini' tablespace test;

重启实例服务

5.5.3.2  冷备控制台方式

冷备:dmap 服务是打开的,数据库实例是关闭的。

[root@dmdb tool]# ./console

勾上dmap会造成连接通信超时

【问题原因】DmServerDMSERVER服务没有关闭。DMRMAN是脱机备份,备份时一定要关闭数据库。

【解决方法】:使用root执行如下命令关闭数据库实例服务(DMSERVER是数据库实例名)即可。

systemctl stop DmServiceDMSERVER.service

脱机还原时,先还原再恢复。

特别注意,如果还原时候出现服务无法启动,八成你是用root用户启动的图形化界面,所以造成了还原时部分文件权限发生改变,应该用dmdba启动./console

systemctl start DmServiceDMSERVER.service

5.5.3.3   冷备DMRMAN 工具去备

[-137]:服务器正在运行或者存在其他进程正在操作同一个库

需要停止服务

systemctl stop DmServiceDMSERVER.service

冷备:要停止数据库,如果不停止会造成数据丢失

5.5.3.4  逻辑备份

导入导出(dexp,dimp)

分四级别:分别独立,互斥不能同时存在

Ø  数据库级别

Ø  用户

Ø  模式

Ø  表级

1、逻辑导出

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

2、逻辑导入

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

5.6   作业

.

call SP_CREATE_JOB('TEST01',1,0,'',0,0,'',0,'');

call SP_JOB_CONFIG_START('TEST01');

call SP_ADD_JOB_STEP('TEST01', 'job1', 5, '01010/dm8/backup|/dm8/backup', 1, 2, 0, 0, NULL, 0);

call SP_ADD_JOB_SCHEDULE('TEST01', 'task1', 1, 2, 1, 40, 0, '23:52:03', NULL, '2020-06-21 23:52:03', NULL, '');

call SP_JOB_CONFIG_COMMIT('TEST01');

5.7   DM8 ODBC配置

达梦支持的语言:c c++ java python php perl .net

15.1 Linux 环境中配置ODBC(以root 配置)

检查gcc 包

[root@localhost ~]# rpm -aq|grep gcc

[root@dmdb unixODBC-2.3.0]# yum install gcc -y

解压安装包

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

配置odbc

[root@localhost unixODBC-2.3.0]# ./configure --enable-gui=no

(注意如果抱错,就是因为gcc没装)

编译安装ODBC

[root@localhost unixODBC-2.3.0]# make && make install

查看odbc 的版本

[root@localhost unixODBC-2.3.0]# odbc_config --version

2.3.0

查看ODBC 配置文件的路径

[root@dmdb 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

SQLLEN Size........: 8

SQLSETPOSIROW Size.: 8

配置odbc.ini 和odbcinst.ini

vi /usr/local/etc/odbc.ini

[dm8]

Description = DM ODBC DSND

Driver = DM8 ODBC DRIVER

SERVER = localhost

UID = SYSDBA

PWD = dameng123

TCP_PORT = 5236

vi /usr/local/etc/odbcinst.ini

[DM8 ODBC DRIVER]

Description = ODBC DRIVER FOR DM8

DRIVER = /dm8/bin/libdodbc.so

标签:...,数据库,dm8,test,select,SQL,DM8,达梦

来源: https://blog.csdn.net/cnor/article/details/106917758

达梦dm8可视化工具_DM8(达梦8)数据库安装和使用相关推荐

  1. 达梦dm8可视化工具_活字格兼容达梦DM8,低代码支持数据库国产化

    DM8是达梦公司在总结DM系列产品研发与应用经验的基础上,坚持开放创新.简洁实用的理念,历经五年匠心打磨,推出的新一代自研数据库.DM8和同类自主知识产权数据库一起,正在引领数据库国产化的大趋势. ( ...

  2. 夜神模拟器导出数据库itcase.db,连接可视化工具SQLite,Android studio数据库查看

    打开夜神模拟器开发者选项 在夜深模拟器设置–>关于平板电脑–>版本号(连续点击5次即可打开开发 者选项) 退出关于平板电脑,可以发现设置里面多了个开发者选项,进入开发者选项,打开USB调试 ...

  3. Redis可视化工具Redis Desktop Manage下载与安装

    一.下载 Redis Desktop Manage 官网下载地址:https://redisdesktop.com/download github地址:https://github.com/uglid ...

  4. 达梦DM8全备时报错:-8069 待备份数据文件无效

    使用达梦DM8管理工具manager链接数据库,使用"备份"-->"库备份"-->"新建备份"后,创建全库备份报错: [报错信息 ...

  5. 安装Robo 3T(Robomongo)MongoDB可视化工具

    没有一个可视化工具还是不太方便--所以安装一个 Robo 3T 官方下载链接 下载好的tar.gz文件 tar -xzf robo3t-1.1.1-linux-x86_64-c93c6b0.tar.g ...

  6. mac安装svn的两种方式(使用brew安装svn 和 可视化工具SnailsvnLite)

    mac安装svn的两种方式(使用brew安装svn 和 可视化工具SnailsvnLite) 1. 使用homebrew安装svn 1.1 安装homebrew 1.2 安装svn 与使用 1.2.1 ...

  7. 零基础学SQL(四、可视化工具连接数据库、数据库创建及删除)

    目录 一.使用Navicat链接MYSQL 二.创建数据库 1.创建数据库的命令 2.删除数据库  删库需谨慎 3.修改数据库名称 三.可视化工具操作 1.创建数据库 2.删除数据库 删库需谨慎 一. ...

  8. mongodb robo3t 可视化工具查询日期

    mongodb robo3t 可视化工具查询日期.mongodb数据库用起来黑框提示 cmd,像我这种彩笔真是苦难.还好有robo3t可视化工具,不懂就右键点点点点.下面是日期查询的心得.mongod ...

  9. 达梦数据源配置_达梦DM8 数据库 DEM(Dameng Enterprise Manager) 安装配置

    一,DEM介绍 DEM全称为Dameng Enterprise Manager.DEM提供了达梦数据库对象管理和数据库监控的功能.https://www.cndba.cn/flynt/article/ ...

最新文章

  1. numpy使用[]语法索引二维numpy数组中指定数据行的数值内容(accessing the specific row in numpy array)
  2. 电脑卡,eclipse Android stadio 卡,什么都卡解决方法
  3. JSP简单练习-定时刷新页面
  4. XAML和VBA 7规范发布
  5. BZOJ 1398: Vijos1382寻找主人 Necklace(最小表示法)
  6. IntelliJ idea 给git下来的项目配置python环境(Anaconda)
  7. 好工作为什么会与你擦肩而过?
  8. TensorFlow实验(1)
  9. 六一儿童节特辑|哪部“奥特曼”才是90后的心中最爱??数据分析师来告诉你...
  10. 算法(七):图解动态规划
  11. [211渣硕] 腾讯/阿里/携程 详细NLP算法实习 面经
  12. 斗鱼第三方开放平台2.2版使用记录
  13. idea 搭建 tensorflow 的 java 开发环境
  14. Unity学习笔记–无限地图
  15. 运筹优化学习07:Lingo的 @if 函数的使用方法
  16. 人工神经网络指标是什么,人工神经网络指标分析
  17. UGUI Canvas(画布)详解
  18. 把linux装在移动硬盘上,我将Linux装到了移动硬盘上o(∩_∩)o
  19. 2019-01-09 工作日志:记录web3连接 respon
  20. K空间的理解 倒空间

热门文章

  1. 分子运动android,分子热运动
  2. 如何使移动设备字体大小自适应
  3. 46、微信-群聊列表
  4. python 基于PHP在线音乐网站
  5. Unity的Carte Blanche简介
  6. uefi装完系统后无法引导_uefi模式怎么重装系统|uefi重装系统教程
  7. HTML的div作用
  8. 企业微信预览图片的接口使用wx.previewImage
  9. pyttsx3设置男性声音
  10. 2017年美国50家最顶尖的初创公司排行榜