达梦数据库DCA

达梦数据库

DMSQL
DML(数据库管理):select、insert、update、delete
DDL(数据库定义):create drop alter table truncate DCL(权限控制):grant、revoke
TCL(事务控制):commit roll back

简单查询
语法
Select () from ();
单列查询
查询员工表的姓名
SQL> select employee_name from dmhr.employee;

多列查询
查询员工表的姓名,部门编号,工资
select employee_name,department_id,salary from dmhr.employee;

查询所有列
select * from dmhr.employee;

对列起别名
查询员工的姓名和工资
select employee_name,salary as gz from dmhr.employee; select employee_name,salary gz from dmhr.employee;

连接||
查询“xx的工资xx”
select employee_name||‘的工资是:’||salary from dmhr.employee;

去重复 distinct(隐藏排序)
查询部门编号
select distinct department_id from dmhr.employee

表达式: salary+1000
为所有人工资加 1000
select employee_name,salary,salary+1000 as total from dmhr.employee;

过滤查询

语法
Select () from () where ()
比较运算符、逻辑运算、in、is null/is not null,between*** and,like

比较运算符:= > >= < <= <> !=
Select employee_name,salary from dmhr.employee where employee_name=‘马学铭’; Select employee_name,salary from dmhr.employee where salary>=30000;

逻辑运算符:and or not
select employee_name,department_id,salary from dmhr.employee where department_id=101
and salary>=10000;
select employee_name,department_id,salary from dmhr.employee where department_id=103
or salary>=25000;

模糊查询:like % _
%匹配 0 个或多个字符
Select employee_name,salary from dmhr.employee where employee_name like ‘李%’;
匹配 1 个字符
Select employee_name,salary from dmhr.employee where employee_name like '李
’;

IN
select employee_name,department_id from dmhr.employee where department_id in (101,102);

Is null/is not null null 为空,不等于 0
select employee_name,job_id from dmhr.employee where job_id is null;

Between… and …
select employee_name,department_id,salary from dmhr.employee where salary between 10000 and 20000;

排序

升序 asc
select employee_name,salary from dmhr.employee order by salary asc;

降序 desc
select employee_name,salary from dmhr.employee order by salary desc;

DM8体系结构

DMSERVER:C/S架构,由客户端+服务器构成数据库=数据库文件+实例
数据库文件:配置文件、控制文件、数据文件、重做日志文件、归档日志文件、跟踪日志文件、 备份文件
实例:一组进程/线程+共享内存实例又分为单实例和集群(dsc)
单实例就是一个实例管理一个数据库,dsc是多个实例管理一个数据库,类似于oracle rac。

分组函数

Count
max
min
avg
sum
语法:
Select () from () where () group by () having ();
除了聚合函数不用跟在 group by 后面,其他 select 列必须要跟在 group by 后面,having 是对 group by 的进一步过滤,不能单独使用。
求部门工资和大于 10 万的部门
select department_id,sum (salary) from dmhr.employee group by department_id
having sum (salary) >100000;

多表连接查询

内连接

结果集只显示满足条件的记录自然连接
查询不需要指定连接列,根据列名自己过滤,两个表连接的列名和数据类型要一致。select employee_name,department_id,department_name from dmhr.employee natural join dmhr.department;

交叉连接(笛卡集)
select count() from dmhr.employee;–856
select count(
) from dmhr.department;–46 39376
select count() from dmhr.employee cross join dmhr.department; select count() from dmhr.employee,dmhr.department;

USING
在满足多个连接列时,可以指定一个列做连接,连接的列前面不能加表名或者是前缀。select employee_name,department_name,department_id from dmhr.employee join dmhr.department
using (department_id);

ON
select a.city_name,b.street_address from dmhr.city a join dmhr.locationb on a.city_id=b.city_id

Hash join
可以通过 hint 强制走 hash join
优化器 CBO 根据小表的连接列生成 hash 值,根据 hash 值去连接大表,扫描大表

select e.employee_name,d.department_name from dmhr.employee e inner hash join dmhr.department d
on e.department_id=d.department_id;

外连接

结果集除了显示满足条件的记录,不满足的也显示,用 null 代替左外连接 left join
把 left join 左边的全部显示出来,右边的只显示满足条件的记录,不满足条件的用 null 代替
select a.city_name,b.street_address from dmhr.city a left join dmhr.location b on a.city_id=b.city_id;

