oracle创建用户一般是使用dba账号登录数据库,然后创建表空间->临时表空间->创建用户->用户授权
一下的操作均需要在DBA账户下才可以执行
1.创建表空间
1.1查询表空间
创建表空间可以先查询一下现有表空间位置,照猫画虎
-- 查询表空间位置
SELECT * FROM DBA_DATA_FILES;
知道现有表空间的位置之后我们就可以把创建的表空间文件和现有文件放在一起,因为是和现有的文件一下所以不用担心路径不存在的问题
1.2创建表空间
--创建表空间
create tablespace MRDUAN
datafile '/data/u01/app/oracle/oradata/MRDUAN.dbf'
size 1024M
AUTOEXTEND ON;
2.创建临时表空间
-
如果不创建则默认为temp临时表空间
-
临时表空间用来管理数据库排序操作以及用于存储临时表、中间排序结果等临时对象,当ORACLE里需要用到SORT的时候,并且当PGA中sort_area_size大小不够时,将会把数据放入临时表空间里进行排序。像数据库中一些操作: CREATE INDEX、 ANALYZE、SELECT DISTINCT、ORDER BY、GROUP BY、 UNION ALL、 INTERSECT、MINUS、SORT-MERGE JOINS、HASH JOIN等都可能会用到临时表空间。当操作完成后,系统会自动清理临时表空间中的临时对象,自动释放临时段。这里的释放只是标记为空闲、可以重用,其实实质占用的磁盘空间并没有真正释放。这也是临时表空间有时会不断增大的原因。
-
临时表空间存储大规模排序操作(小规模排序操作会直接在RAM里完成,大规模排序才需要磁盘排序Disk Sort)和散列操作的中间结果.它跟永久表空间不同的地方在于它由临时数据文件(temporary files)组成的,而不是永久数据文件(datafiles)。临时表空间不会存储永久类型的对象,所以它不会也不需要备份。另外,对临时数据文件的操作不产生redo日志,不过会生成undo日志。
-
创建临时表空间或临时表空间添加临时数据文件时,即使临时数据文件很大,添加过程也相当快。这是因为ORACLE的临时数据文件是一类特殊的数据文件:稀疏文件(Sparse File),当临时表空间文件创建时,它只会写入文件头部和最后块信息(only writes to the header and last block of the file)。它的空间是延后分配的.这就是你创建临时表空间或给临时表空间添加数据文件飞快的原因。
2.1创建临时表空间
--创建用户
CREATE USER MRDUAN IDENTIFIED BY 654321
ACCOUNT UNLOCK
DEFAULT TABLESPACE MRDUAN
TEMPORARY TABLESPACE MRDUAN_TEMP;
2.2查询临时表空间
--查询用户的临时表空间
SELECT USERNAME, TEMPORARY_TABLESPACE FROM DBA_USERS;
3.创建用户
CREATE USER MRDUAN IDENTIFIED BY 654321
ACCOUNT UNLOCK
DEFAULT TABLESPACE MRDUAN
TEMPORARY TABLESPACE MRDUAN_TEMP;
4.用户授权
- CONNECT 登录权限
- RESOURCE 创建表等权限
GRANT CONNECT,RESOURCE TO MRDUAN;
如果是dba用户,需要将dba权限授权给用户
--授权为管理员
GRANT DBA TO MRDUAN;
修改用户密码
注意需要在DBA用户下执行才可以
--修改用户密码
ALTER USER MRDUAN IDENTIFIED BY 123456;
参考链接:https://www.cnblogs.com/kerrycode/p/4006840.html
参考链接:https://www.cnblogs.com/rocker-pg/p/7767672.html
参考链接:https://www.cnblogs.com/chbyiming-bky/p/8949782.html