达梦部署与安装

  1. 安装
    1.1 创建安装用户组
    #groupadd dinstall

1.2 创建安装用户
#useradd -g dinstall -m -d /home/dmdba -s /bin/bash dmdba

#useradd -g dinstall dmdba

1.3 初始化用户密码
#passwd dmdba

1.4 修改系统限制
#vi /etc/security/limits.conf
dmdba soft nofile 4096
dmdba hard nofile 65536

1.5 挂载镜像文件
#mkdir /dmdb
#mount -t iso9660 -o loop /root/dm7_setup_rh6_64_ent_7.6.0.197_20190917.iso /dmdb

1.6 更改权限
#chown dmdba.dinstall -R /dmdb
#chmod 755 -R /dmdb

1.7 修改环境变量
#su - dmdba
#vi .bashrc
export DM_HOME=/home/dmdba/dmdbms
export PATH= D M H O M E / b i n : DM_HOME/bin: DMHOME/bin:DM_HOME/tool:$PATH

1.8 采用命令行模式安装
#su - dmdba
#cd /dmdb
#./DMInstall.bin -i
1)Please select the installer’s language (E/e:English C/c:Chinese) [E/e]:e
2)Whether to input the path of Key File? (Y/y:Yes N/n:No) [Y/y]:n
3)Whether to Set The TimeZone? (Y/y:Yes N/n:No) [Y/y]:y
4)Please Select the TimeZone [21]:21
5)Installation Type:
1 Typical
2 Server
3 Client
4 Custom
Please Input the number of the Installation Type [1 Typical]:1
6)Please Input the install path [/home/dmdba/dmdbms]:
7)Please Confirm the install path(/home/dmdba/dmdbms)? (Y/y:Yes N/n:No) [Y/y]:y
8)Confirm to Install? (Y/y:Yes N/n:No):y
9)Please execute the commands by root:
/home/dmdba/dmdbms/script/root/root_installer.sh

1.9 初始化数据
#/home/dmdba/dmdbms/bin
#./dminit
input system dir: /home/dmdba/dmdbms
input db name: dmdb01
input port num: 5236
input page size(4, 8, 16, 32): 8
input extent size(16, 32): 16
input sec priv mode(0, 1): 0
input time zone(-12:59,+14:00): +08:00
string case sensitive? ([Y]es, [N]o): n
which charset to use? (0[GB18030], 1[UTF-8], 2[EUC-KR]): 1
length in char? ([Y]es, [N]o): y
enable database encrypt? ([Y]es, [N]o): n
page check mode? (0/1/2): 0
input elog path: /home/dmdba/dmdbms/log
auto_overwrite mode? (0/1/2): 2