右外连接 right join
把 right join 右边的全部显示出来,左边的只显示满足条件的记录,不满足条件的用 null 代替
select a.city_name,b.street_address from dmhr.city a right join dmhr.locationb on a.city_id=b.city_id;

全外连接 full join
左外+右外
select a.city_name,b.street_address from dmhr.city a full join dmhr.location b on a.city_id=b.city_id;

子查询

当一个查询是另一个查询的条件时,就叫子查询。子查询先运行,子查询的结果是主查询的 条件。子查询可以嵌套子查询,子查询可以做为临时表做连接。

单行子查询
一次只返回一条记录
select employee_name,department_id from dmhr.employee where EMPLOYEE.DEPARTMENT_ID=(select EMPLOYEE.DEPARTMENT_ID from dmhr.employee
where employee_name=‘马学铭’);

多行子查询
一次返回多条记录

select employee_name,department_id,salary from dmhr.employee where salary > all(select salary from dmhr.employee
where department_id=102);

一.DM8存储结构

1.物理结构
配置文件
以.ini结尾的文件:
dmarch_example.ini
dmdcr_cfg_example.ini
dmdcr_example.ini
dm.ini
dminit_example.ini
dmmal_example.ini
dmmonitor_example.ini
dmmpp_example.ini
dmtimer_example.ini
dmwatcher_example.ini
sqllog_example.ini
sqllog.ini

dm.ini满足oracle pfile+spfile文件可以查看视图v d m i n i s e l e c t p a r a n a m e , p a r a v a l u e , p a r a t y p e f r o m v dm_ini select para_name,para_value,para_type from v dminiselectparaname,paravalue,paratypefromvdm_ini ; Sys:系统级,影响全局
Session:会话级,针对当前会话有效Readonly:只读,只能手动编辑参数文件Infile:静态参数,实例重启才能生效。

修改参数有以下几种方法:
1)Vi dm.ini 修改完成之后,无论是动态还是静态参数,都需要重启数据服务;
2)Sp_set_para_value(参数类型,’参数名’,参数值) ;
1等于both,即改即生效,会同时改变内存中和参数中的值。
2等于infile,只改变参数中的值,需要重启才能生效。 修改数据库兼容模式COMPATIBLE_MODE
是否兼容其他数据库模式。
0:不兼容,
1:兼容SQL92标准,
2:兼容ORACLE,
3:兼容MS SQL SERVER,
4:兼容MYSQL
修改数据库为兼容oracle的模式
sp_set_para_value(2,‘COMPATIBLE_MODE’,2);

3)通过console工具修改参数,无论是动态还是静态参数,都需要重启数据服务,考试时通过此方法修改兼容性参数;
4)Alter system修改

数据文件
以.DBF结尾的文件
MAIN.DBF
ROLL.DBF
SYSTEM.DBF
TEMP.DBF

视图:dba_data_files;
SQL>select file_name,status from dba_data_files;

控制文件
以.ctl结尾的文件
控制文件中记录了数据库的模式,数据库名,oguid,上一次启动时间,启动次数,数据文件 的版本。
SQL> select para_name,para_value from v d m i n i w h e r e p a r a n a m e l i k e ′ 查 看 控 制 文 件 内 容 工 具 d m c t l c v t 查 看 帮 助 [ d m d b a @ l o c a l h o s t b i n ] dm_ini where para_name like '%PATH%'; 查看控制文件内容工具dmctlcvt 查看帮助 [dmdba@localhost bin] dminiwhereparanamelikedmctlcvt[dmdba@localhostbin] ./dmctlcvt help
将控制文件转换为文本文件
[dmdba@localhost bin]$ ./dmctlcvt type=1 src=/dm8/data/DAMENG/dm.ctl dest=/tmp/dmctl.txt

重做日志文件
重做日志文件记录的是数据库发生变化(insert,update,delete,alter,create)的信息。达梦没有日志组,至少需要两个重做日志文件。重做日志的特点是循环写,可覆盖。重做日志文件可以 重命名、扩展大小,也可以添加。重做日志文件不能被删除。重做日志文件频繁切换会对数据 库产生比较大的影响,考虑增加日志文件,或者是扩展文件大小。
视图:v$rologfile

查询重做日志文件
SQL>select file_id,path,rlog_size from v$rlogfile;

新增重做日志文件
SQL> alter database add logfile ‘/dm8/data/DAMENG/DAMENG03.log’ size 300;

