达梦DCA 培训及考试总结

发布于:2024-03-31 ⋅ 阅读:(109) ⋅ 点赞:(0)

 

文章目录
培训及考试总结
一、考试结果
二、培训内容
1.DM8安装
2.数据库实例创建
3.实例管理
4.DMSQL
5.DM8体系结构
6.存储结构
7.表空间管理
8.用户权限角色管理
9.模式对象管理
10.备份还原
11.作业管理
12.ODBC配置
总结
培训及考试总结
本次培训共分三天,培训内容不单单是DCA的单机安装、实例创建、库表操作等,培训内容是把关系型数据库的理论及DM8的产品结合起来讲,很实用。具体的考试则是需要个人大量的线下练习,考试总体而言都是培训讲过的内容,只要用心听,好好练习,哪怕是没有计算机基础的童鞋也能考过。

一、考试结果

考试时间:120 分钟
考试形式:上机实操
考试合格:满分 100 分,外部:70 分合格,内部 70 分合格,90 分拿证。
考试内容:数据库软件安装,数据库实例创建,参数修改,表空间创建,用户管理,创建表,数据导入,创建视图,创建索引,物理备份还原,逻辑备份,作业管理,ODBC 配置。
考试环境:麒麟10+vnc操作远程环境
考试提示:考试比较人性化,在试卷中描述如何在考试环境调用图形化界面,并设置好DISPLAY的环境变量。
图形化调用:
root下
xhost +
echo $DISPLAY
结果是:2.0
su - dmdba
export DISPLAY=:2.0

二、培训内容
1.DM8安装
    命令行安装
    本文章侧重考试描述,故与生产实际环境有些不同,生产环境需要查看网络、系统、内存、cpu等信息,符合条件才能安装。考试环境中环境的DM8安装包、数据库脚本等都已经在考试环境中搭建好,故在做详细描述。
    考试中仅让创建DM8的操作用户,而没有要求用户组,故一开始就要注意。
    1.创建用户
    [root@localhost 桌面]# useradd  dmdba
    [root@localhost 桌面]# passwd dmdba
    2.创建安装路径
    [root@localhost 桌面]# mkdir -p /dm
    [root@localhost 桌面]# chown dmdba -R /dm
    [root@localhost 桌面]# ls -ld /dm8
    drwxr-xr-x 2 dmdba dinstall 6 10 月 11 10:46 /dm8
    chmod -R 755 /dm
    3.设置环境变量
    [dmdba@localhost ~]$ mkdir -p /home/dmdba/tmp
    [dmdba@localhost ~]$ vi .bash_profile
    加入:
    export DM_INSTALL_TMPDIR=/home/dmdba/tmp
    让配置文件生效:
    [dmdba@localhost ~]$ source .bash_profile
    4.挂载iso文件
    [root@localhost opt]# mount -o loop /opt/dm8_20230104_x86_rh6_64.iso /mnt
    5.设置最大文件打开数
    root的根目录下
    vi /etc/security/limits.conf
    在最后添加四条语句,需添加的语句如下
    dmdba hard nofile 65536
    dmdba soft nofile 65536
    dmdba hard stack 32768
    dmdba soft stack 16384
    #查看是否生效
    su - dmdba
    ulimit -a 
    6.DM8安装
    此处有命令行和图形化两种方式,个人更倾向命令行,因为在安装完后还需要root下输入指令才可继续安装。
    su - dmdba 
    执行安装
    cd /mnt
    [root@localhost 桌面]# /dm8/script/root/root_installer.sh
    个人电脑的vm中会出现临时空间报错的情况,可如下解决
    #报错
    安装程序临时目录(/tmp)可用空间为476M. 安装程序需要至少800M的临时空间, 请调整临时目录的空间或设置环境变量DM_INSTALL_TMPDIR来指定安装程序的临时目录.以下解决
    mkdir /home/dmdba/tmp
    export DM_INSTALL_TMPDIR=/home/dmdba/tmp
    7.安装结束
    请以 root 系统用户执行命令:
    /dm8/script/root/root_installer.sh

 
2.数据库实例创建
        图形化实例创建
        [dmdba@localhost ~]$ cd /dm8/tool/
        [dmdba@localhost tool]$ ./dbca.sh
        此处安装考试要求设置数据库目录、实例名、端口名、簇大小等,SYSDBA的密码尤其注意,设置错误0分。
        图形化操作下一步即可,最后:
        使用 root 账号执行三个脚本文件
        [root@localhost 桌 面 ]# mv /dm8/bin/DmServiceDMSERVER.service
/usr/lib/systemd/system/DmServiceDMSERVER.service
        [root@localhost 桌面]# systemctl enable DmServiceDMSERVER.service
        [root@localhost 桌面]# systemctl start DmServiceDMSERVER.service
 
