用户
- 登录SQL Plus
- 系统用户
- 使用系统用户登录
- 查看登录用户
- show user命令
- dba_users数据字典
- 启用Scott用户
1.登录SQL Plus
系统用户
- sys, system(sys权限高于system)
- sysman
- scott(默认密码是tiger)
使用system登录
[username/password] [@server] [as sysdba|sysoper]
首先是用户名和密码,其次,如果需要登录远程数据库,需要@+数据库名或者IP地址+服务端口号,如果需要以管理员身份登录,再添加 as sysdba 或者 as sysoper。
2.查看登录用户
show user;
可以查看当前登录用户。
desc dba_users;
可以查看dba_users中包含哪些字段,例如用户名,密码,账号状态,默认表空间等,查看所有用户名的语句如下:
select username from dba_users;
3.启用Scott用户
启用/锁定用户的语句
alter user username account unlock|lock;
表空间
- 表空间概述
- 数据库与表空间
- 查看用户表空间
- 创建、修改、删除表空间
1.表空间概述
数据库与表空间
表空间实际上是数据库的逻辑存储空间,可以把表空间理解为在数据库中开辟的一块空间,用于存放数据库的对象,一个数据库可以由多个表空间构成,Oracle中有很多优化都是由表空间来实现的
表空间与数据文件
表空间实际上是由一个或者多个数据文件构成的,数据文件的位置和大小可以由用户自定义,用户存储的一些表和数据库中的一些其他的对象都是存放在表空间的数据文件里的。
表空间的分类
- 永久表空间
一般用来存放数据库中一些需要永久存放的对象,比如某些表、视图和存储过程等内容。 - 临时表空间
主要用于存放一些数据库操作当中,中间执行的过程,之行结束之后,存放的内容就会被自动释放,不会进行永久保存。 - UNDO表空间
用于保存事务所修改的数据的旧址,即被修改之前的数据,可用于数据的回滚。
2.查看和管理用户的表空间
dba_tablespaces和user_tablespaces数据字典
同样可用desc dba_tablespaces;
来查看数据字典的字段内容。
select tablespace_name from dba_tablespaces;
可以查看其中的表空间。
dba_users和user_users数据字典
可以从这两个数据字典中查询用户所使用的表空间。比如
select default_tablespace,temporary_tablespace from dba_users where uaername='SYSTEM';
设置用户的默认或者临时表空间
可以通过以下语句设置用户的表空间:
ALTER USER username
DEFAULT|TEMPORARY
TABLESPACE tablespace_name;
创建表空间
可以通过以下语句创建表空间:
CREATE [TEMPORARY] TABLESPACE
tablespace_name
TEMPFILE|DATAFILE 'xx.dbf' SIZE xx;
永久表空间的数据文件可通过语句desc dba_data_files;
查看,临时表空间的数据文件可通过语句desc dba_temp_files;
查看。如select file_name from dba_data_files where tablespace_name='XXX';
修改(永久)表空间
修改表空间的状态:
ALTER TABLESPACE tablespace_name
ONLINE|OFFLINE;
当一个表空间被设置成脱机状态后就无法使用了。
表空间的状态可通过数据字典dba_tablespaces中的status字段查看。
如select status from dba_tablespaces where tablespace_name='XXX';
设置只读或者可读写状态:
ALTER TABLESPACE tablespace_name
READ ONLY|READ WRITE;
修改数据文件
向表空间中增加数据文件:
ALTER TABLESPACE tablespace_name
ADD DATAFILE 'xx.dbf' SIZE xx;
删除表空间中的数据文件:
ALTER TABLESPACE tablespace_name
DROP DATAFILE 'xx.dbf';
删除表空间
DROP TABLESPACE
tablespace_name [INCLUDING CONTENTS];