创建表空间
create tablespace test datafile 'D:\TEST01.ora' size 100M;--分配100M空间
调整表空间大小
alter database datafile 'D:\TEST01.ora' resize 200M;--将表空间扩展至200M
alter database datafile 'D:\TEST01.ora' autoextend on next 10M maxsize 300M;--表空间自动扩展,每次扩展10M,最大扩展至300M。
创建用户
create user test identified by test01;
给用户授权
如果创建完用户登录时提示 ora-01045 user USERNAME lacks CREATE SESSION privilege;logon denied。说明没有创建session的权限,需要授权。
grant create session,create table,unlimited tablespace to test;--还可以授权 select insert 等等...
解锁账户
先用有dba权限的账户登录 ,或者在命令行 sqlplus /nolog 然后 connect / as sysdba 连接数据库
然后 alter user test account unlock; --给账户解锁。
5.查询表空间使用情况
SELECT UPPER (F.TABLESPACE_NAME) "表空间名",
D.TOT_GROOTTE_MB "表空间大小(M)",
D.TOT_GROOTTE_MB - F.TOTAL_BYTES "已使用空间(M)",
TO_CHAR (ROUND ((D.TOT_GROOTTE_MB - F.TOTAL_BYTES) / D.TOT_GROOTTE_MB * 100, 2), '990.99') "使用比",
F.TOTAL_BYTES "空闲空间(M)",
F.MAX_BYTES "最大块(M)"
FROM ( SELECT TABLESPACE_NAME,
ROUND (SUM (BYTES) / (1024 * 1024), 2) TOTAL_BYTES,
ROUND (MAX (BYTES) / (1024 * 1024), 2) MAX_BYTES
FROM SYS.DBA_FREE_SPACE
GROUP BY TABLESPACE_NAME) F,
( SELECT DD.TABLESPACE_NAME,
ROUND (SUM (DD.BYTES) / (1024 * 1024), 2) TOT_GROOTTE_MB
FROM SYS.DBA_DATA_FILES DD
GROUP BY DD.TABLESPACE_NAME) D
WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME
ORDER BY 1 ;