root登录
systemctl status firewalld
systemctl stop firewalld
systemctl disable firewalld
groupadd -g 12349 dinstall
useradd -u 12345 -g dinstall -m -d /home/dmdba -s /bin/bash dmdba
id dmdba
passwd dmdba
检查:密码
mkdir -p /dm
# 删除执行 rm -rf /dm
chown dmdba.dinstall -R /dm
chmod -R 755 /dm
ls -ld /dm
考试时已经挂载完成
mkdir /mnt/dm
mount /opt/dm8_20231109_x86_kylin10_64.iso /mnt/dm
xhost +
# 显示access control disabled,can connect from any host
echo $DISPLAY
# 切换用户
su - dmdba
# 继续图形化
export DISPLAY=:2.0
一定要dmdba用户安装
su dmdba
cd /mnt/dm
./DMInstall.bin
这里不要创建data目录
检查:当前用户、安装目录、等
root运行
/dm8/script/root/root_installer.sh
cd /dm8/bin
./DmAPService restart
./DmServiceDMSERVER start
root用户执行
cd /opt
tar -zxvf /opt/unixODBC-2.3.0.tar.gz
cd unixODBC-2.3.0
./configure
make && make install
ll /dm8/bin/libdodbc.so
cd /usr/local/etc/
vim odbc.ini
vim odbcinst.ini
su - dmdba #(不能用su dmdba,会创建sql连接失败)
isql dm8
重点是两处信息要对应
# odbc.ini
[DM8]
Description = DM ODBC DSN
Driver = DM8 ODBC DRIVER
SERVER = localhost
UID = SYSDBA
PWD = Dameng123
TCP_PORT = 5237
# odbcinst.ini
[DM8 ODBC DRIVER]
Description = ODBC DRIVER FOR DM8
Driver = /dm8/bin/libdodbc.so
考试应该不需要
cd /dm8/bin
./dmctlcvt type=1 src=/dm8/data/DAMENG/dm.ctl dest=/home/dmdba/ctl.txt
select * from dba_users; # 查看所有用户
SELECT USER; # 查看当前用户
select * from v$datafile;
Alter tablespace "TEST" offline;
alter tablespace "TEST" rename datafile 'TEST01.DBF' to '/home/dmdba/TEST01.DBF';
alter tablespace "TEST" online;
考试时应该不需要
vi /etc/security/limits.conf
或者
ulimit -n 65536
ulimit -e 20
ulimit -l 16384
ulimit -u 65536
ulimit -a
考试时应该不需要
root用户执行
mount -o remount,size=2G /tmp
设置临时安装目录
dmdba用户执行
mkdir /home/dmdba/tmp
export DM_INSTALL_TMPDIR=/home/dmdba/tmp
cd /home/dmdba/
vim .bash_profile
最后一页加如下:
export PATH=$PATH:$DM_HOME/bin:$DM_HOME/tool
su - dmdba
source .bash_profile
窗口--选项--查询分析器--编辑器--启动SQL语法检查,以下3个
cd /dm8/tool/
./dbca.sh
检查:目录、库名、实例名、端口号、管理员密码、日志、簇、页、口令策略、兼容模式、等
console图形化操作
查看参数名、值、类型(session和sys为动态,infile为静态)
select para_name,para_value,para_type from v$dm_ini where para_name='COMPATIBLE_MODE';
修改动态参数,内存+配置文件
sp_set_para_value(1,'SVR_LOG',1);
修改静态参数,配置文件(内存值需要重启,才能更新)
sp_set_para_value(2,'COMPATIBLE_MODE',2);
# COMPATIBLE_MODE:是否兼容其他数据库模式。
# 0:不兼容
# 1:兼容 SQL92 标准
# 2:部分兼容 ORACLE
# 3:部分兼容 MS SQL SERVER
# 4:部分兼容 MYSQL
# 5:兼容 DM6
# 6:部分兼容 TERADATA
# 7:部分兼容 POSTGRES
manager图形化
LOCALHOST--右键--管理服务器--日志文件
select path,RLOG_SIZE/1024/1024 from v$rlogfile;
manager图形化
检查:目录、文件、扩展、等
1G是1024,10G是10240,默认单位是M
select * from dba_tablespaces;
select * from dba_data_files;
manager图形化
检查:密码、限制、授权、角色
默认的角色权限不要修改
manager图形化
检查:大小写、数据类型、主键、外键、约束、表空间、等
SELECT * FROM SYS.DBA_SEGMENTS WHERE SEGMENT_NAME='EMPLOYEE';
先写SELECT,再CREATE VIEW
create view test.view_emp as select employee_name,department_id,salaryfrom dmhr.employee where department_id=101;
drop view test.VIEW_EMP;
manager图形化
查询模式和所属用户
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;
查询当前模式
select sys_context('USERENV','CURRENT_SCHEMA');
切换模式(仅对当前会话生效)
SET SCHEMA DAMENG1;
manager图形化
create index "DMHR"."IND_NAME" on "DMHR"."EMPLOYEE"("EMPLOYEE_NAME");
explain select可以看是不是使用的索引
manager--打开文件--全选运行
`/home/dmdba/chen.sql
manager图形化
NOT NULL:非空约束
UNIQUE:唯一约束,可以为空,简写为UK_表名_字段名
PRIMARY KEY:主键约束(唯一约束+非空约束),简写为PK_表名_字段名
FOREIGN KEY:外键引用约束,引用的是另一张表(父表)的主键或唯一键。简写为FK_表名_字段名
CHECK:检验约束,用户校验数据的准确性,简写为CK_表名_字段名
console--DM控制台--服务器配置--实例配置--选择实例--控制文件相关参数--BAK_PATH
冷热备都需要DmAPservice运行
运行时热备:manager
关闭时冷备:console
还原只能关闭时:console--备份还原--还原--恢复(指定归档恢复)--更新magic
检查:目录、大小写、等
逻辑备份还原,就是导出导入
导出文件和导出日志小写,文件名要正确
数据行取消勾选,即不导数据
manager--代理--右键--新建代理环境--新建作业
检查:时间、频率、类型、等
manager--LOCALHOST--右键--管理服务器--状态转换+归档配置+状态转换
select name,arch_mode from v$database;
文章
阅读量
获赞