resize重做日志文件大小
SQL> alter database resize logfile ‘/dm8/data/DAMENG/DAMENG01.log’ to 300; SQL> alter database resize logfile ‘/dm8/data/DAMENG/DAMENG02.log’ to 300;

迁移重做日志文件
alter database mount;
alter database rename logfile ‘/dm8/data/DAMENG/DAMENG01.log’ to ‘/dm8/DAMENG01.log’; alter database open;

归档日志文件
就是重做日志文件的副本。用来做数据库备份恢复,数据库守护集群、读写分离集群的同步。 开启归档:
CLI:
SQL> alter database open;
操作已执行
已用时间: 00:00:01.781. 执行号:0.
SQL> alter database mount; SQL> alter database archivelog;
SQL> alter database add archivelog ‘type=local,dest=/dm8/data/arch,file_size=100,space_limit=0’; SQL> select name,arch_mode from v$database;

行号 NAME ARCH_MODE


1 DAMENG Y

SQL> alter database open; GUI:
将数据库启动到mount状态

备份文件
以.bak为扩展名的文件。备份文件就是数据库在某一个时间点的副本。

跟踪日志文件
跟踪日志文件记录的是各会话执行的sql信息。还记录了数据库错误信息、性能相关问题。 通过参数SVR_LOG,默认值为0,关闭。

2.逻辑结构

页:默认为8k,支持4k,8k,16k,32k。是数据库最小的分配单元。页对应的是操作系统块。页是由页头信息、数据、空闲空间、行偏移数组组成。页头信息包含了页类型、页地址,行偏 移数组记录的数据和空闲空间的比例(filefactor)。
簇:
簇:簇是一组连续的页组成,默认为16个页,支持16、32个页。一个簇总是在一个数据文件 中。
段:是簇的上级逻辑单元,段是可以跨多个数据文件的。段又分为数据段(表、索引),临时 段,回滚段。
dba_segments
表空间:可以拥有一个或多个数据文件,一个数据文件只能属于一个表空间。

二.内存结构

共享内存池是DMSERVER启动时从操作系统申请的一大片内存,实例在运行中可以向共享内存 池申请或者释放内存。

MAX_OS_MEMORY:可以使用物理内存的百分比MEMORY_POOL:公共池,减少系统调用MEMORY_TARGET:为0表示不限制内存使用。
运行时内存池:给特定模块单独使用,例如会话内存池和虚拟机内存池。 数据缓冲区
缓存的是数据页(空闲、干净、脏、正在使用),使用数据缓冲区可以提高数据库的读写性能。 数据库缓冲区设置的太小会造成性能问题,设置的过大,又会引起资源浪费。
参数:buffer
在这里插入图片描述
参考值:oltp物理内存的40%-60%
Olap物理内存的60%-80%
数据缓冲区有4种类型:
Normal、keep:可以手动调整。默认为normal。 达梦缓存的是表空间,oracle魂村的是表。
Fast、 recycle:系统自动管理。Recycle缓存的是临时数据。

读多页:全表扫描比较多
Multi_page_get_num

日志缓冲区
存放的是重做日志信息,单位是页,避免直接对磁盘进行操作,提升数据库的性能。
在这里插入图片描述
重做日志的刷盘机制:每三秒,事务提交。字典缓冲区
字典缓冲区主要缓存的是数据字典的信息,包含表,列的信息。数据库中存在大量表或者表分 区时,应该要调整字典缓冲区。
在这里插入图片描述
SQL缓冲区
用来存放执行计划,sql结果集、包。对于sql类别比较多,应该调整sql缓冲区。
在这里插入图片描述
排序区

排序区就是sql排序需要的内存空间,在内存中无法完成将转移到磁盘上(临时表空间)
在这里插入图片描述
三.线程结构

监听线程
检测来自客户端的连接请求,把任务交给工作线程。

IO线程
将数据页从磁盘读入数据缓冲区中,将数据缓冲区中的脏页在一定机制(缓冲区满,数据库关 闭,执行检查点)下刷到磁盘中。

日志刷新线程
将重做日志缓冲区中的记录在一定机制下刷新(事务提交,执行检查点,每3秒,缓冲区满, 数据库关闭)到重做日志文件。

日志归档线程
将重做日志文件在切换时拷贝到归档路径下。

日志重做线程
主要用于数据库恢复。

