netnr / OracleManager.sql
2020-01-10 11:23
Oracle表空间、用户、角色权限的管理
-- 查看表空间物理文件的名称及大小
SELECT tablespace_name,
       file_id,
       file_name,
       round(bytes / (1024 * 1024), 0) total_space
  FROM dba_data_files
 ORDER BY tablespace_name;
 
select username, default_tablespace from dba_users; -- 查询所有用户所对应的表空间,有dba权限的帐号,如sys,system

select * from all_users;  -- 查看你能管理的所有用户
select * from user_users; -- 查看当前用户信息

-- 创建表空间(大小 500M,每次 5M 自动增大,最大不限制)
-- 格式:create tablespace 表空间名 datafile '数据库物理路径及文件名' size 表空间大小
create tablespace DSPACE datafile '/u01/app/oracle/oradata/EE/DNAME.dbf' size 500M autoextend on next 5M maxsize unlimited;
create tablespace DSPACE datafile 'c:\oracle\oradata\test\DNAME.dbf' size 500M autoextend on next 5M maxsize unlimited;

drop tablespace DSPACE including contents and datafiles cascade constraint;  -- 删除表空间

-- 创建用户并指定表空间
-- 格式: create user 用户名 identified by 密码 default tablespace 表空间名
create user DNAME identified by DPWD default tablespace DSPACE;

alter user DNAME identified by DPWD -- 修改指定用户的密码

-- 为用户指定表空间
-- 格式:alter user 用户名 default tablespace 表空间名
alter user DNAME default tablespace DSPACE;

-- 删除用户
-- 格式:drop user 用户名 cascade
drop user DNAME cascade;

-- 授予权限
-- connect:授予最终用户的典型权利,最基本的
-- resource:授予开发人员
-- dba:授予数据库所有的权限
grant connect, resource to DNAME;
grant dba to DNAME;

revoke dba from DNAME;  -- 撤销权限
select * from dba_role_privs where grantee='DNAME'  -- 查询用户授予的角色权限


alter user DNAME account lock;  -- 用户锁定方法
alter user DNAME account unlock;  -- 用户解锁方法