Oracle:表空间和创建用户
表空间:
oracle数据库有很多表空间,一个表空间对应一个数据文件。(表空间概念就相当于mysql中的数据库概念)
oracle在创建用户的时候会指定用户的默认表空间,这样此用户在创建表时若不指定表空间就会使用默认表空间,表中的数据会存到对应的表空间数据文件。
--查询数据库
select * from v$database;
--查询表空间
select * from v$tablespace;
--创建表空间TEST,对应文件为TEST.DBF,初始大小1G,自动增长,最大尺寸为10G。
create tablespace test datafile 'D:\oracle\oradata\orcl\TEST.DBF' size 1G AUTOEXTEND ON MAXSIZE 10G;
--临时表空间
create temporary tablespace test_tmp tempfile 'D:\oracle\oradata\orcl\TEST_TMP.DBF' size 512M AUTOEXTEND ON MAXSIZE 5G;
--表空间文件大小如果固定,往里写满了数据就会报错。
--打开表空间文件自动增长,最大大小不超过10GB
alter database datafile 'D:\oracle\oradata\orcl\TEST.DBf' AUTOEXTEND ON MAXSIZE 10G;
--查看表空间信息(名称,大小M,是否自动扩大,数据文件路径)
select tablespace_name, bytes/1024/1024, autoextensible, file_name from dba_data_files;
--查看表空间文件剩余空间
select tablespace_name, bytes/1024/1024 from dba_free_space;
--删除表空间和数据文件
drop tablespace test including contents and datafiles;
用户:
要连接操作oracle数据库需要指定用户名,密码,连接类型:
sqlplus 用户名 as 连接类型
-- 会提示输入密码,输入就建立了数据库连接
oracle在安装好后默认有一些用户,如sys和system(默认表空间SYSTEM),密码为安装时指定的密码。
--查看用户
select * from dba_users; --所有用户
select * from user_users; --当前用户
--新建用户:
create user c##spark identified by 123456a default tablespace test temporary tablespace temp;
--给用户添加权限:
grant connect,resource,dba to spark;
grant all to wmstest; --授予所有权限,未测试
-- grant create session to spark; ??
--删除用户,cascade表示删除其下所有关联的数据,若是空用户不用加,非空用户不加会删除失败
drop user spark cascade;
更改用户默认表空间:
alter user spark default tablespace test temporary tablespace test_tmp;