注册
2022年11月份达梦8DCA考试经验分享
培训园地/ 文章详情 /

2022年11月份达梦8DCA考试经验分享

一江秋 2022/11/28 1898 1 0

一、 数据库安装
经验:安装之前需要确认以下信息,考试机环境基本没问题,为了节约时间可以直接跳过。
1.1 安装前确认
1.1.1 查看CPU 信息
lscpu
1.1.2 查看操作系统信息
uname -r
注意:内核版本需要在2.6以上,否则在安装过程中会报错。
1.1.3 查看glibc、gcc版本
glibc
1、ldd --version
gcc
2、gcc –-version
1.1.4 查看磁盘容量
df -h
1.1.5 查看内存
free -m
1.2安装规划
1.2.1 创建用户组
1、groupadd dinstall
1.2.2 创建用户
1、useradd -g dinstall -m -d /home/dmdba -s /bin/bash dmdba(创建用户)
1.2.3 创建安装目录
1、mkdir /dm8(创建文件夹)
2、chown dmdba:dinstall /dm8(更改文件夹的所属用户组、所属用户)
3、ll -ld /dm8(查看是否成功)
1.3 挂载镜像文件
将下载的iso镜像文件上传到服务器上后,进行挂载操作(考试的时候,可能已经挂载,直接安装即可)。
1、mkdir /mnt/dm(创建挂载点)
2、mount /opt/《镜像名称》 /mnt/dm(挂载镜像)
3、su – dmdba(切换dmdba用户)
4、cd /mnt/dm(打开挂载点)
5、ll(查看文件)
6、chmod 775 /mnt/dm/DMInstall.bin
1.4 开始安装
1.4.1 图形化界面安装
1.4.1.1 置DISPLAY值
1、xhost +(登录root用户操作)
2、echo $DISPLAY(查看root环境变量)
3、su – dmdba(切换用户)
4、echo $$DISPLAY(查看环境变量)
5、export DISPLAY=:O.0(设置环境变量)
6、export DM_INSTALL_TMPDIR=/opt/tmp(tmp不足的情况设置)
1.4.1.2 执行安装
1、cd /mnt/dm(打开镜像文件)
2、ll (查看文件夹内容)
3、./DMInstall.bin(执行安装)
1.5 创建数据库及数据库实例管理
1.5.1 图像化方式
1、cd /dm8/tool
2、./dbca.sh
1.5.2 命令行方式
1、cd /dm8/bin
2、./dminit path=/dm8/data db_name=DMTEST instance_NAME=DMTESTSVR sysdba_pwd=Dameng123 port_num=5238 PAGE_SIZE=16
二、 数据库连接(必考)
2.1 使用disql连接
1、cd /dm8/bin
2、./disql SYSDBA/SYSDBA:5236(连接本地)
3、./disql SYSDBA/SYSDBA@192.168.31.124:5236(连接远程服务器需要添加IP)
2.2 使用图形化工具连接
1、cd /dm8/tool/
2、./manager
三、 参数配置(必考)
3.1 使用图形化修改兼容性
1、cd /dm8/tool
2、./console
3、systemctl restart DmServiceDMSERVER(修改完成后重启服务)。
3.2 密码策略修改
达梦数据库跟ORACLE数据库不一样,它的密码策略是通过设置参数的值来实现的。这个参数是PWD_POLICY。这个参数有6个值,分别代表不同的密码策略:
0:无策略
1:禁止与用户名相同
2:口令长度不小于9
4:至少包含一个大写字母(A-Z)
8:至少包含一个数字(0-9)
16:至少包含一个标点符号(英文输入状态下,除“和空格外的所有符号)
数据库默认的参数值是2,我们可以用如下语句查看当前参数设置情况。
select * from v$parameter where name = ‘PWD_POLICY’;
当然,在实际的数据库应用中,还会存在密码策略的组合应用,比如,我们需要将密码策略设置为:不能和用户名相同且密码长度不少于9位,也就是启用1和2两个策略,这是我们的参数就设置为1+2=3,我们可以用修改语句来配置参数,如下:
alter system set ‘PWD_POLICY’ = 3 both;
总结一下,密码策略是通过pwd_policy值来实现的,策略可以单独应用,也可以组合应用。组合应用时,如需要应用策略2和4,则设置pwd_policy为2+4=6即可实现。
五、 表空间管理(必考)
考试会让你修改temp表空间,需要修改temp_size
select name, value, type from v$parameter t where name like ‘TEMP%’;(查看TEMP表空间)
alter system set ‘TEMP_SIZE’=64 spfile;(调整他)
注意:修改完成后重启服务生效。
5.1 查看表空间
1、select * from dba_tablespaces;
2、select * from dba_data_files;
5.2 创建表空间
create tablespace tbs DATAFILE ‘TBS01.DBF’ size 32;
5.3 修改表空间大小
1、alter tablespace tbs resize datafile‘TBS01.DBF’ to 64;(扩展表空间)
2、alter tablespace tbs datafile ‘TBS01.DBF’autoextend on next 2 maxsize 10240;(修改表空间属性)
5.4 删除表空间
用户自定义的表空间可以删除和脱机,系统定义的表空间不能脱机和删除。
删除后表空间下的数据文件也会级联删除。
1、drop tablespace TBS;(删除表空间)
2、alter tablespace TBS offline;(表空间脱机)
3、alter tablespace TBS online;(表空间联机)
5.5 增加表空间下的数据文件
1、alter tablespace tbs add datafile ‘TBS01.DBF’size 64;(增加表空间的数据文件)
5.5 表空间迁移
迁移时注意:新的表空间路径,必须是由安装数据库的用户进行创建,或者把这个文件夹授予数据库安装用户读写权限,否则会因权限问题报数据库文件路径错误。这里的移动指物理级别的移动。
1、alter tablespace tbs offline;(关闭表空间)
2、alter tablespace tbs rename datafile ‘TBS.DBF’ to ‘/dm8/data/DAMENG/DMTEST/DMTBS01.DBF’;(移动表空间的位置)
3、alter tablespace tbs online;(打开表空间)
5.6 Temp临时表空间(考点)
查询temp表空间参数,达梦数据库启动的时候会根据这几个参数来创建或重建temp表空间。
1、select name, value, type from v$parameter t where name like ‘TEMP%’;(查看TEMP表空间)
2、alter system set ‘TEMP_SIZE’ = 64 spfile;(调整他)
六、 重做日志文件(必考)
6.1 重做日志命令行方式
6.1.1 查看联机日志
1、select * from v$rlog;
2、select * from v$rlogfile;
6.1.2 创建连接日志、修改连接日志大小(达梦只支持往大了改)
1、alter database add logfile ‘DAMENG03.LOG’ size 128;(创建连接日志)
2、alter database resize logfile ‘/dm8/data/DAMENG/DAMENG03.LOG’ to 256;(修改日志大小)
6.1.3 重做日志迁移
1、alter database mount;(设置为mount模式)
2、alter database rename logfile ‘/dm8/data/DAMENG/DAMENG01.log’ to ‘/dm8/data/DAMENG/REDO/DAMENG01.log’;(更改路径)
3、alter database open;(设置为open模式)
6.2 重做日志图像化方式
image.png

