注册
达梦数据库备考心得
培训园地/ 文章详情 /

达梦数据库备考心得

辰星耀灵 2023/05/19 2134 0 0

1 数据库安装
1.1 创建用户组、用户

  1. 创建组:groupadd dinstall; 删除用户组:groupdel dinstall;
  2. 创建用户:useradd -g dinstall –m –d /home/dmdba –s /bin/bash dmdba;
    语法:-g:指定用户所属的群组;-d:指定用户登入时的主目录;-s:指定用户登入后所使用的shell;-m:自动建立用户的登入目录。
    创建完成后使用 id dmdba 命令查看是否成功
  3. 设置密码(不少于8个字符+包含3个字符类型):passwd dmdba。(请记住密码)
    1.2 创建安装目录(root登录)
  4. #考试时根据要求来创建 :mkdir /dm8 ;#练习时若想删除执行 rm -rf /dm8。
  5. 更改文件夹的所属用户组、所属用户:chown dmdba:dinstall /dm8;
    语法:
    useradd [-d home] [-s shell] [-c comment] [-m [-k template]] [-f inactive] [-e expire ] [-p passwd] [-r] name
    主要参数含义:
    -d:指定用户登入时的主目录,替换系统默认值/home/<用户名>
    -g:指定用户所属的群组。值可以使组名也可以是GID。用户组必须已经存在的,默认值为100,即users。
    -m:自动建立用户的登入目录。
    -u:指定用户ID号。该值在系统中必须是唯一的。0~499默认是保留给系统用户账号使用的,所以该值必须大于499。
    -s:指定用户登入后所使用的shell。默认值为/bin/bash。
    1.3 设置最大可打开文件数(root登录)
  6. 查看最大可打开文件数:ulimit –a
  7. #临时设置,仅对当前会话生效 :ulimit -n 65536
    1.4 挂载镜像文件(root登录,选做)
  8. 使用root用户到opt目录下挂载dm8_setup.iso镜像文件
    mkdir /mnt/dm
    #挂载镜像 mount /镜像地址 /挂载的目标路径
    mount /opt/dm8_XXX.iso /mnt/dm
  9. 切换到新建的dmdba用户下,看到DMInstall.bin为绿色,代表可执行,白色则代表需要增加执行权限:chmod +x DMInstall.bin(root用户)
    1.5 临时文件夹空间小解决(root登录,选做)
    Df –h 查看磁盘文件系统,如果确认/tmp目录的空间大小小于2G,则一定要先进行临时文件夹空间的扩大操作:
    方法1:指定临时文件夹:export DM_INSTALL_TMPDIR=/home/dmdba/tmp/;
    方法2:临时扩大:mount -o remount,size=3G /tmp
    1.6 图形化界面安装
    1.6.1 设置DISPLAY值
  10. root用户:
    xhost +
    查看DISPLAY值
    echo $DISPLAY
  11. dmdba用户:su – dmdba
    查看DISPLAY值
    echo $DISPLAY
    设置DISPLAY值(具体以考试环境查询出来的值为准)
    export DISPLAY=:0.0
    1.6.2 图形化安装
    执行安装程序,进入到挂载目录
    cd /mnt/dm
    ./DMInstall.bin
    单独创建实例:注意设置页的大小,影响后期表空间初始大小配置。
    #进入到dm工具包目录
    cd /dm8/tool
    #打开数据库配置助手
    ./dbca.sh
    1.6.3 备考心得
    考试时如果第一次安装数据库失败,不要慌,卸载数据库重新来一次!
    图形化卸载:
    DM安装目录下执行./uninstall.sh卸载DM数据库;
    静默卸载:
    DM安装目录下执行./uninstall.sh -i卸载DM数据库;

2 数据库服务管理
2.1 图形化界面-服务查看器启动(root用户)
进入tool目录,执行:./dmservice.sh。
2.2 systemctl服务方式管理
systemctl start|restart|status|stop|enable|disable DmServiceDMSERVER
DmService:达梦数据库前缀名;DMSERVER:安装的数据库服务名。

2.3 数据库状态管理
Shutdown(关闭状态)–> Mount(配置状态)–> Open(打开状态)

  1. 图形化管理:Manager,数据库右击-管理服务器-系统管理
  2. Sql管理:
    alter database mount;
    alter database open;
    alter database suspend;