3.实例管理

1
    可以在./manager的图形化进行实例的操作
    manager
    /dm8/tool
    [dmdba@localhost tool]$ ./manager
    通过后台进程方式启动和关闭数据库
    /dm8/bin
    查看数据库进程的状态:
    [dmdba@localhost bin]$ ./DmServiceDMSERVER status
    DmServiceDMSERVER (pid 3305) is running. 关闭数据库:
    [dmdba@localhost bin]$ ./DmServiceDMSERVER stop
    启动数据库:
    [dmdba@localhost bin]$ ./DmServiceDMSERVER start
    重启数据库:
    [dmdba@localhost bin]$ ./DmServiceDMSERVER restart
    考试时,一定要注意,数据库的重启要么命令行要么图形化./console操作 
 
4.DMSQL

1
    此处有表的创建、查询等操作,需要多家练习,考试以视图方式考,但sql操作一个以单表查询和两表连接查询,考点就sql的技巧而言不是很难,但需要个人线下多家操作,熟悉sql语法。
1
5.DM8体系结构
    此处没有具体的考点,但作为科普是非常有必要了解的。
    DM 数据库是单进程多线程的架构。
    DM 数据库由:client+server 两部分构成
    DM server=数据库(狭义上)+实例
    数据库:磁盘上一堆的数据库文件,包含:配置文件、控制文件、重
做日志文件、数据文件、归档日志文件、备份文件、日志文件、事件
日志文件等。
    实例:一组后台进程/线程+共享内存
    一个实例管理一个数据库叫单实例,也叫单机环境;多个实例管理一
个数据库叫 DMDSC,DM8 目前最多支持 8 个节点 DSC。
 


6.存储结构
    此处的考点是修改动静参数。动态参数即改即生效,静态参数修改需要重启数据库生效。
    查看参数:
    select para_name,para_value,para_type from v$dm_ini;
    参数类型:
    SESSION:动态会话级参数
    SYS:动态系统级全局参数,即改即生效
    IN FILE:静态参数,修改完参数后,需要重启数据库实例生效
    READ ONLY:只读参数,只能通过 vi 的方式修改参数
    修改动态参数:
    sp_set_para_value(1,'MAL_LEAK_CHECK',1);
    修改静态参数:
    COMPATIBLE_MODE 是否兼容其他数据库模式。
    0:不兼容,
    1:兼 容 SQL92 标准,
    2:部分兼容 ORACLE,
    3:部 分兼容 MS SQL SERVER,
    4:部分兼容 MYSQL,
    5:兼容 DM6,
    6:部分兼容 TERADATA
    修改数据库的兼容模式为兼容 ORACLE 数据库
    sp_set_para_value(2,'COMPATIBLE_MODE',2);

    重做日志、添加日志文件是考试内容
    具体可manager图形化操作,数据库右键-管理数据库-重做日志即可。
    逻辑存储结构
    

    

 

7.表空间管理
    ./manager图形化操作
    创建表空间
    例 2,创建表空间 TEST,数据文件为/dm8/data/DAMENG/TEST01.DBF, 数据文件初始大小为 50M,数据文件开启自动扩展,每次扩展 1M,最大可扩展至 1G.
    例 3 , 创 建 表 空 间 TBS , 有 两 个 数 据 文 件 , 分 别 为/dm8/data/DAMENG/TBS01.DBF 和 /dm8/data/DAMENG/TBS02.DBF, 每个数据文件初始大小为 100M,都开启自动扩展,每次自动扩展 2M,最
大可扩展至 10G
    具体图形化操作可参考其他博文
    维护 TEMP 表空间
    修改 TEMP 表空间大小为 50M
    sp_set_para_value(2,'TEMP_SIZE',50);
 
8.用户权限角色管理
    图形化操作
    新建用户、用户拥有角色、权限均为考点
    例 1:创建用户 TEST,密码是 Dameng123,默认表空间为 TEST,该用户拥有创建表、视图、索引的权限
    例 2:创建用户 DMEMP,密码是 Dameng123,失败登录 5 次后锁定
账号 3 分钟,密码在 180 天后自动过期,该用户有创建表、创建视图
的权限。
    例 3:创建角色 ROLE1,拥有创建表、视图、索引的权限,可以查看
dmhr.employee.hire_date 、 dmhr.employee.email , 可 以 修 改dmhr.employee.phone_num,可以查看 dmhr.department 表。
create role "ROLE1";此处的表为DMHR的示例表
    修改用户、角色、权限等均可图形化操作
    图形化界面新建好表后,可图形化操作新建查询右边的打开导入数据库脚本。
