注意事项:
1、安装用户、用户组 以及安装目录(root名下)
groupadd dinstall
useradd -g dinstall -m -d /home/dmdba -s /bin/basg dmdba
passwd dmdbadmerv
更改相关密码
安装目录
mkdir /dm
ls -ld /dm
chown dmdba:dinstall /dm
ls -ld /dm
2、安装数据库
1、首先检查图形化界面现在root名下
xhost +
echo $DISPLAY
export DISPLAY=:0.0
在dmdba下面继续设置:
su - dmdba
export $DISPLAY=:0.0
2、将bin复制到相关目录下:
cd /mnt/dm
./DMInstall.bin
1、增加执行权限(DMInstall.bin 下载的时候如果是白色的记得增加执行权限)
2、tmp空间不足的原因(root下面新建(OPT下面))
mkdir tmp
chown dmdba:dinstall /opt/tmp
su - dmdba
export DM_INSTALL_TMPDIR=/opt/tmp
cd/mnt/dm
ll
./DMInstall.bin
3、创建数据库和数据库实例
1、直接用图形化创建即可
2、如果要用命令行创建后必须注册数据库实例
4、连接数据库
./manager
(bin) ./disql sysdba/Dameng123:5236
5、数据库启动方式
root 用户的tool目录下:./dmservice.sh
3、DMSQL
SQL 的基础语法:
SELECT:(必选)查询列,聚合函数、distinct 去重 39 / 120
FROM:(可选)查询的表
WHERE:(可选)查询条件
GROUP BY:(可选)分组列。默认 select 出现的列(非聚合函数),group by 中要出现。
Having:(可选)聚合的过滤条件(配合 group by 使用)
ORDER BY:(可选)排序,默认 asc, 倒序排 desc,NULL 默认排在最前面(由参数
ORDER_BY_NULLS_FLAG,oracle 默认排在最后面)
DM中union和distinct只去重,不排序。 Oracle中union和distinct去重且排序。
1、DML需要commit ; DDL和DCL不需要
2、单表查询:
group by 和 having
select a.DEPARTMENT_ID, a.JOB_ID, count() as empnum from dmhr.employee a group by cube(a.DEPARTMENT_ID, a.JOB_ID) having count() >=20;
rollup 和 cube 都是多维度的
CUBE 生成的结果集显示了所选列中值的所有组合的聚合。
ROLLUP 生成的结果集显示了所选列中值的某一层次结构的聚合。
update 必须commit
update dmhr.employee t set t.salary=null where t.employee_id=1100; commit;
3、多表连接
内连接:
select a.DEPARTMENT_ID, b.DEPARTMENT_NAME, count() as empnum from dmhr.employee a join dmhr.DEPARTMENT b on a.DEPARTMENT_ID = b.DEPARTMENT_ID group by a.DEPARTMENT_ID, b.DEPARTMENT_NAME having count() >=30 order by empnum desc;
外连接
left join; right join; full join
4、体系结构
1、数据库参数修改方法
图形化界面直接改
修改静态参数
SP_SET_PARA_VALUE:修改整型参数。
SP_SET_PARA_DOUBLE_VALUE:修改浮点型参数:
SP_SET_PARA_STRING_VALUE:修改字符型参数:
5、归档管理
开启归档:
管理工具--数据库右键--管理数据库--系统管理--设置为配置状态--归档配置(设置好目标,类型,大小等等)--系统管理(改为打开状态)
6、表空间管理
修改回滚段时长的大小
alter system set 'UNDO_RETENTION'=300 both;
修改临时表空间的初始大小:
alter system set 'TEMP_SIZE'=100 spfile;用户权限管理
1.卸载数据库
切换用户: su - dmdba
设置好相关信息,切换至uninstall的路径下进行卸载即可
文章
阅读量
获赞