本文主要是介绍达梦DCA认证考试练习笔记(基于dm8),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
文章目录
- 前言
- 1 安装dm8
- 1.1 创建用户组、用户
- 1.2 图形化界面安装
- 2 创建数据库实例
- 3 数据库连接的方式
- 3.1使用./manager连接
- 3.2使用disql连接
- 4 启动数据库服务
- 4.1 命令行启动
- 4.2 服务查看器启动
- 4.3 系统命令启动
- 5 DM管理工具的介绍
- 5.1 DM 管理工具(manager)
- 5.2 DM 控制台工具(console)
- 5.3 DM 数据迁移工具(dts)
- 5.4 DM 性能监视工具(monitor)
- 6 参数配置
- 6.1 使用console工具
- 6.2 直接修改dm.ini参数文件(只读、静态)
- 6.3 修改系统函数(动态)
- 7 表空间管理
- 7.1 管理表空间
- 图形化方式
- 命令行方式
- 7.2 表空间迁移
- 命令行方式
- 8 重做日志文件
- 8.1 创建日志文件
- 图形化方式
- 命令行方式
- 8.2 重做日志迁移
- 命令行方式
- 9 归档管理
- 9.1 开启归档
- 图形化方式
- 10 用户角色权限
- 10.1 用户管理
- 创建用户
- 图形化方式
- 命令行方式
- 10.2 角色管理
- 10.2.1 创建角色
- 图形化方式
- 10.3 权限管理
- 10.3.1 添加查询权限
- 命令行方式
- 10.3.2 添加修改、删除权限
- 命令行方式
- 10.3.3 回收权限
- 命令行方式
- 11 模式对象管理
- 11.1 创建模式
- 命令行方式
- 11.2 切换模式
- 命令行方式
- 11.3 删除模式
- 命令行方式
- 12 管理表
- 12.1 创建表
- 命令行方式
- 图形化方式
- 12.2 数据导入
- 12.3 约束
- 12.3.1 添加约束
- 图形化方式
- 命令行方式
- 12.4 索引管理
- 图形化方式
- 命令行方式
- 12.5 视图
- 图形化方式
- 命令行方式
- 13 备份与还原
- 13.1 物理备份
- 13.1.1 联机备份(热备)
- 图形化方式
- 13.1.2 脱机备份(冷备)
- 图形化方式
- 13.2 逻辑备份
- 命令行方式
- 14 作业管理
- 15 ODBC配置
- 总结
前言
最近参加了公司组织的DCA培训,学习了国产数据库dm8的一些发展历程以及相关操作,借此机会想将自己整理的一些资料分享给大家,希望能帮助大家通过DCA考试并拿到证书。
1 安装dm8
查看磁盘容量
df -h
1.1 创建用户组、用户
root下:
1、创建用户组
# 创建一个dinstall的组
groupadd dinstall
# 删除组
groupdel dinstall
2、创建用户
-m 自动创建用户的家目录
-d 指定用户登入时的目录
-s 指定用户登入后所使用的shell
useradd -g dinstall -m -d /home/dmdba -s /bin/bash dmdba
创建完成后使用 id dmdba 命令查看是否成功
设置密码(不少于8个字符+包含3个字符类型)
passwd dmdba
3、创建安装目录
#考试时根据要求来创建
mkdir /dm8
#练习时若想删除执行
rm -rf /dm8
4、 更改文件夹的所属用户组、所属用户
chown dmdba:dinstall /dm8
# 查看是否更改成功
ll -ld /dm8
5、设置最大可打开文件数
查看最大可打开文件数
ulimit -a
#临时设置,仅对当前会话生效
ulimit -n 20480
6、挂载镜像文件
使用root用户到opt目录下挂载dm8_setup.iso镜像文件
将下载的iso镜像文件上传到服务器上后,进行挂载操作(考试的时候已经挂载好了,直接安装即可)
在mnt下创建dm目录
挂载镜像
mkdir /mnt/dm
#挂载镜像 mount /镜像地址 /挂载的目标路径
mount /opt/dm8_20210818_x86_rh6_64_ent_8.4.2.18_pack14.iso /mnt/dm
查看是否已挂载:df -h
切换到新建的dmdba用户下:
su - dmdba
#查看挂载目录
cd /mnt/dm
ll
1.2 图形化界面安装
设置DISPLAY值
root用户:
xhost +
# 查看DISPLAY值
echo $DISPLAY
dmdba用户:
su - dmdba
# 查看DISPLAY值
echo $DISPLAY
# 设置DISPLAY值(具体以考试环境查询出来的值为准)
export DISPLAY=:0.0
执行安装程序
#进入到挂载目录
cd /mnt/dm
#执行安装程序
./DMInstall.bin
2 创建数据库实例
#进入到dm工具包目录
cd /dm8/tool
#打开数据库配置助手
./dbca.sh
3 数据库连接的方式
可以通过图形化管理工具manager进行数据库连接,也可以使用disql的方式。除此之外,大家也可以通过配置连接串的方式来连接数据库。
3.1使用./manager连接
cd /dm8/tool
./manager
使用manager工具连接时,可以在窗口–选项–编辑器里启动sql语法检查等提示。
3.2使用disql连接
cd /dm8/bin
./disql SYSDBA/Dameng123:5236
4 启动数据库服务
DM 数据库启动顺序为: Shutdown(关闭状态)–> Mount(配置状态)–> Open(打开状态)
MOUNT 和 OPEN 可以相互转换(与 Oracle 不同); SUSPEND 和 OPEN 也可以相互转换。 但 MOUNT 和 SUSPEND 之间不能相互转换。
4.1 命令行启动
前台启动:
#未注册数据库服务的只能选择此方法
./dmserver /dm8/data/DAMENG/dm.ini
后台启动:
cd /dm8/bin
ll Dm*
#DMTESTSVR是实例名./DmServiceDMTESTSVR start/status/stop
4.2 服务查看器启动
root用户下:
cd /dm8/tool
./dmservice.sh
4.3 系统命令启动
root用户下:
systemctl start DmserviceDMSERVER.service
5 DM管理工具的介绍
5.1 DM 管理工具(manager)
是一个图形化管理数据库,包含用户管理、角色权限管理、表空间、模式、模式下对象、数据库物理联机备份、作业管理等功能。
cd /dm8/tool./manager
5.2 DM 控制台工具(console)
DM 控制台工具是一个脱机工具,提供脱机备份还原、修改数据库参数(修改后重启数据库才能生效)等功能。
cd /dm8/tool./console
5.3 DM 数据迁移工具(dts)
DM 数据迁移工具支持其他数据库迁移到达梦,或者达梦迁移到文件等功能。
cd /dm8/tool./dts
5.4 DM 性能监视工具(monitor)
cd /dm8/tool./monitor
6 参数配置
1)只读参数(read_only)不能修改value和sys_value,只能通过修改dm.ini修改配置文件file_value的值。
2)静态参数(in_file)可以通过调sql语句和函数来对参数文件file_value进行修改,需要重启数据库才能生效。
3)动态参数(sys、session)在数据库运行期间既可以修改内存sys_value中的值,也可以修改参数文件file_value中的值。
both:既修改内存中的值,也修改配置文件中的值,重启不重启都一样生效;
spfile:只修改配置文件中的值,重启数据库生效;
memory:只修改内存中的值,重启数据库后恢复设置前的样子。
select name,type,value,sys_value,file_value from v$parameter t where name like ‘COMPATIBLE_MODE’;
alter system set ‘COMPATIBLE_MODE’(参数名称)=2 spfile;
select name,type,value,sys_value,file_value from v$parameter t where name like ‘UNDO_RETENTION’;
#如果不指定则默认修改的是memory
alter system set ‘UNDO_RETENTION’=180 both|memory;
select name,type,value,sys_value,file_value from v$parameter t where name like ‘LIST_TABLE’;
alter session set ‘LIST_TABLE’=1 both|memory;
6.1 使用console工具
修改的是配置文件参数—需要重启数据库才能生效。
cd /dm8/tool
./console
6.2 直接修改dm.ini参数文件(只读、静态)
cd /dm9/data/DAMENG
vim /dm9/data/服务名称 dm.ini
6.3 修改系统函数(动态)
#查询兼容参数类型
select name,value,sys_value,file_value,type,description from v$parameter where name = 'COMPATIBLE_MODE';
alter system set '参数名'='参数值' both | spfile | memory;
alter system set 'COMPATIBLE_MODE'=2 spfile;
7 表空间管理
7.1 管理表空间
图形化方式
命令行方式
创建表空间:
create tablespace 表空间名 datafile '数据文件路径' SIZE 数据文件大小(单位为mb);
create tablespace dbtbs datafile 'DMTBS01.DBF' SIZE 32;
#查询页大小的4096倍,并换算成MB
select page*4096/1024/1024
修改表空间大小:
alter tablespace 表空间名 resize datafile '数据文件路径' to 数据文件大小(单位为mb);
alter tablespace dmtbs resize datafile 'DMTBS01.DBF' to 64;
#修改表空间开启自动增长,增长步长,最大表空间
alter tablespace 表空间名 datafile '数据文件路径' autoextend on next 增长步长 maxsize 文件最大值
alter tablespace dmtbs datafile 'DMTBS01.DBF' autoextend on next 2 maxsize 10240;
删除表空间:
用户自定义的表空间可以删除和脱机,系统定义的表空间不能脱机和删除;
删除后表空间下的数据文件也会级联删除。
drop tablesapce 表空间名;
drop tablespace dmtest;
增加表空间下的数据文件:
alter tablespace 表空间名 add datafile '数据文件路径' size 数据文件大小(单位为mb);
alter tablespace dmtbs add datafile 'DMTBS02.DBF' size 64;
修改表空间名称:
alter tablespace 修改前表空间名 rename to 修改后表空间名;
alter tablespace dmtbs rename to dmtest;
7.2 表空间迁移
新的表空间路径,必须是由安装数据库的用户提前进行创建,或者把这个文件夹授予数据库安装用户读写权限,否则会因权限问题报数据库文件路径错误。
命令行方式
1)使表空间处于脱机状态 ;
2)指定要迁移的文件和迁移路径 ;
3) 使表空间处于联机状态。
# 先将表空间离线
alter tablespace 表空间名 offline;
alter tablespace dmtest offline;
# 重命名数据文件名,并迁移,后面的文件夹路径必须是由安装数据库的用户创建的
alter tablespace 表空间名 rename datafile '重命名的数据文件名' to '路径';
alter tablespace dmtest rename datafile 'DMTBS01.DBF' to '/dm8/data/DAMENG/DMTEST/DMTBS01.DBF';
alter tablespace dmtest rename datafile 'DMTBS02.DBF' to '/dm8/data/DAMENG/DMTEST/DMTBS02.DBF';
# 将表空间上线
alter tablespace 表空间名 online;
alter tablespace dmtest online;
8 重做日志文件
联机重做日志:存放 redo 信息,循环使用,不断覆盖。
DM 数据库联机日志自动切换,不能手工切换。
8.1 创建日志文件
图形化方式
1)数据库右击;
2)管理服务器;
3)日志文件 (可以修改文件大小和增加联机日志文件).
命令行方式
查看联机日志:
## 查看当前正在使用的联机日志
select * from v$rlog;
select * from v$logfile;
创建连接日志、修改连接日志大小:
alter database add logfile '日志名称' size 日志大小(单位MB);
alter database add logfile 'DAMENG03.log' size 128alter database resize logfile '日志路径' to 日志大小(单位MB);
alter database resize logfile '/dm8/data/DAMENG/DAMENG03.log' to 256;
8.2 重做日志迁移
注意:需要提前创建迁移目录。
命令行方式
1)使表空间处于mount状态;
2)联机日志迁移;
3)将表空间改回open状态。
# 将数据库状态设置为mount状态
alter database mount;
#联机日志迁移
alter database rename logfile '原日志路径' to '迁移到的日志路径';
alter database rename logfile '/dm8/data/DAMENG/DAMENG01.log' to '/dm8/data/DAMENG/REDO/DAMENG01.log';
# 将数据库状态设置为open状态
alter database open;
9 归档管理
9.1 开启归档
图形化方式
10 用户角色权限
10.1 用户管理
创建用户
图形化方式
命令行方式
create user 用户名 identified by 密码 default tablespace 表空间名;
create user hrtest identified by "Dmeng123";
如果想调整密码策略
alter system set 'PWD_POLICY' = 系统支持的口令策略相加 both;
alter SYSTEM set 'PWD_POLICY' = 15 BOTH;
# 查询密码策略
select * from v$parameter where name = 'PWD_POLICY';
系统口令策略 PWD_POLICY 参数指定系统的口令策略,默认为 2;
系统支持的口令策略有:
⚫ 0 无策略
⚫ 1 禁止与用户名相同
⚫ 2 口令长度不小于 9
⚫ 4 至少包含一个大写字母(A-Z)
⚫ 8 至少包含一个数字(0-9)
⚫ 16至少包含一个标点符号(英文输入法状态下,除“和空格外的所有符号) 口令策略可单独应用,也可组合应用。组合应用时,如需要应用策略 2 和4,则设置口 令策略为 2+4=6 即可。
10.2 角色管理
DBA:系统管理员角色,默认赋给SYSDBA;
RESOURCE:具有在当前用户模式下定义对象的权限(创建表、索引、视图等);
PUBLIC:具有在当前用户模式下数据操作的权限(增、删、改、查等);
SOI:系统表(SYS开头的表)的访问权限;
SVI:系统视图(VSYS为前缀)的视图权限;
VTI:动态视图(v$开头的动态视图)的访问权限。
10.2.1 创建角色
图形化方式
10.3 权限管理
10.3.1 添加查询权限
命令行方式
grant select on 模式名.表名 to 用户名;
grant select on dmhr.department to hrtest;
10.3.2 添加修改、删除权限
命令行方式
#不能只授予修改、删除权限,还要授予查询权限
grant select on 模式名.表名 to 用户名;
10.3.3 回收权限
命令行方式
revoke 角色名 from 用户名;
revoke 具体权限 from 用户名;revoke r1 from dmtest;
revoke create table from dmtest;
11 模式对象管理
模式是一个特定的对象集合,在概念上可将其看作是包含表、视图、索引等若干对象的对象集。
模式与用户之间的关系:
当系统建立一个用户时,会自动生成一个对应的模式 用户还可以建立其他模式,DM 中用户和模式是一对多的关系,一个用户可以拥有多个模式, 一个模式仅能归属于一个用户。
Oracle 中用户和模式是一对一的关系。
11.1 创建模式
命令行方式
#创建模式
create schema hrtest01 AUTHORIZATION HRTEST;
create table hrtest01.t_test(id int, name varchar(20));#注意:如果在disql中执行此语句,空行后需要加上/再回车
grant create schema to 用户名;
# 创建模式
create schema 模式名 authorization 用户名;
/
11.2 切换模式
命令行方式
#SYSDBA用户将当前的模式从SYSDBA换到DAMENG模式
SET SCHEMA DAMENG;(仅对当前会话生效)
11.3 删除模式
命令行方式
drop SCHEMA IF EXISTS HRTEST01;
drop SCHEMA IF EXISTS HRTEST01 CASCADE; --级联删除模式下对象,生产环境慎用。
12 管理表
12.1 创建表
命令行方式
create table hrtest.t_testpid(
pid int,
pname varchar(20),
sex bit,
logtime datetime)
TABLESPACE dmtbs;
图形化方式
客户端操作区分大小写,建议统一使用大写。
12.2 数据导入
在disql里执行的话使用以下命令:
start sql文件路径
在达梦客户端工具里执行的话,使用以下命令:
`/dm8/backup/dts/t_department.sql
commit;
12.3 约束
约束类型:
NOT NULL:非空约束;
UNIQUE:唯一约束;
PRIMARY KEY:主键约束 (唯一约束+非空约束);
FOREIGN KEY:外键约束; CHECK:检验约束。
12.3.1 添加约束
图形化方式
命令行方式
非空约束
alter table hrtest.t_testpid modify pname not null;
唯一约束
alter table hrtest.t_testpid add CONSTRAINT uk_testpid_email unique (email);
主键约束
alter table hrtest.t_testpid ADD CONSTRAINT pk_testpid_pid PRIMARY KEY(pid);
检验约束
alter table hrtest.t_testpid add salary number(10,2);
alter table hrtest.t_testpid ADD CONSTRAINT ck_testpid_salary CHECK
(salary>=2100);
外键约束(外键引用两一张表的主键或者唯一键)
alter table hrtest.t_test add CONSTRAINT fk_test_id FOREIGN KEY(id) REFERENCES
hrtest.t_testpid(pid);
12.4 索引管理
图形化方式
命令行方式
create index idx_表名_字段名 ON 表名 (字段名,字段名);
create index ix_emp01_employeename ON HRTEST.T_EMP01(EMPLOYEE_NAME);
12.5 视图
图形化方式
命令行方式
create or replace view 视图名称 as
select * from aaa where age > 10
13 备份与还原
备份包含物理备份和逻辑备份。
物理备份是拷贝有效的数据页。逻辑备份是导出数据库中逻辑数据。
13.1 物理备份
13.1.1 联机备份(热备)
联机备份:数据库是启动状态,联机备份要求数据库打开归档。
备份时 AP 服务需要为启动状态。
库备份、表备份、表空间、归档备份都可以使用联机备份的方式。
图形化方式
备份前可以调用checkpoint(100)函数主动刷新检查点。 如果备份在指定目录下,需要手动添加目录才能看到备份的内容。
13.1.2 脱机备份(冷备)
数据库关闭状态下的备份。
备份级别:全库备份、表空间级备份、表级备份、归档备份。
物理还原是备份的逆过程;
恢复是使用归档将数据库恢复到最新状态或指定时间点;或使用备份集中的 redo 信息将数据库恢复至一致性状态。
图形化方式
./dmservice.sh
./console
13.2 逻辑备份
命令行方式
在dm8/bin目录下
全库导出、导入
导出:
./dexp userid=sysdba/Dameng123:5238 directory=/dm8/backup/dexp file=full.dmp log=full.log full=y
导入:
./dimp userid=sysdba/Dameng123:5238 directory=/dm8/backup/dexp file=full.dmp log=full.log full=y
按用户导出、导入
导出:
./dexp userid=sysdba/Dameng123:5236 directory=/dm8/backup/dexp file=HRTEST.dmp
log=HRTEST.log owner=HRTEST
导入:
./dimp SYSDBA/SYSDBA@192.168.109.22:5237 file=/home/dmdba/dmdbms/data/dexp_user/ dexp_user.dmp log=dimp_user.log owner=ttt directory=/ home/dmdba/dmdbms/data/dimp_user
按模式导出、导入
导出:
dexp userid=sysdba/Dameng123:5236 directory=/dm8/backup/dexp file=DMHR.dmp
log=DMHR.log schemas=DMHR
导入:
dimp userid=sysdba/Dameng123:5238 directory=/dm8/backup/dexp file=DMHR.dmp
log=impDMHR.log REMAP_SCHEMA=DMHR:DMTEST
14 作业管理
创建代理环境
新建作业
15 ODBC配置
root用户:
1、解压ODBC,没有这个tar包的话需要上传到这个目录下
tar -zxvf /opt/unixODBC-2.3.0.tar.gz
2、进入到odbc目录进行源码安装
cd unixODBC-2.3.0
./configure 配置
make 编译
make install 安装
3、修改两个配置文件odbc.ini、vim odbcinst.ini
cd /usr/local/etc/
ll
vim odbc.ini[DM8] # 这个按要求改
Description = DM ODBC DSN
Driver = DM8 ODBC DRIVER # 要和下面对应
SERVER = localhost
UID = SYSDBA
PWD = SYSDBA
TCP_PORT = 5236
vim odbcinst.ini
[DM8 ODBC DRIVER]
Description = ODBC DRIVER FOR DM8
Driver = /dm8/bin/libdodbc.so --dm8安装目录的bin目录下
4、切换到dmdba用户,进行登陆即可
su - dmdba
isql dm8 -v
总结
以上就是今天要分享给大家的内容,本文介绍了DCA考试一些操作步骤,希望可以帮助到大家顺利拿证。
这篇关于达梦DCA认证考试练习笔记(基于dm8)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!