1
2
3
4
5
6
7
8
9
10
11
9.模式对象管理
    图形化操作
    根据考题要求,在新建的表中互相添加外键、索引等操作。
    创建视图是核心
    创建视图的语法:
    Create view .... as select ....;
    Create or replace view ... as select ...;
    create view test.view_emp as
    select employee_name,salary,hire_date,department_id     from dmhr.EMPLOYEE where department_id=101;
    删除视图:
    drop view "TEST"."VIEW_EMP" ;
 
10.备份还原
    此处内容较多,真正掌握需要花大量的时间和深入的研究。
    整个模块的整体流程为数据库先备份-归档-还原三部。
    

        备份
        分冷备和热备,无论哪种都需要DmAPservice运行中
        生产实际中热备较多,冷备作为辅助。热备即生产过程中数据不中断的情况下进行,冷备是数据中断后进行。
            冷备
            建立冷备的路径(dmdba用户新建)mkdir -p/dm8/backup
            需要关闭数据库bin下./DmServiceDMSERVER restart
            ./console执行
            备份还原-新建备份-指定新建路径
            
            热备(整库备份,表空间备份)
            需要启动数据库
            需要开启数据库归档模式
            


        归档
        启动数据库bin下 ./DmServiceDMSERVER start
        查询数据库归档模式,图形化管理服务器,归档模式查看
        图形化操作./manager-系统管理+归档配置,归档路径是要求空
        select arch_mode from v$database;查看是否归档
    
        还原
        --物理还原
            库/表还原时
            1需要关闭数据库
            2数据库还原
            具体操作:./console-备份还原-还原-恢复(恢复类型选择指定归档恢复)-更新magic-数据库启动
            3应用归档日志恢复中的恢复
            4更新数据库魔数(表还原不需要操作4)
        --逻辑还原
            备份数据库对象
            full:整库
            owner用户
            schemas模式
            tables表
            逻辑备份:/dexp /dimp
            整库:
            ./manager图形化-右键导出
            导出文件和导出日志小写,文件名要正确
            数据行取消勾选,即不导数据


            用户: ----好像不行,要新建用户,再导入才行,主要是导入模式
            用户-右键导出


            模式:
            模式右键-导出


            表导出:

 


11.作业管理
    
    例:新建作业 JOB1,每周日 22:00 对数据库做完全备份。
    作业名注意大写
    例:新建作业 JOB2,每周一、二、三、四、五、六 22:00 对数据库做增
量备份。
 


12.ODBC配置
    命令行操作
    连接不成功,考试0分
    注意配置项的端口等详细信息
    [root@localhost opt]# tar -xvfz unixODBC-2.3.0.tar.gz
    [root@localhost opt]# 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]# cd /usr/local/etc/
 

 
[dmdba@racdb1 ~]$ cd /dm8/bin
[dmdba@racdb1 bin]$ ./disql sysdba/SYSDBA
SQL> alter user sysdba identified by Dameng123;

[dmdba@racdb1 bin]$ isql dm8 -v
[IM002][unixODBC][Driver Manager]Data source name not found, and no default driver specified
[ISQL]ERROR: Could not SQLConnect

--配置

[root@racdb1 etc]# cat odbc.ini
[DM8]
Description = DM ODBC DSN
Driver = DM8 ODBC DRIVER
SERVER = localhost
UID = SYSDBA
PWD = Dameng123
TCP_PORT = 5236


[root@racdb1 etc]# cat odbcinst.ini
[DM8 ODBC DRIVER]
Description = ODBC DRIVER FOR DM8
Driver = /dm8/bin/libdodbc.so

[root@racdb1 etc]# 

[01000][unixODBC][Driver Manager]Can't open lib '/dm8/bin/libdodbc.so' : file not found
[ISQL]ERROR: Could not SQLConnect

root 执行会报错,是因为 root 没有配置 LD_LIBRARY_PATH 环境变量:

 

[root@racdb1 etc]# su - dmdba
上一次登录:六 3月 30 11:09:01 CST 2024pts/0 上
[dmdba@racdb1 ~]$ isql dm8 -v
+---------------------------------------+
| Connected!                            |
 
 
SQL> select *from rick.C;
+------------+-----------+
| A          | COLUMN_1  |
+------------+-----------+
+------------+-----------+
SQLRowCount returns 0
 
SQL> insert into rick.c values (1,1);
SQLRowCount returns 1
SQL> select *from rick.c;
+------------+-----------+
| A          | COLUMN_1  |
+------------+-----------+
| 1          | 1         |
+------------+-----------+
SQLRowCount returns 1
1 rows fetched 
SQL> quit
 
 
 


    
  

本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到