oracle12c创建表空间、创建用户、创建权限

目录

1.基本概念

1.1.关于账号的概念

1.2.关于pdb和cdb的概念

3.创建用户

4.给用户创建权限

5.综合练习(很重要.正在写...)

6.参考资料


1.基本概念

1.1.关于账号的概念

        在安装Oracle时,你需要记住设置的“全局数据库名”(默认为orcl) 和 口令,在以两种方式登录时:

用户名: sys(超级用户==sysdba) / system(管理员用户)Sys和system区别在于system不能创建表空间

system默认口令:manager

sys默认默认:change_on_install

使用SQL Plus登录数据库时,system使用密码manager可直接登录。

但如果是sys用户,密码必须加上as sysdba,即完整密码为:change_on_install as sysdba

如果是用工具Oracle SQL Developer登录sys用户,那么需要先用sqlplus登录sys,然后修改密码,之后就用这个密码连接既可以

修改命令:alter user sys identified by 123456

1.2.关于pdb和cdb的概念

       Oracle12c 中,增加了可插接数据库的概念,即PDB,允许一个数据库容器(CDB 全称:Container Database)承载多个可插拔数据库(PDB 全称:Pluggable Database)。cdb相当于操作系统,调用并管理各个pdb。pdb相当于真正提供业务需求的数据库实例。我们可以用sqlplus命令登录sys用户查询一下:

select  name , open_mode from v$pdbs;

可以看到默认创建了两个pdb可插拨数据库:
NAME                           OPEN_MODE
------------------------------ -----------------------
PDB$SEED                       READ ONLY
PDBORCL                        READ WRITE

可以看到有两个pcd数据库。

oracle 12c安装后还创建了cdb。

2.创建表空间

创建表空间是分CDB下的表空间和PDB下的表空间的。

查看表空间SQL如下:

select tablespace_name from dba_tablespaces; 

创建数据表空间SQL如下:

create tablespace user_data  -- 表空间名
datafile 'D:\APP\ORACLE\ORADATA\ORCL\bamboo_data.DBF' -- 表空间存储文件位置
size 50m  -- 文件大小
autoextend on  
next 50m maxsize 20480m  
extent management local;

创建临时数据表空间SQL如下:

create temporary tablespace user_temp  
tempfile 'D:\APP\ORACLE\ORADATA\ORCL\bamboo_temp.dbf'
size 50m  
autoextend on  
next 50m maxsize 20480m  
extent management local;

指令

说明

例子

create tablespace xx

创建表空间,表空间名称为xx

 

logging/nologging

生成日志/不生成日志

 

datafile  xx.dbf size  mmM

数据文件的具体位置和数据文件大小,如果有多个文件,可以用逗号隔开,但是每个文件都需要指明大小.单位以指定的单位为准如 5M 或 500K。

 

 

 

 

删除表空间SQL如下:

drop tablespace user_temp including contents;-- 同时删除文件

查看表空间的所在路径SQL:

select * from dba_data_files

(start)

FILE_NAME

文件名

D:\APP\ORACLE\ORADATA\ORCL\SYSTEM01.DBF

FILE_ID

文件ID

1

TABLESPACE_NAME

表空间名

SYSTEM

BYTES

字节

838860800(B) = 800(MB)  

BLOCKS

102400

STATUS

状态

AVAILABLE

RELATIVE_FNO

相对文件编号

1

AUT  

 

YES

MAXBYTES

最大字节

3.4360E+10

MAXBLOCKS

最大块

4194302         

INCREMENT_BY

增量

1280  

USER_BYTES

使用字节

837812224      

USER_BLOCKS

使用块

102272

ONLINE_

在线

SYSTEM

(end)

3.创建用户

创建用户SQL如下:

create user c##bamboo identified by **** -- 用户名和密码
default tablespace user_data  -- 设置默认表空间
temporary tablespace user_temp; -- 设置默认临时表空间

因为我用的数据库是12c,所以用户名前面要加c##,想知道原因请看:

https://blog.csdn.net/wangsimiao118/article/details/78818836

那么要想创建的用户不需要加c##,那就是要求数据库不能为CDB。也就是要连接PDB,只有PDB中的数据库创建的时候才能不加C##。

怎么查数据库是不是CDB呢,如下语句:

select CDB from v$database;

如果得到的结果为YES,那么就是CDB的数据库,否则,则不是。

要不想创建数据库的时候不加c##,我们可以重新创建数据库,打开

Database Configuration Assistant工具。

去掉红框里的勾选就可以了。

4.给用户创建权限

给用户权限SQL如下:

grant connect,resource,dba to username;

5.综合练习(很重要.正在写...)

综合上面的知识,我们来创建一个PDB,然后通过这个PDB 去创建表空间和创建用户、给用户权限,然后通过这个用户去连接pdb,然后创建表。

假设已经安装了oracle12c

(1)现在我们用cmd命令行开始登陆oracle

sqlplus

输入用户 sys (我们用这个登陆)

输入密码:change_on_install as sysdba

登陆成功!如下图示:

可以查一下当前数据库

select name from v$database;

当前数据库为:ORCL

查看当前数据库是不是CDB数据库

select CDB from v$database;

当前数据库是CDB数据库。

查当前CDB有几个PDB:

select  name , open_mode from v$pdbs;

两个:一个是默认的PDBORCL,另一个是PDB的模板PDB$SEED(创建PDB的时候会用到PDB$SEED)

(2)创建PDB

6.参考资料

1.https://blog.csdn.net/dev_csdn/article/details/79459017

2.https://www.jb51.net/article/106497.htm

 

 

 

 

 

 

 

 

 

  • 7
    点赞
  • 79
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Hi竹子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值