3 数据库连接:
3.1 Manager图形化工具
进入tool目录,执行 ./manager
注意:进入配置页面-编辑器-启动 SQL语法检查;SQL输入助手;对象定义提示。
管理工具下,为对象名添加双引号配置去除,一定注意大小写。
设置连接串:/etc/dm_svc.conf
3.2 使用disql连接
Bin目录下,执行:./disql SYSDBA/Dameng123:5236
4 参数配置:
1)只读参数(read_only),只能通过修改dm.ini修改配置文件file_value的值,需重启数据库。
2)静态参数(in_file)可以通过调sql语句和函数来对参数文件file_value进行修改,需重启数据库才能生效。
3)动态参数(sys、session)在数据库运行期间既可以修改内存sys_value中的值,也可以修改参数文件file_value中的值。
#如果不指定则默认修改的是memory
alter system set ‘UNDO_RETENTION’=180 both|memory;
4.1 使用alter system set 语句
alter system set '参数名'='参数值' both | spfile | memory;
如果不指定则默认修改的是memory。

  1. both:既修改内存中的值,也修改配置文件中的值,重启不重启都一样生效;
  2. spfile:只修改配置文件中的值,重启数据库生效;
  3. memory:只修改内存中的值,重启数据库后恢复设置前的样子。
    通过图形化工具可查看参数值对应含义;
    建库参数表
    select * from v$dm_ini;
    select * from v$parameter;
    select * from SYS."V$PARAMETER" t WHERE name in ='BUFFER';
  4. 数据库兼容性参数(COMPATIBLE_MODE,静态参数)
    0:不兼容;1:兼容SQL92标准;2:部分兼容ORACLE;3:部分兼容MS SQL SERVER;4:部分兼容MYSQL;5:兼容DM6;6:部分兼容TERADATA。
    alter system set 'COMPATIBLE_MODE'=2 spfile;
  5. 默认创建的索引组织表的主键控制参数(LIST_TABLE,会话级动态参数)
    为1建表可以指定主键,为0则指定主键无用。
  6. 数据缓冲区参数:BUFFER包含normal、fast、recycle、keep,由INI配置中的BUFFER、FAST_POOL_PAGES、RECYCLE、KEEP确定大小。
    alter system set 'BUFFER'=500 spfile;
  7. 重做日志缓冲区参数(RLOG_BUF_SIZE)
  8. sql缓存区参数(CACHE_POOL_SIZE)
  9. 计划重用参数(USE_PLN_POOL,为0时禁止计划重用,1表示启动)
  10. 结果集缓存启用参数(RS_CAN_CACHE,0是不启用)
  11. 字典缓冲区参数(DICT_BUF_SIZE)
  12. 内存池参数:
    a) MEMORY_POOL:初始大小
    b) MEMORY_EXTENT_SIZE:扩展大小
    c) MEMORY_TARGET:目标大小
    d) MEMORY_N_POOL:共享内存池个数,默认为1,高并发时可设置多个。
    e) MAX_OS_MEMORY:内存占用操作系统内存的比例,默认100,建议调整到80-90%。
  13. 用户密码策略参数(PWD_POLICY)只能通过函数或SQL语句修改;
    a) 0无策略
    b) 1禁止与用户名相同
    c) 2口令长度需大于等于INI 参数PWD_MIN_LEN (默认为9)设置的值
    d) 4至少包含一个大写字母(A-Z)
    e) 8至少包含一个数字(0-9)
    f) 16至少包含一个标点符号(英文输入法状态下,除“和空格外的所有符号)
    组合应用时,如需要应用策略2和4,则设置口令策略为2+4=6即可。
    alter SYSTEM set 'PWD_POLICY' = 15 BOTH;
  14. 修改回滚段的保留时长:UNDO_RETENTION
    alter system set 'UNDO_RETENTION'=180 both;
  15. 修改临时表空间的初始大小(单位是M)
    alter system set 'TEMP_SIZE'=100 spfile;
    4.2 使用console工具
    修改的是配置文件参数—需要重启数据库才能生效,一定不能用root启动。
    核心转储错误是图形界面配置错误。
    5 表空间管理:
    5.1 图形化管理(Manager)
    注意:如果页大小是8K,最小值将不低于32M;
    alter tablespace XX resize DATAFILE 'TBS01.DBF' TO 128;
    5.2 命令行
    select * from v$tablespace;
    select * from v$datafile;
  1. 创建表空间:create tablespace 表空间名 datafile '数据文件路径' SIZE 数据文件大小(单位为mb);
  2. 修改表空间大小:alter tablespace 表空间名 resize datafile '数据文件路径' to 数据文件大小(单位为mb);
  3. 修改表空间开启自动增长,增长步长,最大表空间
    alter tablespace 表空间名 datafile '数据文件路径' autoextend on next 增长步长 maxsize 文件最大值;
  4. 删除表空间(一定先脱机再删除):
    脱机:alter tablespace tbs offline;
    删除:drop tablesapce 表空间名;
  5. 增加表空间下的数据文件
    alter tablespace 表空间名 add datafile '数据文件路径' size 数据文件大小(单位为mb);
  6. 修改表空间名称
    alter tablespace 修改前表空间名 rename to 修改后表空间名;
    5.3 表空间迁移
  7. 表空间脱机:
  8. 指定要迁移的文件和迁移路径:
    alter tablespace 表空间名 rename datafile '重命名的数据文件名' to '路径';
  9. 表空间联机:alter tablespace 表空间名 online。
    6 重做日志文件
    6.1 图形化方式:
    数据库右击-管理服务器-日志文件(修改大小和增加联机日志文件)
    6.2 命令行
  1. 查看当前正在使用的联机日志
    select * from v$rlog;
    select * from v$logfile;
  2. 创建连接日志、修改连接日志大小
    alter database add logfile '日志名称' size 日志大小(单位MB);
    alter database resize logfile '日志路径' to 日志大小(单位MB);
    6.3 重做日志迁移
  3. 将数据库状态设置为mount状态:alter database mount;
  4. 联机日志迁移:alter database rename logfile '原日志路径' to '迁移到的日志路径';
  5. 将数据库状态设置为open状态:alter database open;