调度线程
检查系统级的时间触发器;
清理SQL 缓存、计划缓存中失效的项,或者超出缓存限制后淘汰不常用的缓存项; 动态缓冲区检查。根据需要动态扩展或动态收缩系统缓冲池;
自动执行检查点; 会话超时检测;
必要时执行数据更新页刷盘; 唤醒等待的工作线程;
一个SQL执行过程
A客户端发起连接请求(监听线程、工作线程) B语法分析(字典缓冲区、SQL缓冲区)
C语义分析(字典缓冲区) D权限分析(字典缓冲区)
E查看数据库页是否在buffer中,在内存中就会产生逻辑读,不在就会产生物理读(数据缓冲区, sql缓冲区,IO线程)
F数据发生变更(日志缓冲区、日志刷新线程,数据缓冲区,IO线程,工作线程)
G是否有可用的执行计划,有就按执行计划执行,没有则生成执行计划,执行sql,结果集返回 客户端。(字典缓冲区、排序区、hash区、工作线程、IO线程、sql缓冲区)

表空间

介绍达梦数据库表空间:
SYSTEM:系统表空间,存放数据字典信息、动态性能视图ROLL:回滚表空间,存放数据库运行中的回滚记录TEMP:临时表空间,做排序
MAIN:数据库默认表空间,存放的是用户的数据。创建用户或者数据库对象时不指定表空间, 就放在该表空间中。
HMAIN:HUGE表空间

创建表空间(也可以通过manager工具进行创建)
案例1:创建一个初始大小为20m的表空间。
SQL> create tablespace test datafile ‘/dm8/data/DAMENG/TEST01.DBF’ size 30m; create tablespace test datafile ‘/dm8/data/DAMENG/TEST01.DBF’ size 30m;

SQL> create tablespace test datafile ‘/dm8/data/DAMENG/TEST01.DBF’ size 30; create tablespace test datafile ‘/dm8/data/DAMENG/TEST01.DBF’ size 30;

表空间数据文件初始化大小是4096*页(8192)=32M

表空间不足

扩展数据文件
alter tablespace “TEST” resize datafile ‘TEST01.DBF’ to 2000;
添加数据文件
alter tablespace “TEST” add datafile ‘/dm8/data/DAMENG/TEST02.DBF’ size 100 autoextend on next 1 maxsize 2000;

更换数据文件路径

表空间脱机
Alter tablespace test offline;

更换路径
SQL> alter tablespace test rename datafile ‘/dm8/data/DAMENG/TEST01.DBF’ to ‘/dm8/TEST01.DBF’;

表空间联机
SQL> alter tablespace test online;

维护回滚表空间
alter tablespace “ROLL” add datafile ‘/dm8/data/DAMENG/ROLL02.DBF’ size 100 autoextend on next 1 maxsize 10240;

表空间删除
Drop tablespace test;

用户

企业版数据库预定义的用户:
Sys:不能登录,存放的数据字典和视图Sysdba:管理员
Sysauditor:审计员Syssso:安全员
安全版用户:
在企业版基础上,增加sysdbo——数据库对象操作员

规划用户:
命名:以字母开头,a-z,0-9,$#_,长度不超过128个字符 权限分配:系统权限、对象权限、角色
存储:表空间
密码策略:PWD_POLICY
设置系统默认口令策略。
0: 无策略;
1: 禁止与用户名相同;
2: 口令长度不小于9;
4: 至少包含一个大写字母(A-Z);
8 :至少包含一个数字(0-9);
16:至少包含一个标点符号(英文输入法状态下,除“和空格外的所有符号;若为其他数字,则表示 配置值的和,如3=1+2,表示同时启用第1项和第2项策略。
当COMPATIBLE_MODE=1时,PWD_POLICY的实际值均为0

3=2+1 6=2+4

例:将密码策略设置为禁止与用户名相同并且口令长度不小于9 SQL> sp_set_para_value(1,‘PWD_POLICY’,3);

权限
权限就是我能具体做哪些事情? 权限分为系统权限和对象权限

创建用户
创建tbs用户,用户属于tbs表空间,tbs用户有建表和建视图的权限。
1)创建tbs表空间
create tablespace “TBS” datafile ‘/dm8/data/DAMENG/TBS01.DBF’ size 32 CACHE = NORMAL;

2)创建tbs用户
create user “TBS” identified by “Dameng123”
limit failed_login_attemps 3, password_lock_time 1, password_grace_time 10 default tablespace “TBS”;

grant “VTI” to “TBS”;

grant CREATE TABLE,CREATE VIEW to “TBS”;