image.png

七、 归档管理(必考)
归档是对REDO的归档,备份归档是为了防止数据丢失,利用归档文件可以恢复数据库里的数据。
7.1 开启归档
1、alter database mount;(设置为mount模式)
2、alter database archivelog;(打开归档)
3、alter database add archivelog ‘type=local,dest=/dm8/arch,file_size=64,space_limit=10240’;(配置路径,文件大小-超过就重新建一个文件,文件总大小-超过限制就会删除以前日志)
4、alter database open;(设置为open模式)
5、selcet arch_mode from v$database;(查询归档状态)
6、select * from sys.”v$ARCH_FILE”;(查看归档文件)
7、select * from v$dm_arch_ini;(查看归档配置)
7.2 关闭及删除归档
1、alter database mount;(设置为mount模式)
2、alter database noarchivelog;(关闭归档)
3、alter database delete archivelog ‘type=local,dest=/dm8/arch’;(删除归档)
4、alter database open;(设置为open模式)
5、selcet arch_mode from v$database;(查询归档状态)
7.3 修改归档空间上限
修改归档修改归档的配置(修改归档空间上限)
alter database modify archivelog ‘type=local, dest=/dm8/arch, SPACE_LIMIT=20480’;
八、 用户角色权限(必考)
8.1 用户管理
8.1.1 用户类型
SYS:内置用户,不能直接登陆
SYSDBA:系统管理员,拥有DBA角色(除了安全、审计其他都管)
SYSAUDITOR:系统审计管理员
SYSSSO:系统安全管理员
SYSDBO:系统安全操作员(达梦安全版才有)
8.2 创建用户
8.2.1 命令行方式
1、 create user lizg identified by “Lizg1988!” default tablespace DMTEST;(创建用户)
2、select * from v$parameter t where t.name = ‘PWD_POLICY’;(查看密码策略)
3、alter system set ‘PWD_POLICY’ = 3 both;(修改密码策略)