7 归档管理
7.1 图形化管理:
Manager,数据库右击-管理服务器-系统管理/归档配置
先mount。
归档路径一般位于安装目录下:./arch
8 用户、角色、权限管理
8.1 图形化管理:
8.2 用户管理-命令行

  1. 创建用户:
    create user 用户名 identified by 密码 default tablespace 表空间名;
  2. 用户锁定和解锁:
    alter user hr ACCOUNT UNLOCK;
    alter user hr ACCOUNT LOCK;
  3. 修改用户的默认表空间:
    alter user hr DEFAULT TABLESPACE dmtbs;
  4. 修改用户密码:
    alter user hr IDENTIFIED by "Dameng@123";
  5. 删除用户:
    drop user if EXISTS hr;
  6. 用户资源限制
    alter user hr LIMIT FAILED_LOGIN_ATTEMPS 5, PASSWORD_LOCK_TIME 3;
    LIMIT FAILED_LOGIN_ATTEMP 最大连接数;
    PASSWORD_LOCK_TIME 密码错误锁定测试
    PASSWORD_LIFE_TIME 密码锁定解锁时间
    8.3 角色管理-命令行
  7. 创建角色
    create role r1;
  8. 给角色配置权限
    grant create table to r1;
  9. 将角色配置给用户
    grant r1 to hrtest;
  10. 角色禁用和启用
    sp_set_role('R1',0)禁用后角色权限将不在生效。
    8.4 权限管理-命令行
  11. 创建权限
    grant select on 模式名.表名 to 用户名;
    如果要赋予修改、删除权限,不能只授予修改、删除权限,还要授予查询权限
  12. 回收权限
    revoke 角色名 from 用户名; revoke 具体权限 from 用户名;
    9 模式对象管理
  13. 创建模式
    create schema 模式名 authorization 用户名;
    grant create schema to 用户名;
  14. 切换模式
    SET SCHEMA DAMENG;(仅对当前会话生效);
  15. 删除模式
    drop SCHEMA IF EXISTS HRTEST01;
    drop SCHEMA IF EXISTS HRTEST01 CASCADE; --级联删除模式下对象,生产环境慎用。
    10 管理表
    10.1 图形化管理:
    客户端操作区分大小写,建议统一使用大写
    10.2 数据导入(必考):
    Disql执行:start sql文件路径
    客户端执行(绝对路径的sql文件):
    `/dm8/backup/dts/t_department.sql commit;
    10.3 约束:
    外键约束(外键引用两一张表的主键或者唯一键);
    10.4 索引:
    create index idx_表名_字段名 ON 表名 (字段名,字段名);
    10.5 视图:
    create or replace view 视图名称 as select * from aaa where age > 10;
    11 备份与还原
    checkpoint(100); --执行完全检查点,解决刚开归档备份,报错归档日志不连续的问题
    11.1 物理备份
    11.1.1 联机备份(热备)
    必须打开归档,备份前执行完全检查点。
    全量备份:/backup/full
    增量备份:/backup/
    备份还原两个重要参数:
    BAK_PATH:DM默认的备份路径,生成环境不要和源库数据文件放在同一磁盘上。避免磁盘损坏,数据文件和备份文件同时损坏的情况。
    BAK_USE_AP:备份还原策略,默认使用DMAP辅助进程。
    select * from v$parameter t where name in ('BAK_PATH', 'BAK_USE_AP');
    如果备份在指定目录下,需要手动添加目录才能看到备份的内容。

11.1.2 脱机备份(冷备)
数据库关闭状态下的备份
Tool目录下./console 图形化管理

11.1.3 命令行-库级还原与恢复
bin 目录下:./dmrman 启动

  1. 数据库的还原
    restore database '/dm8/data/DM/dm.ini' from backupset '/dm8/backup/full/ONLINEBAK_02'
  2. 数据库的恢复
    recover database '/dm8/data/DM/dm.ini' with archivedir '/dm8/arch';
  3. 更新数据库魔数
    recover database '/dm8/data/DM/dm.ini' update db_magic;
    11.1.4 图形管理工具-库级还原与恢复
    11.1.4.1 冷备还原与恢复:
  4. 数据库的还原;
  5. 数据库的恢复;恢复到最新,使用归档恢复。(脱机备份的不需要此步)
  6. 数据库更新魔数值。

11.1.4.2 热备还原与恢复:

  1. 数据库的还原。
    11.1.5 备考心得
  1. 在进行故障模拟时,一定要先查看故障模拟的脚本是什么,如果觉得不好还原恢复,建议不进行故障模拟。由于实操考试的特殊性,如果数据库无法正常还原恢复,将记0分。
  2. 如果要进行故障模拟,一定要先再次备份,包括热备和冷备,为还原和恢复做准备。
  3. 对于重要文件丢失的故障模拟,在恢复时,如果遇到问题,可以新试着采用命令行的方式进行恢复还原,如下:
  1. restore database to 控制文件目录 from backupset 备份文件;
  2. restore database to 控制文件目录overwrite from backupset 备份文件;
    11.2 逻辑备份
    11.2.1 命令行方式
    在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
    11.2.2 DM管理工具

12 作业管理

  1. 第一步:图形化界面-创建代理环境:
  2. 第二步:图形化界面-新建作业:

JOB运行和日志 查看
--查看job
select * from sysjob.sysjobs;
--运行job
SP_DBMS_JOB_RUN(1684329919);
--查看job运行日志
select * from SYSJOB.SYSJOBHISTORIES2;

13 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
    注:configure时可以使用--prefix参数指定安装路径,不指定使用默认安装路径/usr/local
  3. 修改两个配置文件odbc.ini、vim odbcinst.ini
    a) 查看配置文件命令:odbcinst –j,获取配置文件的路径。
    b) 进入配置文件目录:cd /usr/local/etc/
    c) 修改:vim odbc.ini
    [DM8]#这是连接名
    Description = DM ODBC DSN
    Driver = DM8 ODBC DRIVER
    SERVER = localhost
    UID = SYSDBA
    PWD = SYSDBA
    TCP_PORT = 5236
    d) 修改:vim odbcinst.ini
    [DM8 ODBC DRIVER] #和上面的Driver保持一致
    Description = ODBC DRIVER FOR DM8
    Driver = /dm8/bin/libdodbc.so#dm8安装目录的bin目录下
  4. 切换到dmdba用户,进行登陆即可
    su – dmdba
    isql dm8 –v
  5. Linux-Vim命令小技巧:
    Vim 命令模式下,点击i进入编辑模式;
    编辑模式下,点击ESC进入命令模式;
    :wq – 保存并退出。
  6. 备考心得:
    安装ODBC的最重要的是,配置文件的修改,一定要明白每个参数的含义,正确的配置。
评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服