修改用户
TBS用户可以查询dmhr.employee 的字段employee_name,salary。
grant SELECT(“SALARY”) on “DMHR”.“EMPLOYEE” to “TBS”;

grant SELECT(“EMPLOYEE_NAME”) on “DMHR”.“EMPLOYEE” to “TBS”;

不能查看dmhr.employee.salary
不能对单个列的权限进行撤回,权限撤回是针对表级。
revoke select on dmhr.employee from tbs;

修改用户默认表空间
alter user “TBS” default tablespace “TEST”;

锁定用户
Alter user tbs account lock;

解锁用户
Alter user tbs account unlock;

删除用户
Drop user test;

角色
角色是一组权限的集合,方便权限管理。角色是可以被授予给角色和用户的。 创建角色
create role “R1”;

grant “PUBLIC”,“RESOURCE” to “R1”;

grant CREATE TABLE,CREATE VIEW,CREATE TRIGGER to “R1”;

grant SELECT(“EMPLOYEE_NAME”),UPDATE(“EMPLOYEE_NAME”) on “DMHR”.“EMPLOYEE” to “R1”;

授予角色给用户grant “R1” to “TBS”; 撤回角色
revoke “R1” from “TBS”;
启用角色
禁用角色
删除角色
Drop role r1;

模式管理对象

模式就是一组数据库对象的集合
模式对象:表、索引、视图、触发器、存储过程、同义词、包、序列 模式与用户的关系:
一个用户可以对应多个模式,一个模式只能属于一个用户,创建用户时会自动创建一个同名的模式。

模式
用sysdba用户登录,默认就是在sysdba模式下。

创建模式
SQL> create schema abc;

切换模式
SQL> set schema abc;
模式存在,则不允许创建与模式同名的用户。
删除模式
SQL>drop schema abc;


系统表:数据库自己创建和维护的表,存放的是数据库信息 用户表:自己创建的表,用户的真实数据
DM支持表的类型:
索引组织表、堆表、外部表、分区表
DM默认表的类型是索引组织表,oracle默认表的类型是堆表

创建表

1)命名:以字母开头,a-z,0-9,$#_
2)数据类型:int,number,date,char,varchar,clob,long,blob
3)存储位置:表空间,建表时没有指定表空间,就存在用户默认表空间中
4)约束类型:主键约束、非空约束、唯一约束、外键约束、检查约束

非空约束:
SQL> create table test (id char(20) not null); SQL> insert into test values(null);
insert into test values(null);

DM数据库执行sql脚本start,oracle数据库执行sql脚本用
SQL> start /home/dmdba/test.sql

唯一约束;创建唯一约束会自动创建一个唯一索引,忽视空值,空不等于任何值。 查询约束dba_constraints
查询索引dba_constraints
SQL> create table test2 (id int unique,name varchar(20)); SQL> insert into test2 values(1,‘111’);
SQL> insert into test2 values(null,‘111’); SQL> insert into test2 values(null,‘111’); SQL> commit;
SQL> select * from test2;

SQL> insert into test2 values(1,‘111’);

主键约束:非空+唯一,一个表只能有一个主键,设计主键尽量避免业务逻辑的列
SQL> create table test3 (id int primary key);

外键约束:保证数据完整性

create table “SYSDBA”.“TEST4” (
“ID” INT
);
alter table “SYSDBA”.“TEST4” add constraint foreign key(“ID”) references “SYSDBA”.“TEST3”(“ID”);

SQL> insert into test4 values(1);

SQL> insert into test3 values(1); SQL> commit;
SQL> insert into test4 values(1); SQL> commit;
SQL> drop table test3; drop table test3;
SQL> drop table test4;
SQL> drop table test3;

检查约束
SQL>create table test5 (id int check(id>5)); SQL> insert into test5 values(6);
SQL> insert into test5 values(5); insert into test5 values(5);

管理表
重命名表:
Alter table test2 rename test1;

添加列:
alter table “SYSDBA”.“TEST1” add column(“add” VARCHAR(50));

删除列
alter table “SYSDBA”.“TEST1” drop column “add”;

管理约束

查看约束
select constraint_name,table_name,status from user_constraints;

启用约束
Alter table test1 enable constraint CONS134218843;

禁用约束
Alter table test1 disable constraint CONS134218843;

删除表:
drop table test1;

视图
视图就是一个查询语句,一张虚拟表
DM视图:简单视图、复杂视图、物化视图创建视图的语法:
Create view () as select ***;
Create or replace view() as select ***;