4、select * from dba_users;(查看数据库用户密码信息)

5、alter user lizg limit FAILED_LOGIN_ATTEMPS 5,PASSWORD_LOCK_TIME 3;(将密码输错次数改为5,锁定时间为3分钟)
6、alter user lizg account unlock;(手动解锁)
7、alter user lizg account lock;(手动锁定)
8、select * from dba_users a, sysusers b where a.user_id = b.id;(查看用户资源限制,例如最大并发数)
9、alter user hrtest IDENTIFIED by “Dameng@123”;(修改用户密码)
10、drop user if EXISTS hr;(删除用户)
drop user if EXISTS hr CASCADE; --强制删除转授权限,生产环境慎用
11、select a.pid profileid, b.name profile_name, a.uid userid, c.name user_name from SYSUSERPROFILES a, SYSOBJECTS b, SYSOBJECTS c where a.PID = b.id and a.UID = c.ID;(查询用户使用的profile资源限制文件)
12、alter user hr DEFAULT TABLESPACE dmtbs;(修改用户的默认表空间)
8.2.2 创建角色,并授予角色权限
1、create role lizgrole;(创建角色)
2、grant XXXXXX to lizgrole;(授予角色权限)
3、grant lizg to lizg1;(赋予用户)
8.3 角色管理
8.3.1 查看当前用户拥有的权限
1、select * from session_privs;查看当前用户拥有的权限:
8.3.2 设置指定用户最大并发量
1、alter user hrtest limit SESSION_PER_USER 3;(设置用户名为hrtest的用户,最大连接数为3)
8.3.3 设置可以赋予其他用户在非当前用户模式下创建对象权限
1、select * from v$parameter where name = ‘ENABLE_DDL_ANY_PRIV’;(查看参数)
2、alter system set ‘ENABLE_DDL_ANY_PRIV’=1 both;(开启参数)
3、grant create any table to hrtest;(进行授权)
8.3.4添加查询权限
1、grant selcet on dmhr.departement to hrtest;
8.3.5添加修改、删除权限
1、grant selcet on dmhr.departement to hrtest;
8.3.7 回收权限
回收权限注意
如果回收的角色,带有转授权限,那么需要加关键字,对其转授出去的角色一并级联回收。
1、revoke lizg from lizg;
2、revoke create table from lizg;
九、 模式对象管理(必考)
9.1 创建模式
注意创建用户前,需要授予用户创建模式的权限
1、create scheam 模式名 authorization 用户名;
2、grant create schema to 用户名;–创建模式
create schema hrtest01 AUTHORIZATION HRTEST;
create table hrtest01.t_test(id int, name varchar(20));
9.2 查询模式
1、select * from SYSOBJECTS where t.TYPE$ = ‘SCH’;(查询系统中所有的模式)
2、select a.id scheid, a.name schename, b.id userid, b.name username from SYS.SYSOBJECTS a, SYS.SYSOBJECTS b where a. “TYPE$” = ‘SCH’ and q.pid = b.id;(查询模式和所属用户)
select a.id scheid, a.name schename, b.id userid, b.name username from SYS.SYSOBJECTS a, SYS.SYSOBJECTS b where a.“TYPE$” = ‘SCH’ and a.pid = b.id;讲义
3、select sys_context(’USERENV’,’CURRENT_SCHEMA’);(查询当前模式)
4、select user;(查询当前模式)
9.3 切换模式
注意:这个切换只对当前会话生效,咨询过老师,目前没有方法可以设置永久生效。
1、set schema 模式名;
9.5 删除模式
drop SCHEMA IF EXISTS HRTEST01;
drop SCHEMA IF EXISTS HRTEST01 CASCADE; --级联删除模式下对象,生产环境慎用。
十、 表管理(必考 建表、加约束)
10.1 创建表
1、create table hrtest.t_testpid(pid int,pname varchar(20),sex bit,logtime datetime) TABLESPACE dmtbs;(创建表)
2、create table t_emp03 as select * from dmhe.employee where 1=0;(只复制表结构不带约束信息)
3、create table t_emp01 as select 8 from dmhr.employee;
create table t_emp02 like dmhr.employee;(复制表结构+表数据)
10.2 调整字段
1、alter table hrtest.t_testpid add column email varchar(20);(添加字段)
2、alter table hrtest.t_testpid modify email varchar(50);(修改字段)
3、alter table hrtest.t_testpid drop logtime;(删除字段)
10.3 添加约束
1、alter table hrtest.t_testpid add CONSTRAINT pk_testpid_pid PRIMARY Key(”pid”);(添加约束)
2、alter table hrtest.t_testchild add CONSTRAINT fk_testpid_pid FOREIGN Key(”pid”) REFERENCES dmtest.t_testpid(”pid”);(添加外键约束,注意REFERENCES表里面的字段必须是主键或者是添加了唯一索引的字段)
3、alter table hrtest.t_testchild add CONSTRAINT ck_testpid_salary CHECK(”salary”>=3000);(添加校验约束)
10.5 索引管理
10.5.1 创建索引
1、create index idx_表名_字段名 ON 表名(字段名);
create index ix_emp01_employeename ON ******HRTEST.T_EMP01(EMPLOYEE_NAME);
十一、 视图管理(必考)
1、create or replace view aaa as;(创建视图)
2、select * from aaa where age > 10;
十二、 备份还原
12.1 备份

