Oracle操作用户和表空间的总结

1. Oracle数据库的操作流程

首先我们要弄明白Oracle数据库的整个操作流程,如下图所示。 
 
接下来对表空间以及用户的各项操作介绍都是需要建立在以下三步的基础上:

  • 第1步:使用cmd命令打开DOS窗口。
  • 第2步:输入命令: sqlplus /nolog ,进入oracle控制台。
  • 第3步:输入conn 用户名/密码 sysdba 以DBA角色进入,提示连接成功。(注:此处用户必须有dba权限,如:sys)
  • 备注:在操作过程中可以使用clear SCR进行清屏

2. 操作表空间

2.1 创建表空间

create tablespace dweb
logging 
datafile ‘C:\Program Files\Oracle\Inventory\dweb.dbf‘ size 50m 
autoextend on next 50m maxsize 20480m 
extent management local;1234567

2.2 删除表空间

drop tablespace ackj including contents and datafiles;1

2.3 查看表空间使用

SELECT  a.tablespace_name 表空间名
       ,total 表空间大小
       ,free 表空间剩余大小
       ,(total-free) 表空间使用大小
       ,(total/(1024*1024*1024)) as 表空间大小G
       ,free / (1024 * 1024 * 1024) 表空间剩余大小G
       ,(total - free) / (1024 * 1024 * 1024) 表空间使用大小G
       ,round((total - free) / total, 4) * 100 使用率  FROM (SELECT tablespace_name, SUM(bytes) free          FROM dba_free_space         GROUP BY tablespace_name) a,
       (SELECT tablespace_name, SUM(bytes) total          FROM dba_data_files         GROUP BY tablespace_name) b WHERE a.tablespace_name = b.tablespace_name;123456789101112131415

3. 操作用户

3.1 创建用户

在实际操作中,一般一个用户负责对应一个表空间,因此在创建用户的同时,需要赋予其所属表空间。

create user dweb identified by dweb default tablespace dweb;1

3.2 删除用户

drop user dweb cascade;1

3.3 修改密码

alter user dweb identified by 123456;1

3.4 查看用户列表

select username from dba_users;select * from all_users;12

4. 用户授权

4.1 权限说明

4.2 用户授权

grant connect,resource,dba to dweb;grant create any sequence to dweb;grant create any table to dweb;grant delete any table to dweb;grant insert any table to dweb;grant select any table to dweb;grant unlimited tablespace to dweb;grant execute any procedure to dweb;grant update any table to dweb;grant create any view to dweb;12345678910

5. 相关操作

--查看用户所属的表空间(用户名必须大写)select username,default_tablespace from dba_users where username=‘DWEB‘;--查看用户具有的表空间(用户名必须大写)select * from dba_sys_privs where grantee=‘DWEB‘;--Oracle删除指定用户所有表的方法(用户名必须大写)select ‘Drop table ‘||table_name||‘;‘ from all_tableswhere owner=‘DWEB‘;--获取当前用户下所有的表select table_name from user_tables;--删除某用户下所有的表数据select ‘truncate table  ‘ || table_name from user_tables;--启用外键约束的命令alter table table_name enable constraint constraint_name; --禁用外键约束的命令alter table table_name disable constraint constraint_name;--用SQL查出数据库中所以外键的约束名select ‘alter table ‘||table_name||‘ enable constraint ‘||constraint_name||‘;‘ from user_constraints where constraint_type=‘R‘;select ‘alter table ‘||table_name||‘ disable constraint ‘||constraint_name||‘;‘ from user_constraints where constraint_type=‘R‘;12345678910111213141516171819202122232425
--ORACLE启用外键和触发器SET SERVEROUTPUT ON SIZE 1000000BEGINfor c in (select ‘ALTER TABLE ‘||TABLE_NAME||‘ ENABLE CONSTRAINT ‘||constraint_name||‘ ‘ as v_sql from user_constraints where CONSTRAINT_TYPE=‘R‘) loop
DBMS_OUTPUT.PUT_LINE(C.V_SQL);begin
 EXECUTE IMMEDIATE c.v_sql;
 exception when others then
 dbms_output.put_line(sqlerrm); end;end loop; for c in (select ‘ALTER TABLE ‘||TNAME||‘ ENABLE ALL TRIGGERS ‘ AS v_sql from tab where tabtype=‘TABLE‘) loop
 dbms_output.put_line(c.v_sql);
 begin
 execute immediate c.v_sql;exception when others then
 dbms_output.put_line(sqlerrm); end;end loop;end;/ 