1.10 启动数据库服务
#cd /home/dmdba/dmdbms/script/root
./dm_service_installer.sh -t dmserver -p dmdb01 -i /home/dmdba/dmdbms/dmdb01/dm.ini
提示信息:
Move the service script file(/home/dmdba/dmdbms/bin/DmServicedmdb01 to /etc/init.d/DmServicedmdb01)
insserv: warning: current stop runlevel(s) (empty) of script `DmServicedmdb01’ overwrites defaults (2 3 4 5).
insserv: Service network is missed in the runlevels 4 to use service mysql
DmServicedmdb01 0:off 1:off 2:on 3:on 4:on 5:on 6:off
Finished to create the service (DmServicedmdb01)

#service DmServicedmdb01 start

1.11 连接验证(默认密码)
#/home/dmdba/dmdbms/bin/disql
username:sysdba
password:SYSDBA

2.通过vnc调出管理工具
#xhost +
#su - dmdba
#export DISPLAY=127.0.0.1:1.0
#/home/dmdba/dmdbms/tool/manager

3.修改参数(v$parameter)
3.1 参数类型
0 Sys/session 动态参数,同时修改内存和配置文件
1 Read only 在数据库运行状态时,不能修改。
2 In file 静态参数,修改后,重启服务生效。

示例:
SQL> Select para_name,para_value from v$dm_ini where para_name=‘BUFFER_POOLS’;
LINEID para_name para_value


1 BUFFER_POOLS 3

3.2 命令
SP_PARA_SET_VALUE(SCOPE,PARA_NAME,PARA_VALUE);

SCOPE值:
1: 修改配置文件和内存
2:只修改配置文件

示例:
SQL> SP_SET_PARA_VALUE(2,’BUFFER’,1000);

4.重做日志
4.1 视图
v r l o g f i l e v rlogfile v rlogfilevrlog

SQL> select * from v$rlogfile;
说明:这里查出来的rlog_size大小单位是bit,因此再下面添加日志大小的时候需要除以两次1024转成M

4.2 添加日志文件
SQL> alter database add logfile ‘/home/dmdba/dmdbms/dmdb01/dmdb0103.log’ size 256;
说明:默认单位是M,不需要加单位。并且需要和原来的日志文件大小一致

4.3 修改日志文件大小
SQL> alter database resize logfile ‘/home/dmdba/dmdbms/dmdb01/dmdb0103.log’ to 300;
说明:所有的日志文件要大小一致

5.表空间
5.1视图
dba_tablespaces
v t a b l e s p a c e v tablespace v tablespacevhuge_tablespace

5.2 表空间说明
SQL> select TABLESPACE_NAME,STATUS from dba_tablespaces;

System表空间: 数据字典和全局的系统数据。
ROLL表空间:存放了数据库运行过程中产生的回滚记录。
TEMP表空间:临时表空间。
MAIN表空间:数据库默认的表空间,创建数据对象时,如果不指定存储位置,默认存放到该表空间。
HMAIN表空间:huge 表空间

5.3 查询所有表空间信息
SQL> Select name from v t a b l e s p a c e u n i o n s e l e c t n a m e f r o m v tablespace union select name from v tablespaceunionselectnamefromvhuge_tablespace;

5.4 创建表空间
表空间初始文件大小是页大小的4096倍

示例1:表空间初始大小50M,每次扩展1M,最大100M
SQL> create tablespace tbs1 datafile ‘/dm7/data/dm01/tbs01.dbf’ size 50 autoextend on next 1 maxsize 100;

示例2:表空间初始50M,表空间由2个数据文件组成,分别存储到不同的磁盘上,每次扩展1m,每个数据文件最大100M.
SQL> create tablespace tbs2 datafile ‘/dm7/data/dm01/tbs02_1.dbf’ size 50 autoextend on next 1 maxsize 100,‘/dm7/data/tbs02_2.dbf’ size 50 autoextend on next 1 maxsize 100;

5.5 维护表空间
最常用的方式就是增加数据文件
SQL> alter tablespace tbs2 add datafile ‘/dm7/data/dm01/tbs02_3.dbf’ size 50 autoextend on next 1 maxsize 100;

5.6 更换文件存储位置
注意:SYSTEM,ROLL, TEMP 不能offline;
SQL> alter tablespace tbs2 offline;
SQL> alter tablespace tbs2 rename datafile ‘/dm7/data/tbs02_2.dbf’ to ‘/dm7/data/dm01/tbs02_2.dbf’;
SQL> alter tablespace tbs2 online;

5.7 删除表空间
SQL> drop tablespace tbs2;
如果表空间存有数据,不允许直接删除!

6.用户管理
6.1 视图
dba_users

6.2 内置用户
sys — 达梦数据库的内置管理用户,不能登录数据库,数据库使用的大部分的数据字典和动态性能视图
Sysdba — 数据库的管理员
Sysauditor — 审计用户
Syssso — 安全用户
sysdbo — 数据操作员(安全版有,四权分立)

6.3 命名规则
字母开头,a-z,0-9,$#_

6.4 口令策略
用户密码最长为48个字节,创建用户语句使用 password policy 子句来指定口令策略(DM.INI PWD_POLICY).
系统支持的口令策略:
0 无策略
1 禁止与用户名相同
2 口令长度不小于9
4 至少包含一个大写字母(A-Z)
8 至少包含一个数字(0-9)
16 至少包含一个标点符号(英文状态输入,除”和空格外)
口令可以单独使用,也可以组合使用,比如需要应策略1和2,则设置口令策略为:3
密码尝试登录次数 FAILED_LOGIN_ATTEMPS
密码失败锁定时间 PASSWORD_LOCK_TIME
密码过期时间 PASSWORD_LIFE_TIME

6.5 用户权限
系统权限: create drop alter 能够对数据库做什么操作。
对象权限(表,视图,过程等等): select delete update insert
角色: dba、public等

6.6 查看用户权限:
SQL> select grantee,granted_role from dba_role_privs where grantee=‘USER1’;

行号 GRANTEE GRANTED_ROLE


1 USER1 PUBLIC

6.7 查看角色拥有的权限
SQL> select grantee,privilege from dba_sys_privs where grantee=‘PUBLIC’;
行号 GRANTEE PRIVILEGE


1 PUBLIC INSERT TABLE
2 PUBLIC UPDATE TABLE
3 PUBLIC DELETE TABLE
4 PUBLIC SELECT TABLE
5 PUBLIC REFERENCES TABLE
6 PUBLIC GRANT TABLE

6.8 示例

示例1:为数据库设置一个用户,该用户可以创建自己的表,有属于自己的独立表空间,用户密码要求每60天变更一次。
SQL> create tablespace tbs3 datafile ‘/dm7/data/dm01/tbs03.dbf’ size 32;
SQL> create user user1 identified by user1user1 limit password_life_time 60 default tablespace tbs3;

示例2:创建一个用户,该用户每60天变更一次密码,密码尝试连接2次失败,账户锁定5分钟,用户还可以查询dmhr.employee表
SQL> create user user2 identified by user2user2 limit password_life_time 60, FAILED_LOGIN_ATTEMPS 2 ,PASSWORD_LOCK_TIME 5 default tablespace tbs3;
SQL> grant select on dmhr.employee to user2;

示例3:企业招聘一批录入人员,权限是固定的,只有录入CITY表的权限
角色:一类权限的集合
SQL> create role role1;
SQL> grant insert on dmhr.city to role1;
SQL> grant references any table to role1;
SQL> grant role1 to user2;

6.9 用户维护

1)撤销权限
SQL> revoke select on dmhr.employee from user2;

2)解锁用户
SQL> alter user user2 account unlock;

3)修改密码
SQL> alter user user2 identified by user3user3;

4)删除用户
SQL> drop user user2;

5)删除用户(级联删除)
SQL> drop user user2 cascade;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值