export DM_HOME=/dmdb7
export PATH=$DM_HOME/bin:$DM_HOME/tool:$PATH:$HOME/bin
Dm7dba soft nofile 4096
Dm7dba hard nofile 65536
mount -o loop dm7_setup_rh6_64_ent_7.6.0.197_20190917.iso /mnt
cd /mnt
cd /mnt
cd /dmdb7/bin
./dminit path=/dmdb7/data db_name=DAMENG instance_name=DMSERVER port_num=5236
创建一个表空间,初始50M,表空间由2个数据文件组成,分别存储到不同的磁盘上,每次扩展1m,每个数据文件最大100M
create tablespace tbs1 datafile '/dmdb7/data/DAMENG/tbs1_01.dbf' size 50 aut
oextend on next 1 maxsize 100,'/dmdb7/data/DAMENG/tbs1_02.dbf' size 50 autoextend on next 1 maxsize 100;
19、查看数据文件:select file_name,tablespace_name from dba_data_files;
20、添加数据文件:alter tablespace tbs01 add datafile '/dmdb7/data/DAMENG/tbs01_03.dbf' size 50 autoextend on next 1 maxsize 100;
21、更改表空间数据文件存储位置
1)查看表空间状态:select TABLESPACE_NAME,STATUS from dba_tablespaces;
2)离线表空间:alter tablespace tbs01 offline;
3)修改存储位置:
alter tablespace tbs01 rename datafile '/dmdb7/data/DAMENG/tbs01_03.dbf' to '/dmdb7/data/tbs01_03.dbf';
密码尝试登录次数 FAILED_LOGIN_ATTEMPS
密码失败锁定时间 PASSWORD_LOCK_TIME
密码过期时间 PASSWORD_LIFE_TIME
create user test identified by dameng123 limit password_life_time 60 default tablespace tbs01;
create user test1 identified by Test12345 limit password_life_time 60,failed_login_attemps 2,password_lock_time 5;;
grant select on dmhr.employee to test1;
2)企业招聘一批录入人员,权限是固定的,只能录入city表。
角色:一类权限的集合。把某些特定的权限给一个固定的角色,然后再把角色分给用户。
SQL> create user test2 identified by Test12345;
SQL> create role r1;
SQL> grant insert on dmhr.city to r1;
SQL> grant references any table to r1;
SQL> grant r1 to test2;
SQL> conn test2/Test12345
SQL> insert into dmhr.city(city_id,city_name,region_id) values ('HS','洪山',7);
SQL> revoke insert on dmhr.city from r1;//撤销权限
SQL> alter user test2 identified by Dameng12345;//修改密码
SQL> alter user test account lock;//锁定用户
SQL> alter user test account unlock;//解锁用户
SQL> drop user test2;//删除用户
SQL> drop user test cascade; ----慎用,删除前做备份(级联删除表空间数据)
SQL> drop role r1;//删除角色
算出各个部门的平均工资?
SQL> select avg(salary) from dmhr.employee group by department_id having avg(salary)>=10000;
平均工资大于20000;
select avg(salary) from dmhr.employee group by department_id having avg(salary)>=10000;
算出各个部门的工资和,找出部门工资和大于200000的部门。
SQL> select department_id,sum(salary) from dmhr.employee group by department_id having sum(salary)>200000;
Having 是分组后的数据进行过虑,不能单独使用,having 前面一定是有group by。
在select 后出现的列,都要出现在group by 后,聚合函数列不算。
子查询
子查询的结果是主查询的条件,子查询先于主查询运行。
返回值是唯一的。
语法:select () from () where () = ()
SQL> select employee_name,department_id from dmhr.employee where department_id=(select department_id from dmhr.employee where employee_name='马学铭');
(迁移数据的时候,最好把约束禁用,迁移完成再启用)
SQL> alter table test.t9 disable constraint CONS134218782;
SQL> alter table test.t9 enable constraint CONS134218782;
alter database add archivelog 'type=local,dest=/dmdb7/arch,file_size=64,space_limit=0';
alter database archivelog;
alter database archivelog;
Dexp dimp
可以备表,用户,模式,数据库
导出:
dexp sysdba/dameng123 file=/dm7/backup/dexp_bak.dmp tables=emp;
导入
dimp sysdba/dameng123 file=/dm7/backup/dexp_bak.dmp tables=emp ignore=y
6)作业(管理工具配置);查看:select * from sysjob.sysjobs;