1. tmp空间不足问题
这个问题在自己的虚拟机上基本上都会碰到,但是在考试环境的机器上基本上不用担心这个问题,考试的机器/tmp的空间都是比较大的。
解决方案如下:三选一即可
方法1、修改/etc/fstab,此方法需要重启虚拟机生效。
[root@kylin-template ~]# tail -1 /etc/fstab
tmpfs /tmp tmpfs nodev,nosuid,size=4G 0 0
方法2、使用root用户执行以下命令
mount -t tmpfs -o size=2048M tmpfs /tmp
方法3、更换为空间大的目录,需要注意目录的所有者权限。
export DM_INSTALL_TMPDIR=/opt/tmp
chown dmdba:dinstall /opt/tmp
2. 打开图形化报错
2.1.使用root用户设置DISPLAY
[root@kylin-template ~]# xhost +
[root@kylin-template ~]# echo $DISPLAY
:0.0
这里需要注意的是直接在虚拟机服务器里面执行echo $DISPLAY 弹出的是:0.0
VNC连接服务器执行echo $DISPLAY 弹出的是:1.0,DCA考试的时候一般都是使用VNC连接考试服务器
2.2.切换dmdba用户 su - dmdba
#如果于root用户不一致,根据以下方法修改一致即可
[dmdba@kylin-template ~]$ export DISPLAY=:1.0
[dmdba@kylin-template ~]$ xhost +
只有保证执行xhost +之后出现如图所示,图形化安装就不会有问题
3.设置数据库环境变量
rlwrap作用可以在数据库命令行上下翻转,操作起来更方便
cat >> ~/.bash_profile <<EOF
export PATH="$PATH:$DM_HOME/bin:$DM_HOME/tool"
alias disql="rlwrap disql"
alias dmrman="rlwrap dmrman"
EOF
source ~/.bash_profile
#下载安装rlwrap
https://github.com/hanslub42/rlwrap/releases/tag/v0.45.2
#解压安装
[root@kylin-template opt]# tar xf rlwrap-0.45.2.tar.gz
[root@kylin-template opt]# cd rlwrap-0.45.2/
[root@kylin-template rlwrap-0.45.2]# ./configure && make && make install
4.归档不连续问题二选一即可
备份数据库时可能出现归档不连续,导致备份失败
#解决方法
方法1:重启数据库
[dmdba@kylin-template bin]$ ./DmServiceDMSERVER restart
方法2:使用sql刷盘
SQL> checkpoint(100);
5.修改表空间二选一即可
TEMP表空间大小值为静态参数,很多同学直接在图形化修改TEMP表空间的大小,导致数据库重启之后失效。
#解决方案
方法1:
直接修改dm.ini参数,根据题目修改大小,重启数据库生效
[dmdba@dm01 /dm8/bin]$ grep -i 'temp_size' /dm8/data/DAMENG/dm.ini
TEMP_SIZE = 100 #temporary file size in Megabytes
[dmdba@dm01 /dm8/bin]$ ./DmServiceDMSERVER restart
方法2:
使用SQL修改,重启数据库生效
SQL> alter system set 'TEMP_SIZE'=100 spfile;
[dmdba@dm01 /dm8/bin]$ ./DmServiceDMSERVER restart
6.备份于恢复
1、冷备
##不需要开启归档,但是需要停掉数据库实例。
[dmdba@kylin-template bin]$ ./DmServiceDMSERVER stop
##使用RMAN备份
[dmdba@kylin-template bin]$ ./dmrman CTLSTMT="backup database '/dm8/data/DAMENG/dm.ini' to backup_file_01 backupset '/dm8/data/DAMENG/bak/backup_file_01'"
##检查备份集
RMAN> check backupset '/dm8/data/DAMENG/bak/backup_file_01'
2、热备
##需要开启归档,数据库需要联机
##查询数据库归档状态(ARCH_MODE=Y表示已开启归档)
select name,status$,arch_mode from v$database;
##全备
BACKUP DATABASE FULL BACKUPSET '/dm8/data/DAMENG/dm_bak';
##增备
backup database increment base on backupset '基备份集目录' to "备份名" backupset '备份集目录';
##表备份
backup table "模式名"."表名" to "备份名" backupset '备份集目录'
##表空间备份
backup tablespace "表空间名" full to "备份名" backupset '备份集目录';
##归档备份
backup archivelog all to "备份名" backupset '备份集目录';
3、还原
[dmdba@kylin-template bin]$ ./dmrman CTLSTMT="RESTORE DATABASE '/dm8/data5238/DAMENG/dm.ini' FROM BACKUPSET '/dm8/data/DAMENG/dm_bak'"
[dmdba@kylin-template bin]$ ./dmrman CTLSTMT="RECOVER DATABASE '/dm8/data5238/DAMENG/dm.ini' FROM BACKUPSET '/dm8/data/DAMENG/dm_bak'"
[dmdba@kylin-template bin]$ ./dmrman CTLSTMT="RECOVER DATABASE '/dm8/data5238/DAMENG/dm.ini' UPDATE DB_MAGIC"
7.部分SQL整理
7.1 表空间
1、查询表空间和数据文件
select tablespace_name,file_name from dba_data_files;
2、创建表空间
create tablespace test datafile ‘/dm8/data/DAMENG/TEST01.DBF’ SIZE 32;
3、表空间脱机
alter tablespace tbs offline;
4、表空间联机
alter tablespace tbs online;
5、增加数据文件
alter tablespace "TBS" add datafile '/dm8/data/DAMENG/TBS02.DBF' size 64 autoextend on next 1 maxsize 1024;
6、修改数据文件大小
alter tablespace “TBS” resize datafile ‘TBS02.DBF’ to 100;
7、更换数据文件路径
##先脱机
alter tablespace tbs offline;
##修改数据文件路径
alter tablespace tbs rename datafile ‘/dm8/data/DAMENG/TBS01.DBF’ to ‘/dm8/TBS01.DBF’;
##表空间联机
alter tablespace tbs online;
8、删除表空间
drop tablespace tbs;
7.2 用户管理
1、查看用户
select username,account_status from dba_users;
2、通过函数修改参数
sp_set_para_value(1,‘PWD_POLICY’,3);
3、更改用户的默认表空间
alter user “TEST” default tablespace “MAIN”;
4、更改密码
alter user test identified by Dameng123;
5、锁定test用户
alter user test account lock;
6、解锁test用户
alter user test account unlock;
7、撤回权限
revoke create table from test;
8、删除用户
Drop user test;
7.3 表管理
1、创建表
create table test1(id char(10) not null);
2、非空约束
insert into test1 values (null);
3、唯一约束
create table test2(id int unique,name varchar(25));
4、主键约束
create table test3(id int primary key);
5、外键约束
create table test4 (id int foreign key references test3(id));
6、检查约束
create table test5(id int check(id>=5));
7、重命名表
Alter table test1 rename to test6;
8、增加列
alter table “TEST1”.“TEST6” add column(“NAME” VARCHAR(30));
9、删除列
Alter table test6 drop column name;
10、查看约束
select constraint_name,table_name,status from user_constraints;
11、启用约束
alter table test2 enable constraint CONS134218843 ;
12、禁用约束
alter table test2 disable constraint CONS134218843 ;
13、删除表
Drop table test5;
8.考试注意事项
1.反复观看练习讲义文档;
2.配合《DM8系统管理员手册》官方文档,安装完在/dm8/doc/目录里;
3.考试前测试连接,确保网络连接没问题,一般考试前会提供测试机器测试连接;
4.考试时注意审题,根据题目要求操作;
5.如果考完还有剩余时间一定要仔细检查。