ORACLE创建表空间、创建用户、更改用户默认表空间以及授权、查看权限(修改表空间大小)

时间:2021-02-19 03:40:50

 

表空间增加文件、修改大小等点此

查询表空间路径:

select * from dba_data_files

删除表空间:

正常情况下,删除表空间的正确方法为:

DROP TABLESPACE tablespace_name INCLUDING CONTENTS AND DATAFILES;

 

实例:

1、CREATE TABLESPACE UCITDB_data

LOGGING

DATAFILE '/home/app/oracle/app/oracle/oradata/UCITDB/UCITDB_DATA01.DBF'

SIZE 32M

AUTOEXTEND ON

NEXT 32M MAXSIZE 2048M

EXTENT MANAGEMENT LOCAL;

创建表空间

UCITDB_data:用户表空间

不限制表空间大小用:maxsize unlimited

 

 

2、CREATE USER UCITDBA IDENTIFIED BY 111111

DEFAULT TABLESPACE UCITDB_data;

创建帐号并设置默认表空间

 

UCITDBA:创建的帐号名

111111:为设置帐号的密码

 

修改用户默认表空间:alter user dbcenter default tablespace DBCENTER_DATA

 

3、grant dba TO UCITDBA

给用户授予权限

dba:用户组

UCITDBA:用户


创建临时表空间:
CREATE TEMPORARY TABLESPACE test_temp

TEMPFILE 'C:\oracle\product\10.1.0\oradata\orcl\test_temp01.dbf'

SIZE 32M

AUTOEXTEND ON

NEXT 32M MAXSIZE 2048M

EXTENT MANAGEMENT LOCAL;


创建用户表空间:
CREATE TABLESPACE test_data

LOGGING

DATAFILE 'C:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\TEST_DATA01.DBF'

SIZE 32M

AUTOEXTEND ON

NEXT 32M MAXSIZE 2048M

EXTENT MANAGEMENT LOCAL;


创建用户并制定表空间:
CREATE USER username IDENTIFIED BY password

DEFAULT TABLESPACE TEST_DATA

TEMPORARY TABLESPACE TEST_TEMP;


给用户授予权限:
GRANT

CREATE SESSION, CREATE ANY TABLE, CREATE ANY VIEW ,CREATE ANY INDEX, CREATE ANY PROCEDURE,

ALTER ANY TABLE, ALTER ANY PROCEDURE,

DROP ANY TABLE, DROP ANY VIEW, DROP ANY INDEX, DROP ANY PROCEDURE,

SELECT ANY TABLE, INSERT ANY TABLE, UPDATE ANY TABLE, DELETE ANY TABLE

TO username;

 

将role这个角色授与username,也就是说,使username这个用户可以管理和使用role所拥有的资源

 

GRANT role TO username;


-----------------------------------------------查看用户权限---------------------------------------------------------

查看所有用户:
SELECT * FROM DBA_USERS;

SELECT * FROM ALL_USERS;

SELECT * FROM USER_USERS;


查看用户系统权限:
SELECT * FROM DBA_SYS_PRIVS;

SELECT * FROM USER_SYS_PRIVS;


查看用户对象或角色权限:
SELECT * FROM DBA_TAB_PRIVS;

SELECT * FROM ALL_TAB_PRIVS;

SELECT * FROM USER_TAB_PRIVS;


查看所有角色:
SELECT * FROM DBA_ROLES;


查看用户或角色所拥有的角色:
SELECT * FROM DBA_ROLE_PRIVS;

SELECT * FROM USER_ROLE_PRIVS;


------遇到no privileges on tablespace 'tablespace '
alter user userquota 10M[unlimited] on tablespace;

 

 

oracle表空间增加和修改数据文件

1、增加数据文件

alter tablespace tablespace_name add datafile '/usr/app/oracle/oradata/dbm/UCITDB_DATA01.DBF' size 10240M; 

2、手工改变数据文件尺寸

alter database datafile '/usr/app/oracle/oradata/dbm/UCITDB_DATA01.DBF' resize 2048M; 

3、容许数据文件自动扩展

alter database datafile '/usr/app/oracle/oradata/dbm/UCITDB_DATA01.DBF' autoextend on next 200M maxsize 30G; (解决oracle:ora 00017 01659错误)