创建视图
create view view_emp as
select a.EMPLOYEE_ID,a.EMPLOYEE_NAME,a.DEPARTMENT_ID,a.SALARY
from dmhr.employee a
where a.DEPARTMENT_ID=105;

删除视图
drop view view_emp;

索引
索引是数据库对象。
索引作用:加快查询速度,对更新少量数据时,可以提高更新速度,insert时会有延迟。 数据库会自动维护索引,索引会占用存储空间的。

创建索引基本要求: 经常查询的列
Where条件中出现的列连接列
返回少量或小部分数据

不合适建立索引: 列上有大量的重复值列上有大量的null
结果集返回大量的数据

创建索引
create index “IND_EMP” on “SYSDBA”.“EMP”(“EMPLOYEE_NAME”) storage(initial 1,next 1,minextents 1,on “DMHR”);

查看索引信息
User_indexes

查看sql执行计划
explain select * from emp where employee_name=‘aaa’;

**备份还原

完全备份:备份的是整个数据库或者表空间的全部数据
增量备份:备份的是上一次全备或增备后,以后每次备份只需要备份修改过的数据页 还原就是将某个时间点的数据库副本拷贝到对应的目录下。
恢复就是在完成数据库还原之后,应用部分或者是全部归档日志。

物理备份
冷备:

冷备:不需要开启归档,需要开启DmAP服务,需要关闭数据库实例,针对整库做备份

1、console工具备份
[dmdba@localhost bin]$ ./DmServiceDMSERVER stop
在这里插入图片描述
2、用dmrman工具备份,只支持冷备
[dmdba@localhost backup]$ cd /dm8/bin
[dmdba@localhost bin]$ ./dmrman dmrman V8
RMAN> backup database ‘/dm8/data/DAMENG/dm.ini’ backupset ‘/dm8/backup’;

热备:
需要开启归档,数据库需要打开(open) 可以备份数据库、表空间、表、归档日志

查看数据库归档模式:
SQL> select name,arch_mode from v$database;

行号 NAME ARCH_MODE


1 DAMENG Y

用manager工具做热备整库备份
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
做增量备份(console工具)
在这里插入图片描述
表空间备份
表空间备份只能联机,还原只能脱机用manager工具
在这里插入图片描述
表备份
在这里插入图片描述
11.2物理还原
检查备份集是否有效
./dmrman
check backupset ‘/dm8/backup’;
在这里插入图片描述
Console工具还原
在这里插入图片描述
恢复
在这里插入图片描述
更新DB_MAGIC
在这里插入图片描述
逻辑备份
备份的是数据库对象
逻辑备份可以用来迁移和重组数据库,是数据库辅助型备份
dexp/dimp

四个级别导入导出:
库级别
用户
模式

查看帮助:
[dmdba@localhost bin]$ ./dexp help
[dmdba@localhost bin]$ ./dimp help

全库导出:
[dmdba@localhost bin]$ ./dexp sysdba/Dameng123 file=full.dmp log=full.log directory=/dm8/backup full=y

用户导出:(执行用户导入时,如果用户不存在,要先创建用户。)
[dmdba@localhost bin]$ ./dexp sysdba/Dameng123 file=dmhr.dmp log=dmhr.log directory=/dm8/backup owner=dmhr

导出表:
[dmdba@localhost bin]$ ./dexp sysdba/Dameng123 file=emp.dmp log=emp.log directory=/dm8/backup tables=emp

全库导入:
[dmdba@localhost bin]$ ./dimp sysdba/Dameng123 file=full.dmp log=imp_full.log directory=/dm8/backup full=y

作业

manager工具下
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
DM8开发 配置ODBC

Linux配置odbc 用root配置 检查gcc包
[root@localhost home]# rpm -qa|grep gcc
gcc-4.8.2-16.el7.ns7.03.x86_64
[root@localhost home]# tar -xvf unixODBC-2.3.0.tar.gz
[root@localhost home]# cd unixODBC-2.3.0/
[root@localhost unixODBC-2.3.0]# ./configure
[root@localhost unixODBC-2.3.0]# make && make install
[root@localhost unixODBC-2.3.0]# odbcinst -j
在这里插入图片描述
配置文件/usr/local/etc/odbcinst.ini
在这里插入图片描述
配置文件/usr/local/etc/odbc.ini
在这里插入图片描述
测试连接
用dmdba账号
Isql dm8
在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值