您的位置 首页 > 娱乐休闲

「AWEI」Oracle12c初体验之新建数据库和用户并连接 oracle数据库如何使用

ORACLE 12C新特性——CDB与pdb

Oracle 12C引入了CDB与PDB的新特性,在ORACLE 12C数据库引入的多租用户环境(Multitenant Environment)中,允许一个数据库容器(CDB)承载多个可插拔数据库(PDB)。CDB全称为Container Database,中文翻译为数据库容器,PDB全称为Pluggable Database,即可插拔数据库。在ORACLE 12C之前,实例与数据库是一对一或多对一关系(RAC):即一个实例只能与一个数据库相关联,数据库可以被多个实例所加载。而实例与数据库不可能是一对多的关系。当进入ORACLE 12C后,实例与数据库可以是一对多的关系。下面是官方文档关于CDB与PDB的关系图。

CDB组件(Components of a CDB)

一个CDB数据库容器包含了下面一些组件:

ROOT组件

ROOT又叫CDB$ROOT, 存储着ORACLE提供的元数据和Common User,元数据的一个例子是ORACLE提供的PL/SQL包的源代码,Common User 是指在每个容器中都存在的用户。

SEED组件

Seed又叫PDB$SEED,这个是你创建PDBS数据库的模板,你不能在Seed中添加或修改一个对象。一个CDB中有且只能有一个Seed. 这个感念,个人感觉非常类似SQL SERVER中的model数据库。

PDBS

CDB中可以有一个或多个PDBS,PDBS向后兼容,可以像以前在数据库中那样操作PDBS,这里指大多数常规操作。

这些组件中的每一个都可以被称为一个容器。因此,ROOT(根)是一个容器,Seed(种子)是一个容器,每个PDB是一个容器。每个容器在CDB中都有一个独一无二的的ID和名称。

特别说明:Oracle数据库的结构是一个数据库实例下有许多用户,每一个用户有自己的表空间,即每一个用户相当于MySQL中的一个数据库。Oracle 12c的数据库,安装之后建user时才知道oracle12c 有一个很大的变动就是引入了pdb可插入数据库,而且在cdb中只能创建c##或者C##开头的用户,只有在pdb数据库中才能创建我们习惯性命名的用户,Oracle称之为Local User,前者称之为Common User;

先来熟悉Oracle 12c CDB与PDB之间的切换:

Oracle 12c 开始支持 PLUGGABLE DATABASE,并且提供了一个方法在CDB和PDB之间切换。

首先,使用 show pdbs 可以确认当前有哪些PDB?

上图中 PDB$SEED 并不是一个 PDB 而是一个 PDB的模板,状态始终是 READ ONLY。ORCLMIX是一个PDB。

其次,切换到ORCLMIX:

最后,从PDB切回CDB:

接着下来,打开ORCLMIX 插接式数据库:

切换回 ORCLMIX 并创建用户授权DBA;

这里你也可以登录sql developer工具来创建用户:

进去创建连接:

创建新用户:

先把之前建立的用户删掉;

创建用户之前 先创建表空间和临时表空间

-- admin temp

create temporary tablespace admin _temp

tempfile 'F:\oracle12c\orcl\oradata\orcl\ admin _;

size 50m

autoextend on

next 50m maxsize 20480m

extent management local;

--admin data

create tablespace admin _data

logging

datafile 'F:\oracle12c\orcl\oradata\orcl\ admin _da;

size 50m

autoextend on

next 50m maxsize 20480m

extent management local;

创建用户 其他用户->右键创建用户

到此pdb数据库用户创建完成,赶快去sql developer去体验吧!

至此 新用户创建完毕 !

赶快用JDBC 体验下 连接数据库的成就感吧!

DBCA方式创建数据库

此处省去两部 笔者忘记截屏了 ,之后两步直接下一步就可以了

到此,我们成功的新增加了一个数据库-CDB名:mixims PDB名:ORCLMIX

使用JDBC连接数据库

先找到oracle的数据库驱动:

复制到web项目中:

添加到libraries:

创建测试代码:

出现如下错误:

解决办法如下:

首先,进入到oracle 主目录下:..\product\12.1.0\dbhome_1\NETWORK\ADMIN

找到,并打开,在其中加入:

ORCLMIX =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = orclmix) #pdb的db_name

)

)

)

其次,修改jdbc连接代码:

connection=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521/orclmix","admin","admin");

恭喜你 连接成功!

赶快使用JDBC 去实现数据库信息的增删改查吧!

本号所有文章都经笔者亲自测验后整理成稿,期间耗费了很多精力,如果有朋友想收录自己的博客中请联系笔者「垒码大叔」;

初入IT世界的小白,欢迎大神留言交流,你的互动,是我成长的动力;

如果觉得分享内容还不错,就推荐到你的朋友圈吧,让更多人一起交流和分享;

责任编辑: 鲁达

1.内容基于多重复合算法人工智能语言模型创作,旨在以深度学习研究为目的传播信息知识,内容观点与本网站无关,反馈举报请
2.仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证;
3.本站属于非营利性站点无毒无广告,请读者放心使用!

“oracle如何附加数据库,oracle如何创建数据库,如何删除oracle数据库,如何安装oracle数据库”边界阅读