[独孤九剑]Oracle知识点梳理(一)表空间、用户
本系列链接导航:
[独孤九剑]Oracle知识点梳理(一)表空间、用户
[独孤九剑]Oracle知识点梳理(四)SQL语句之DML和DDL
[独孤九剑]Oracle知识点梳理(五)数据库常用对象之Table、View
[独孤九剑]Oracle知识点梳理(六)数据库常用对象之Procedure、function、Sequence
[独孤九剑]Oracle知识点梳理(七)数据库常用对象之Cursor
[独孤九剑]Oracle知识点梳理(八)常见Exception
[独孤九剑]Oracle知识点梳理(九)数据库常用对象之package
[独孤九剑]Oracle知识点梳理(十)%type与%rowtype及常用函数
1、表空间
Oracle 的结构是 区/段、表空间、用户、表...(区段是Oracle存储方面的概念,编码人员不需要了解过多)。当我们安装完Oracle后,默认就会拥有一个数据库,之后的所有操作,都是在这个默认的数据库中进行的。
注: 这里要与SqlServer的数据库(database)概念区别开,SqlServer中的数据库是我们最常操作的,给我们的印象是每个数据库是相互隔离的,不同用户(user)登录后可看到所有数据库并进行操作;而Oracle中我们的操作都是在同一个数据库(database或叫数据库实例)中进行的,起到隔离作用的是用户(user),不同用户(user)登录后,只能看到自己所拥有的对象(如表、视图、过程、函数等);当然,以上的前提是权限最小的情况下。
用户(user)拥有多个表(Table)、视图(View)、存储过程(Procedure)、函数(Function)、包(packgae)等;用户及其包含的对象要存储到某一个表空间中;一个表空间可以存储多个用户信息。
1.1、操作表空间
Oracle的表空间分为:
- 永久表空间(也叫数据表空间,存放永久性数据,如表、索引等)
- 临时表空间(不能存放永久性对象,用于保存数据库排序,分组时产生的临时数据)
- UNDO表空间(保存数据修改前的镜像)
1.1.1、操作永久表空间
a) 创建(表空间文件为1个)
create tablespace tablespaceName
logger -- 可将表空间的创建信息记录到Oracle的日志中
3 datafile 'tablespaceName.dbf' --保存文件的路径,习惯上将表空间的名称用于文件的名称
--(可设置绝对路径,相对路径的话会保存到默认目录下)
4 size 64m --最初的数据文件大小
5 autoextend on --开启自增长
6 next 64m maxsize 1024m --每次增长64m,最大1024m
7 extent management local; --extent management 有两种方式 local(本地管理,默认);
--dictionary(数据字典管理)
b) 创建(表空间文件为多个)
create tablespace tablespaceName
logger
datafile
'tablespaceName01.dbf' size 64m autoextend on next 64m maxsize unlimited, --设置自增长且无上限
'tablespaceName02.dbf' size 64m autoextend on next 64m maxsize unlimited,
'tablespaceName03.dbf' size 64m autoextend on next 64m maxsize unlimited
extent management local;
c) 表空间增加文件
alter tablespace tablespaceName
add datafile 'tablespaceName04.dbf'
3 size 64m autoextend on
next 64m maxsize unlimited;
d) 删除表空间
drop tablespace tablespaceName including contents and datafiles cascade constraints;
1.1.2、创建临时表空间
a) 创建(表空间文件为1个)
create tablespace tablespaceName
logger -- 可将表空间的创建信息记录到Oracle的日志中
3 tempfile 'tablespaceName.dbf' --保存文件的路径,习惯上将表空间的名称用于文件的名称
--(可设置绝对路径,相对路径的话会保存到默认目录下)
4 size 64m --最初的数据文件大小
5 autoextend on --开启自增长
6 next 64m maxsize 1024m --每次增长64m,最大1024m
7 extent management local; --有两种方式 local(本地管理,默认)、dictionary(数据字典管理)
b) 创建(表空间文件为多个)
create tablespace tablespaceName
logger
tempfile
'tablespaceName01.dbf' size 64m autoextend on next 64m maxsize unlimited, --设置自增长且不设置上线
'tablespaceName02.dbf' size 64m autoextend on next 64m maxsize unlimited,
'tablespaceName03.dbf' size 64m autoextend on next 64m maxsize unlimited
extent management local;
c) 给表空间增加文件
alter tablespace tablespaceName
add tempfile 'tablespaceName04.dbf' size 64m autoextend on next 64m maxsize unlimited;
d) 删除表空间
drop tablespace tablespaceName including contents and datafiles cascade constraints;
1.1.3、创建UNDO表空间
a) 创建
create undo tablespace tablespaceName datafile 'tablespaceName.dbf' size 64m;
b) 修改系统默认UNDO表空间(有UNDOTBS修改为自己创建的)
alter system set undo_tablespace=tablespaceName;
c) 删除UNDO表空间
drop tablespace "tablespaceName" including contents and datafiles;
1.2、创建用户
用户(user)的创建过程需要:a)设置用户名、密码;b)设置数据表空间;c)设置临时表空间;d)设置权限,几个步骤。
- 创建用户,设置用户名、密码、表空间
create user userName identified by password
defalut tablespace dataTablespaceName
temporary tablespace tempTablespaceName; -- a、b、c
- 设置权限
grant connect,resource,exp_full_database,imp_full_database to userName; --d
用户的修改及删除
--修改密码
alter user userName identified by password2; --删除用户及其拥有对象
drop user userName cascade;
1.2.1、权限和角色
在创建用户的过程中,有设置权限的操作。Oracle的内置了多个角色,角色拥有不同权限。
a) Oralce的特殊权限
- 系统权限unlimited tablespace是隐含在dba, resource角色中的一个系统权限. 当用户得到dba或resource的角色时, unlimited tablespace系统权限也隐式受权给用户.
- 系统权限unlimited tablespace不能被授予role, 可以被授予用户.
- 系统权限unlimited tablespace不会随着resource, dba被授予role而授予给用户.
b) 特殊角色
- dba角色,是授权数据库管理员的权限
- connect角色, 是授予最终用户的典型权利,最基本的 一个(CREATE SESSION)
- resource角色,是授予开发人员的 默认有八个权限(CREATE SEQUENCE,CREATE TRIGGER,CREATE CLUSTER,CREATE PROCEDURE,CREATE TYPE,CREATE OPERATOR,CREATE TABLE,CREATE INDEXTYPE)
- exp_full_database角色,拥有导出数据库的权限
- imp_full_database角色,拥有导入数据库的权限
c) 用户授权常用参数:
connect、resource、dba、unlimited tablespace、
create session --创建会话
create any sequence --创建序列
create any table --创建表
create any view --创建视图
create any index --创建索引
create any procedure --创建存储过程
create any directory --创建目录 alter session --修改会话
alter any sequence --修改序列
alter any table --修改表
alter any view --修改视图
alter any index --修改索引
alter any procedure --修改存储过程
alter any directory --修改目录 drop session --删除会话
drop any sequence --删除序列
drop any table --删除表
drop any view --删除视图
drop any index --删除索引
drop any procedure --删除存储过程
drop any directory --删除目录 select any table --查询表
select any dictionary --查询目录
insert any table
update any table
delete any table
debug any procedure --debug存储过程
debug connect session
exp_full_database --导出
imp_full_database --导入
1.3、用户权限查询(需要拥有dba角色)
1.3.1、查看用户拥有那些角色
select * from dba_role_privs a where a.grantee='userName';
--或
select * from dba_sys_privs a where a.grantee='userName';
1.3.2、查看角色拥有那些权限
select ROLE, PRIVILEGE from role_sys_privs where role='RESOURCE'; --RESOURCE,CONNECT,DBA
--或
select grantee,privilege from dba_sys_privs where grantee='RESOURCE';
1.3.3,为用户取消角色
revoke resource from userName;
1.3.4,为用户取消权限
revoke unlimited tablespace from userName;
1.3.5,最后附加一个非常有用的技巧:查看Oracle的版本号
select * from v$version where rownum <=1;
当不同版本数据库的导入导出操作是,需要标记版本号
[独孤九剑]Oracle知识点梳理(一)表空间、用户的更多相关文章
- [独孤九剑]Oracle知识点梳理(十)%type与%rowtype及常用函数
本系列链接导航: [独孤九剑]Oracle知识点梳理(一)表空间.用户 [独孤九剑]Oracle知识点梳理(二)数据库的连接 [独孤九剑]Oracle知识点梳理(三)导入.导出 [独孤九剑]Oracl ...
- [独孤九剑]Oracle知识点梳理(九)数据库常用对象之package
本系列链接导航: [独孤九剑]Oracle知识点梳理(一)表空间.用户 [独孤九剑]Oracle知识点梳理(二)数据库的连接 [独孤九剑]Oracle知识点梳理(三)导入.导出 [独孤九剑]Oracl ...
- [独孤九剑]Oracle知识点梳理(八)常见Exception
本系列链接导航: [独孤九剑]Oracle知识点梳理(一)表空间.用户 [独孤九剑]Oracle知识点梳理(二)数据库的连接 [独孤九剑]Oracle知识点梳理(三)导入.导出 [独孤九剑]Oracl ...
- [独孤九剑]Oracle知识点梳理(七)数据库常用对象之Cursor
本系列链接导航: [独孤九剑]Oracle知识点梳理(一)表空间.用户 [独孤九剑]Oracle知识点梳理(二)数据库的连接 [独孤九剑]Oracle知识点梳理(三)导入.导出 [独孤九剑]Oracl ...
- [独孤九剑]Oracle知识点梳理(六)数据库常用对象之Procedure、function、Sequence
本系列链接导航: [独孤九剑]Oracle知识点梳理(一)表空间.用户 [独孤九剑]Oracle知识点梳理(二)数据库的连接 [独孤九剑]Oracle知识点梳理(三)导入.导出 [独孤九剑]Oracl ...
- [独孤九剑]Oracle知识点梳理(五)数据库常用对象之Table、View
本系列链接导航: [独孤九剑]Oracle知识点梳理(一)表空间.用户 [独孤九剑]Oracle知识点梳理(二)数据库的连接 [独孤九剑]Oracle知识点梳理(三)导入.导出 [独孤九剑]Oracl ...
- [独孤九剑]Oracle知识点梳理(四)SQL语句之DML和DDL
本系列链接导航: [独孤九剑]Oracle知识点梳理(一)表空间.用户 [独孤九剑]Oracle知识点梳理(二)数据库的连接 [独孤九剑]Oracle知识点梳理(三)导入.导出 [独孤九剑]Oracl ...
- [独孤九剑]Oracle知识点梳理(三)导入、导出
本系列链接导航: [独孤九剑]Oracle知识点梳理(一)表空间.用户 [独孤九剑]Oracle知识点梳理(二)数据库的连接 [独孤九剑]Oracle知识点梳理(三)导入.导出 [独孤九剑]Oracl ...
- [独孤九剑]Oracle知识点梳理(二)数据库的连接
本系列链接导航: [独孤九剑]Oracle知识点梳理(一)表空间.用户 [独孤九剑]Oracle知识点梳理(二)数据库的连接 [独孤九剑]Oracle知识点梳理(三)导入.导出 [独孤九剑]Oracl ...
随机推荐
- Python异步非阻塞IO多路复用Select/Poll/Epoll使用,线程,进程,协程
1.使用select模拟socketserver伪并发处理客户端请求,代码如下: import socket import select sk = socket.socket() sk.bind((' ...
- MySQL几个重要的目录
MySQL几个重要的目录 1 数据库目录 /var/lib/mysql/ 2 配置文件 /usr/share/mysql(mysql.server命令及配置文件) 3 相关命令 /usr/bin(my ...
- dfs的返回条件
用到dfs时要注意设置函数的返回条件,否则会导致一直wa!!!!!
- OC_内存管理
引言: 1.OC中的对象都是分配在堆中的 声明对象的格式: Person *person = [Person new ...
- [Python] 弗洛伊德(Floyd)算法求图的直径并记录路径
相关概念 对于一个图G=(V, E),求图中两点u, v间最短路径长度,称为图的最短路径问题.最短路径中最长的称为图的直径. 其中,求图中确定的某两点的最短路径算法,称为单源最短路径算法.求图中任意两 ...
- INSPIRED启示录 读书笔记 - 第40章 最佳实践经验
十大要点 1.产品管理的职责:许多产品经理将大把的时间浪费在与产品管理无关的工作上 2.用户体验:对于大多数软件产品来说,用户体验就是产品的生命 3.机会评估:用方便快捷的机会评估方法取代过时的市场需 ...
- (ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY)讲解
说明:Statement stmt = con.createStatemen=(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY ...
- maven setting.xml 存放位置导致deply失败,显示没有权限401错误
settings.xml存在于两个地方: 1.安装的地方:$M2_HOME/conf/settings.xml 2.用户的目录:${user.home}/.m2/settings.xml 我只在mav ...
- CCNA 课程 二
传输层:两个重要的协议 TCP 和 UDP TCP: 面向连接的协议:在传输用户数据前,先要建立连接 (TCP的三次握手) 错误检查 数据包序列化 可靠性传输:发送的数据需要接受者提供确认,通过报头中 ...
- multi update caused deadlock problem
https://social.msdn.microsoft.com/Forums/sqlserver/en-US/dba45618-1d64-4661-891d-74cab09dddf1/deadlo ...