Oracle对表空间、用户、用户权限的操作
一、对表空间的操作
1、创建表空间(create tablespace)
-- 'hpdb_tablespace' 指定表空间名称
-- 'e:\hpdb.dbf' 指定表空间数据文件名称
-- size 指定表空间的初始化大小
-- autoextend on next 30M 指定当表空间不足时,自动扩增的空间大小
-- autoextend off 停止自动扩展表空间
-- maxsize unlimited 表空间的最大空间不设置上限
create tablespace hpdb_tablespace datafile 'e:\hpdb.dbf' size 100M autoextend on next 30M maxsize unlimited;
create tablespace table datafile 'e:\aa.dbf' size 10M;
2、修改表空间的大小
alter database datafile 'e:\hpdb.dbf' resize 30M;
3、为表空间设置自动扩展
alter database datafile 'e:\hpdb.dbf' autoextend on next 30M maxsize unlimited;
4、关闭表空间自动扩展
alter database datafile 'e:\hpdb.dbf' autoextend off
5、为表空间添加一个数据文件
alter tablespace hpdb_tablespace add datafile 'e:\22.dbf' size 100m;
6、删除表空间中的一个数据文件
alter tablespace hpdb_tablespace drop datafile 'e:\\22.dbf'
7、 删除表空间
-- 只删除表空间,对应的数据文件并没有删除
drop tablespace hpdb_tablespace;
-- 同时删除表空间和数据文件
-- (1)先将表空间offline
alter tablespace hpdb_tablespace offline;
-- (2)删除表空间和数据文件
-- 删除表空间、数据文件
drop tablespace hpdb_tablespace including contents and datafiles;
--删除表空间、数据文件、关联
drop tablespace hpdb_tablespace including contents and datafiles cascade constraint;
二、对临时表空间的操作
1、创建临时表空间(create temporary tablespace)
-- 和创建表空间的方式很相似
-- 注意:表空间通过create tablespace来创建;临时表空间通过create temporary tablespace类创建;表空间通过datafile为表空间指定数据文件的名称;临时表空间通过tempfile为其指定数据文件的名称
-- 临时表空间的作用:临时表空间主要用途是在数据库进行排序运算、管理索引、访问视图等操作时提供临时的运算空间,当运算完成之后系统会自动清理。
create temporary tablespace hpdb_tmp tempfile 'e:\hpdb_tmp.dbf' size 100M autoextend on next 30M maxsize unlimited;
2、查看临时表空间
--查看临时表空间
select name from v$tempfile
--查看当前用户的临时表空间
select * from database_properties where property_name='DEFAULT_TEMP_TABLESPACE';
3、修改临时表空间的大小
alter database tempfile 'e:\hpdb_tmp.dbf' resize 30M;
4、为临时表空间设置自动扩展
alter database tempfile 'e:\hpdb_tmp.dbf' autoextend on next 20M maxsize unlimited;
5、关闭临时表空间的自动扩展
alter database tempfile 'e:\hpdb_tmp.dbf' autoextend off;
6、为临时表空间添加一个数据文件
alter tablespace hpdb_tmp add tempfile 'e:\2.dbf' size 100M;
7、删除临时表空间中的一个数据文件
--删除2.dbf文件
alter tablespace hpdb_tmp drop tempfile 'e:\2.dbf';
8、删除临时表空间
--删除表空间,不删除.dbf文件
drop tablespace hpdb_tmp including contents and datafiles cascade constraints;
9、删除默认的临时表空间
默认的临时表空间不能直接删除,我们只能通过以下步骤间接的删除默认的临时表空间:
- 先定义一个新的临时表空间temp2,使temp2作为中转表空间;
- 将默认表空间temp1换成temp2;( alter database default temporary tablespace temp1; )
- 然后将之前的默认临时表空间temp1删除;
- 在定义一个新的临时表空间temp3,使temp3作为新的默认临时表空间;
- 删除中转表空间temp2;
经过以上几步,默认的表空间temp1就被替换成了新的表空间temp3。
三、对用户的操作
1、创建用户
-- user 后跟用户名
-- identified by 登录密码
-- default tablespace 用户默认表空间
-- temporary tablespace 用户临时表空间
-- 如果建立用户时不指定default tablespace,Oracle会将SYSTEM表空间作为用户默认表空间。
-- 如果建立用户时不能指定temporary tablespace,Oracle会将数据库默认临时表空间作为用户的临时表空间。
create user CS identified by 123456 DEFAULT tablespace hpdb_tablespace temporary tablespace hpdb_tmp;
2、更改用户的默认表空间
alter user CS default tablespace newTemp;
3、更改用户的默认临时表空间
alter user CS temporary tablespace temp3;
4、修改用户密码
alter user CS identified by 000000
5、 删除用户
--删除用户,并删除该用户创建的对象
--不能删除正在连接的用户
drop user CS cascade
6、锁定用户
alter user CS account lock;
7、解除锁定
alter user CS account unlock;
四、用户权限、角色管理
我们新创建的用户是没有任何权限的,甚至连登录连接数据的权限都没有,那么,我们在创建完用户后,就要为其分配权限,或者角色。
用户的权限分为两类:系统权限、对象权限
系统权限:允许用户执行某些数据库操作(如登录需要的权限create session;创建数据表的权限create table)。
对象权限:允许用户对某一特定对象执行特定的操作(如select、delete、update等权限)。
角 色:为了简化权限管理,进而引入了角色的概念,角色是具有名称的一组权限的组合。
系统预定义的用户角色
CONNECT:时用户 (只有登录的权限)
RESOURCE:更为可靠和正式的用户
DBA:数据库管理员角色,拥有管理数据库的最高权限,该角色不应该给一般的用户。
1、授予用户角色
--为用户CS授予connect、resource角色
GRANT CONNECT,RESOURCE TO CS;
2、授予用户系统权限
--授予用户CS登录连接数据库的权限
grant create session to CS;
--授予用户CS创建数据表的权限
grant create table to CS;
--赋予用户CS使用表空间的权限
grant ulimited tablespace to CS;
3、授予用户对象权限
-- 赋予用户CS查看数据表dept的权限
grant select on dept to CS;
-- 赋予用户CS查看所有数据表的权限
grant select any table to CS;
4、撤销用户角色
--撤销用户CS的connect、resource角色
REVOKE CONNECT,RESOURCE FROM CS;
--撤销用户CS的创建数据表的权限
revoke create table from CS;
--撤销用户CS的使用表空间的权限
revoke ulimited tablespace from CS;
--撤销用户CS的查看数据表dept的权限
revoke select on dept from CS;
--撤销用户CS查看所有数据表的权限
revoke select any table from CS;
5、权限级联
grant select on Student to CS with grant option;-- 赋予用户CS查看数据表Student的权限,并且用户CS可以将该权限赋予其他用户
- with grant option (用于对象权限授权,权限是级联的)赋予权限账户被删除或权限被撤销,被赋予权限的用户的权限也将被撤销
- with admin option (用于系统权限授权,权限是不级联的)赋予权限账户被删除或权限被撤销,被赋予权限的用户的权限不会被撤销
Oracle对表空间、用户、用户权限的操作的更多相关文章
- ORA-01950: no privileges on tablespace xxx ORA-01950: 对表空间 'xxx'无权限
场景: 创建用户,在用户scheme下新建了一张表,插入数据时报错 ORA-01950: 对表空间 'xxx'无权限 创建用户 /*第1步:创建临时表空间 */ create temporary ta ...
- ORA-01950:对表空间 'USERS' 无权限
在存储数据时出现ORA-01950:对表空间 'USERS' 无权限 错误,解决如下: 找到对象Users下的用户名,然后点编辑,角色权限添加dba 在oracle创建了一个新的表空间和一个新的用户, ...
- 对表空间 'USERS' 无权限
保存对表 "CHENGYU"."T_USER" 的更改时出现一个错误: 行 1: ORA-01950: 对表空间 'USERS' 无权限 更改用户的默认表空 ...
- Oracle 表空间和用户权限管理
一. 表空间 Oracle数据库包含逻辑结构和物理结构. 数据库的物理结构指的是构成数据库的一组操作系统文件. 数据库的逻辑结构是指描述数据组织方式的一组逻辑概念以及它们之间的关系. 表空间是数据库逻 ...
- Oracle 表空间和用户权限管理【转】
一. 表空间 Oracle数据库包含逻辑结构和物理结构. 数据库的物理结构指的是构成数据库的一组操作系统文件. 数据库的逻辑结构是指描述数据组织方式的一组逻辑概念以及它们之间的关系. 表空间是数据库逻 ...
- linux系统下创建oracle表空间和用户权限查询
创建用户和表空间: 1.登录linux,以oracle用户登录(如果是root用户登录的,登录后用 su - oracle命令切换成oracle用户) 2.以sysdba方式来打开sqlplus,命令 ...
- Oracle对表空间无权限
有的时候我们在Oracle数据库中对执行insert.update之类的语句时会出错,Oracle说我们对表空间无权限.执行下面的语句就可以修改用户对表空间的权限了. 执行语句: alter user ...
- Oracle表空间,用户,用户授权
一:Oracle表空间 1,Oracle表空间与SQL Server文件组对比 SQL Server的文件组(文件组包括若干MDF,NDF数据文件)对我们来说并不陌生,前段时间我在博客“怎样玩转千万级 ...
- oracle 表空间,用户的创建及授权,表空间基本操作
参考地址:https://www.cnblogs.com/zhaideyou/articles/5845271.html Oracle安装完后,其中有一个缺省的数据库,除了这个缺省的数据库外,我们还可 ...
随机推荐
- Gitlab安装操作说明书
一.Gitlab安装操作步骤 登录官方网站https://about.gitlab.com/downloads/根据你所需要的系统版本,作者使用的是centos6, 检查您的服务器是否符合硬件要求.g ...
- 【编程思想】【设计模式】【行为模式Behavioral】Publish_Subscribe
Python版 https://github.com/faif/python-patterns/blob/master/behavioral/publish_subscribe.py #!/usr/b ...
- 【JAVA】【基础知识】Java程序执行过程
1. Java程序制作过程 使用文本编辑器进行编辑 2. 编译源文件,生成class文件(字节码文件) javac源文件路径. 3.运行程序class文件.
- .NET6使用DOCFX自动生成开发文档
本文内容来自我写的开源电子书<WoW C#>,现在正在编写中,可以去WOW-Csharp/学习路径总结.md at master · sogeisetsu/WOW-Csharp (gith ...
- shell脚本 系统信息检测
一.简介 源码地址 日期:2018/4/12 介绍:根据指令展示不同的系统数据 效果图: 二.使用 适用:centos6+ 语言:中文 注意:无 下载 wget https://raw.githubu ...
- Mybatis环境搭建及测试
1.新建java project,导入相应jar包 本次使用到的mybatis-3.2.7版本 mybatis需要jar包:mybatis-3.2.7.jar.lib文件下的依赖jar mysql驱动 ...
- 解决用creact-react-app新建React项目不支持 mobx装饰器模式导致报错问题 。
创建react项目 create-react-app mobx-demo cd my-app npm run start 使用react-app-rewired npm install customi ...
- Vlookup大叔与一对多查找(Excel函数集团)
所谓一对多查找,就是根据一个条件,把多个符合条件的结果全部找出来. 其实吧,一对多查找不是什么,尤其是O365的Filter函数横空出世震撼全场之后,简直就是瞬间把所有传统的数组解法甩出去七八十来条街 ...
- AtCoder Beginner Contest 169 题解
AtCoder Beginner Contest 169 题解 这场比赛比较简单,证明我没有咕咕咕的时候到了! A - Multiplication 1 没什么好说的,直接读入两个数输出乘积就好了. ...
- Linux中find命令与三剑客之grep和正则
昨日内容回顾 1.每个月的3号.5号和15号,且这天时周六时 执行 00 00 3,5,15 * 6 2.每天的3点到15点,每隔3分钟执行一次 */3 3-15 * * * 3.每周六早上2点半执行 ...