commit;12345678910111213141516171819202122
--禁用脚本SET SERVEROUTPUT ON SIZE 1000000BEGINfor c in (select ‘ALTER TABLE ‘||TABLE_NAME||‘ DISABLE CONSTRAINT ‘||constraint_name||‘ ‘ as v_sql from user_constraints where CONSTRAINT_TYPE=‘R‘) loop
DBMS_OUTPUT.PUT_LINE(C.V_SQL);begin
 EXECUTE IMMEDIATE c.v_sql;
 exception when others then
 dbms_output.put_line(sqlerrm); end;end loop; for c in (select ‘ALTER TABLE ‘||TNAME||‘ DISABLE ALL TRIGGERS ‘ AS v_sql from tab where tabtype=‘TABLE‘) loop
 dbms_output.put_line(c.v_sql);
 begin
 execute immediate c.v_sql;exception when others then
 dbms_output.put_line(sqlerrm); end;
 end loop;
 end;
 / commit;
时间: 2024-07-30 20:28:10

Oracle操作用户和表空间的总结的相关文章

Oracle之用户和表空间

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 23.0px "PingFang SC" } p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; font: 19.0px "PingFang SC" } p.p3 { margin: 0.0px 0.0px 0.0px 0.0px; font: 19.0px "PingFang SC"; min-height: 26.0px

oracle创建用户、表空间、临时表空间、分配权限步骤详解

首先登陆管理员账号,或者有DBA权限的用户,接下来依次: --查询所有用户select * from dba_users;--创建新用户create user gpmgt identified by GPMGT; --查看所有用户所在表空间select username,default_tablespace from dba_users; --查询所有表空间路径select * from dba_data_files ;--创建一个表空间create tablespace GPMGT_DATA

Oracle查看用户所在表空间

查看当前用户所在表空间 select username,default_tablespace from user_users; 修改用户默认表空间 alter user 用户名 default tablespace 新表空间; 查看用户所拥有的角色 select * from user_role_privs; 查询数据库中有多少张表 select * from user_tables;

oracle创建用户,表空间及授权

1.创建临时表空间 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; 2.创建用户表空间 CREATE TABLESPACE test_data LOGGING DATAFILE 'C:\ORACLE\

oracle创建用户及表空间

第一步:创建临时表空间 CREATE TEMPORARY TABLESPACE DB_TEMP TEMPFILE 'D:\oracle\product\10.2.0\oradata1\orcl\DB_TEMP.DBF' SIZE 32M AUTOEXTEND ON NEXT 32M MAxSIZE UNLIMITED EXTENT MANAGEMENT LOCAL; 第二步:创建数据表空间 CREATE TABLESPACE finance LOGGING DATAFILE 'D:\oracle

Oracle创建用户、表空间并设置权限

代码: sqlplus /nolog conn / as sysdba //创建账号 create user techrpt_data identified by techrpt_data ; //创建临时表空间 create temporary tablespace TECHRPT_DATA_TEMP tempfile 'D:\ORACLE\ORADATA\ORCL\TECHRPT_DATA_TEMP.dbf' size 32m autoextend on next 32m maxsize 2

oracle删除用户和表空间

1.网站测试版本,需要备份本地数据,导入到服务器上.在服务器上创建了表空间和若干个用户.现在删除无用的用户 (1)查询出来所有的用户和对应的表空间:select username,default_tablespace from dba_users (2)删除某一个用户:drop user scsc0819 cascade;其中scsc0819是用户名 2.服务器上无效的表空间也需要删除. (1)查询出来所有的表空间名字和对应的文件名字:select  tablespace_name,file_n

oracle创建用户、表空间,并赋权

--创建表空间 create tablespace test_tps datafile 'D:\app\Administrator\oradata\orcl\test_tps.dbf' size 1500M autoextend on next 5M; --创建用户并制定表空间 create user test_tps identified by test_tps default tablespace test_tps; --赋权限 grant connect,resource to test_

Oracle 创建用户,表空间

1.首先,创建(新)用户: create user username identified by password; username:新用户名的用户名 password: 新用户的密码 也可以不创建新用户,而仍然用以前的用户,如:继续利用scott用户 2.创建表空间: create tablespace tablespacename datafile 'd:\data.dbf' size xxxm; tablespacename:表空间的名字 d:\data.dbf':表空间的存储位置 xx