select * from vsdm ini t where t.PARA_NAME in (‘BAK_PATH’,BAK_USE AP);(查看AP服务)
backup database;(创建全量备份到默认路径)
backup database INCREMENT;(创建增量备份到默认路径)
Backup database full to FULLBAK01 backupset ‘/dm8/backup/FULLBAK01’;(库备份)
backup TABLESPACE TBS to TBSFLLBAK backupset‘/dm8/backup/TBSBAK01’;
(表空间备份)
backup table DMTESTT.T_ EMP to EMPBAK BACKUPSET’/dm8/backup/EMPBAK’;
(表备份)
backup ARCHIVE LOG all;(归档备份)
select *from SYS."V$BACKUPSET”;(查看备份信息)
SF_BAKSET_BACKUP _DIR _ADD(‘DISK’ ,‘/dm8/backup/’);(添加备份集目录)
select * from SYS.“V$ARCH_FILE”;(查看归档信息)
select sf_archivelog_delete_before_Isn(803946);(删除归档信息)
checkpoint(100);(归档不连续问题,重置检查点)
关闭数据库:shutdown innediate
12.2 逻辑导出
dexp在达梦的bin目录下
注意需要先创建目录,而且导出用户和导入用户都使用dmdba
12.3 物理导出
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
12.4 物理导出的还原
image.png
十三、 作业管理(必考)
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
十四、 ODBC配置(必考)
解压ODBC,考试默认在/opt
(1)解压
[root@KylinDCA03 opt]# tar -zxvf unixODBC-2.3.0.tar.gz
(2)源码安装三部曲(配置、编译、安装)
[root@KylinDCA03 opt]# cd unixODBC-2.3.0/
[root@KylinDCA03 unixODBC-2.3.0]# ./configure
注:configure 时可以使用–prefix 参数指定安装路径,不指定使用默认安装路径/usr/local
[root@KylinDCA03 unixODBC-2.3.0]# make
[root@KylinDCA03 unixODBC-2.3.0]# make install
(3) 配置驱动信息 odbcinst.ini 和数据源信息 odbc.ini
[root@KylinDCA04 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
[root@KylinDCA03 unixODBC-2.3.0]# cd /usr/local/etc/
116 / 119
[root@KylinDCA03 etc]# ll
总用量 0
drwxr-xr-x 2 root root 6 12 月 22 16:56 ODBCDataSources
-rw-r–r-- 1 root root 0 12 月 22 16:56 odbc.ini
-rw-r–r-- 1 root root 0 12 月 22 16:56 odbcinst.ini
[root@KylinDCA03 etc]# vim odbcinst.ini
[root@KylinDCA03 etc]# vim odbc.ini
[root@KylinDCA03 etc]# cat odbcinst.ini
[DM8 ODBC DRIVER]
Description = ODBC DRIVER FOR DM8
Driver = /dm8/bin/libdodbc.so
[root@KylinDCA03 etc]# cat odbc.ini
[DM8]
Description = DM ODBC DSN
Driver = DM8 ODBC DRIVER
SERVER = localhost
UID = SYSDBA
PWD = Dameng123
TCP_PORT = 5236
测试连接
使用 dmdba 用户执行 isql 测试连接是否正常:
su - dmdba
isql dm8 -v
十五、 数据的导入(补充必考)
DM 在DISQL 下用 start 或都可以, Oracle 用@: SQL> start /dm8/backup/dts/t_department.sql SQL> /dm8/backup/dts/t_department.sql

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服