Oracle第一章
第一章主要内容:
1 oracle的介绍
2 oracle的使用
3 oracle的常用命令
4 oracle的用户管理
5 oracle的权限管理
1 oracle的介绍
数据库的大小分类:
大型:db2 > oracle > sybase
中型:sqlserver
小型:mysql
大小的划分,取决于数据访问量:
银行系统、企业集团——oracle
安装、卸载
为什么要使用oracle?
外面企业使用的比较多。
数据工程师? 待遇好
初级:oca (测试开发人员)
中级:ocp 专家级别
高级:ocm 大师级别(数据架构、分析师)
2 oracle的使用
a 一定要启动服务
OracleServiceORCL——oracle数据库服务
OracleOraDb11g_home1TNSListener——oracle监听服务
注意:如果要使用第三方的工具登录时,则需要启动监听服务
b 登录oracle数据库
oracle数据库中的三个用户
sys:(数据库管理员)
system:(数据库操作员) 默认密码:123456
scott:(普通用户,用来测试操作)
注意:scott用户,默认是 锁定状态(解锁),默认密码:tiger
角色:sysdba
c 如果忘记了密码?
找到密码文件修改
使用管理员登录修改密码
运行中:sqlplus / as sysdba
2.Immediate(立即关闭方式)
命令:shutdown immediate 关闭数据库
3 常用命令
a 查看当前登录用户:show user;
b 切换当前登录用户***** :conn 用户名/密码 [as sysdba];
c 解锁用户**** :alter user 用户名 account unlock; 注意:一般使用管理员解锁其它用户
d 锁定用户*****
alter user 用户名 account lock;
注意:一般使用管理员解锁其它用户
e 修改当前登录用户的密码
passw[ord]
f 修改其它用户的密码******
alter user 用户名 identified by 新密码;
注意:一般使用管理员解锁其它用户
g 断开当前登录用户:disc
h 设置显示行数:set pagesize 数字 默认显示14行
i 设置行显示的字符大小:set linesize 数字 默认显示80个字符
j 清空:clear screen;
k 退出:exit
4 oracle的用户管理
注意:操作用户一般都需要拥有管理员权限
a 创建用户:create user 用户名 identified by 密码;
b 删除用户:drop user 用户名;
5 oracle的权限管理
权限:系统权限/对象权限(角色)
注意:角色其实就是一类权限的分组,所以给用户分配角色其实也是在给用户分配权限。在oracle中有三个比较常用的角色。
对于一般不是很严格的系统可以授予开发用户CONNECT、RESOURCE角色权限即可。
DBA:该角色具有数据库所有的权限。
CONNECT:该角色具有连接数据库的权限,和create session的权限一样。
RESOURCE:该角色是应用程序开发角色,具有如下权限
.对象权限:
对象权限指的是其它拥有用户的对象的权限。其它用户对象的权限包括:select,delete,update,alter,insert,index(索引),
references,flashback,debug,query rewrite,on commit refresh;注意其它用户对象的权限没有drop的权限。
为用户授权:
系统权限:grant 系统权限 to 用户名;
对象权限:grant 对象权限 on 表名 to 用户名;
1.授予用户connect、resource角色权限。一般创建应用程序开发用户可以授予这两个角色的权限。
grant connect,resource to zhang;
2.授予用户chenmh用户zhang下person表的SELECT,DELETE,UPDATE,INSERT权限,授予具体的对象权限是对于权限严格控制的一种方案。
grant select,delete,update,insert on zhang.person to chenmh ;
3.将用户(zhang)下person表的所有权限授予(用户chenmh)
grant all privileges on zhang.person to chenmh;
案例:让teacher用户查询scott用户中的emp表
--查询所有的系统权限
select * from system_privilege_map;
--为teacher用户授权:连接
grant connect to teacher;
--回收teacher用户的系统权限
revoke connect from teacher;
--为teacher用户授权针对scott用户中emp表的查询权限
grant select on scott.emp to teacher;
--回收对象权限
revoke select on scott.emp from teacher;
回收权限:
系统权限:revoke 系统权限 from 用户名;
对象权限:revoke 对象权限 on 表名 from 用户名;
案例:
1.回收角色权限
revoke connect,resource from chenmh;
2.回收系统权限
revoke create from chenmh;
3.回收用户对象权限,回收zhang用户下person表的所有权限,如果是单个授予的权限需要单个的收回
revoke all privileges on zhang.person from chenmh;
回顾:
使用数据:
a 打开服务
b登录oracle数据库
三个用户:sys(sysdba角色) system(默认密码123456) scott(测试用户,默认为 锁定状态,默认密码 tiger)
角色:sysdba
在运行窗口:sqlplus / as sysdba
常用的命令:
查看用户:show user;
切换用户:conn 用户名/密码 [as sysdba]
解锁账户:alter user 用户名 account unlock; 注意:管理员操作
锁定账户:alter user 用户名 account lock; 注意:管理员操作
修改自己的密码:passw[ord]
修改其它用户的密码:alter user 用户名 identified by 新密码; 注意:管理员操作
设置显示行数:set pagesize 行数; 默认14行
设置显示字符:set linesize 字符数; 默认80个字符
清空:clear screen;
退出:exit
断开:disc
查看表结构:desc 表名;
第二章:
1 oracle的体系结构
2 表空间的管理
3 用户管理
4 权限管理
5 角色管理
1 oracle的体系结构
数据库的结构:
物理存储结构:在操作系统中数据的存在形式(文件)
从文件角度分为:
数据文件——存放后期产生的数据
控制文件——存放数据库本身的相关数据
日志文件——存放操作过程中的相关记录数据
逻辑存储结构:数据在数据库中的存储关系
从层次角度分为:
表空间 ——存放表、视图和索引等对象的磁盘存储空间, 类似于 mysql/sqlserver的单个数据库
|
逻辑对象——存放表、视图和索引及过程等存储结构
|
段 ——指定类型的存储结构 如:创建表(数据段)、创建索引(索引段)等
|
数据区间——最小的存储单元(分配和释放空间)
|
数据块 ——最基本的管理结构
注意:一般而言,一个表空间可以有多个数据文件,一个数据文件只属于一个表空间
2 表空间的管理
a 创建
表空间:create tablespace 表空间名 datafile 路径 size 兆
临时表空间:create temporary tablespace 临时表空间名 tempfile 路径 size 兆
b 修改
大小:alter tablespace 空间名 add datafile 路径 size 兆
默认:alter database default tablespace 空间名
c 删除
drop tablespace 空间名;——逻辑删除表空间
drop tablespace 空间名 including contents;——逻辑删除表空间和段
drop tablespace 空间名 including contents and datafiles;——删除表空间和段以及数据文件
表空间和临时表空间的区别:
表空间:存放表、视图等
临时表空间:体统针对排序、分组等操作的内存空间
3 用户管理
注意:具有管理权限者才能操作
a 创建用户
create user 用户名 identified by 密码 [default tablespace 空间名] [temporary tablespace 临时表空间名]
查询用户所在表空间:select * from dba_users where username='大写的用户名';
b 删除用户
drop user 用户名;
4 权限管理
权限
系统权限:针对数据库的相关操作,如:创建表、连接、视图等
对象权限:针对数据的相关操作,如:数据的查询、修改等
授权语法:
系统权限:grant 系统权限/角色 to 用户 [with admin option];
对象权限:grant 对象权限 on 表名 to 用户 [with grant option];
回收语法:
系统权限:revoke 系统权限/角色 from 用户;
对象权限:revoke 对象权限 on 表名 from 用户;
思考:
如果是系统权限,不会进行级联回收
如果是对象全系,会进行级联回收
5 角色管理
角色:多个权限组成了一个角色
分类:
系统角色:connect、resource、dba等
自定义角色
自定义角色:
a 创建
create role 角色名;
b 为角色授予权限
grant 权限 to 角色名;
c 为用户授予角色
grant 角色名 to 用户名;
d 删除角色
drop role 角色名;

浙公网安备 33010602011771号