创建PDB表空间与用户(不创建通用用户)
Oracle12c中,增加了可插接数据库的概念,即PDB,允许一个数据库容器(CDB)承载多个可插拔数据库(PDB)。CDB全称为ContainerDatabase,中文翻译为数据库容器,PDB全称为PluggableDatabase,即可插拔数据库。在ORACLE 12C之前,实例与数据库是一对一或多对一关系(RAC):即一个实例只能与一个数据库相关联,数据库可以被多个实例所加载。而实例与数据库不可能是一对多的关系。当进入ORACLE 12C后,实例与数据库可以是一对多的关系。下面是官方文档关于CDB与PDB的关系图。
common user 和local user是和oracle 12c的新特性pluggable database(PDB)有关。在PDB中创建的用户就是local user。从上图可以看出,common user必须以大写或小写的c##开头。下面是官方文档User的关系图。
步骤:
1、安装,基本默认,默认安装会默认装一个PDB(orclpdb),
2、安装完之后登录,登录之后默认是CDB,创建CDB的表空间,(我试过如果单纯在PDB下创建表空间的话,之后创建用户无法指定表空间,意思是,CDB与PDB必须有相同名称的表空,才可以指定表空间,不然默认用的是TEMP与USERS);
>sqlplus sys/password as sysdba SQL> show con_name; SQL> select con_id,dbid,name,open_mode from v$pdbs; --查看目前有的PDB容器 --创建CDB临时表空间(如果使用默认的临时表空间TEMP可以忽略这步) SQL> create temporary tablespace wmstest_temp tempfile 'C:\app\Administrator\virtual\oradata\wmstest_temp.dbf' size 128m autoextend on next 128m maxsize 20480m extent management local; --创建CDB数据表空间(如果使用默认的表空间USERS可以忽略这步) SQL>create tablespace wmstest_data logging datafile 'C:\app\Administrator\virtual\oradata\wmstest_data.dbf' size 128m autoextend on next 128m maxsize 20480m extent management local;
3、创建需要使用的PDB,我不使用默认的PDB,通过Datebase Configuration Assistant 创建一个PDB(wmstestpdb),创建完之后可以使用em界面来创建表空间 用户及授权等。
通过em界面可以省事很多
4、如果不通过em界面的话,使用命令行的话,需要执行以下步骤
--切换到指定的库,方才创建的PDB是(WMSTESTPDB); SQL> alter session set container=WMSTESTPDB; -- 查看切换之后是否在PDB下,上一步会有显示,这一步纯粹无聊的 SQL> show con_name; SQL> select con_id,dbid,name,open_mode from v$pdbs; --如果是刚创建的PDB默认已经打开,不过可以执行startup命令确认下,反正如果已经打开的话也不会重复打开 SQL> startup; --创建临时表空间(与CDB同名,不同tempfile, 的文件即可),其实用EM界面还有更多可选参数 SQL> create temporary tablespace wmstest_temp tempfile 'C:\app\Administrator\virtual\oradata\wmstestpdb_temp.dbf' size 128m autoextend on next 128m maxsize 20480m extent management local; --创建数据表空间(与CDB同名,不同tempfile, 的文件即可) SQL> create tablespace wmstest_data logging datafile 'C:\app\Administrator\virtual\oradata\wmstestpdb_data.dbf' size 128m autoextend on next 128m maxsize 20480m extent management local; -- 1 此时是在PDB下哦,创建用户并制定表空间 -- WMSTEST_DATA ,WMSTEST_TEMP必须同时存在CDB与PDB中哦,不然会报错哦 SQL> create user wmstest identified by wms123 default tablespace WMSTEST_DATA temporary tablespace WMSTEST_TEMP; -- 2 使用默认的表空间(USERS,TEMP在CDB中默认存在有,并且新建的PDB也是默认存在的) SQL> create user wmstest identified by wms123 default tablespace USERS temporary tablespace TEMP; --给用户授予权限,授所有权限 SQL> grant all to wmstest;
其他的sql
--其他 --删除用户 SQL> drop user wmstest cascade; --删除表空间 SQL> DROP TABLESPACE wmstest_temp INCLUDING CONTENTS AND DATAFILES; SQL> DROP TABLESPACE wmstest_data INCLUDING CONTENTS AND DATAFILES; -- 查看表空间 SQL> select tablespace_name, file_id, file_name, round(bytes/(1024*1024),0) total_space from dba_data_files order by tablespace_name; -- 查看用户 SQL> select * from dba_users;
5 、使用PLSQL连接
配置
tnsnames.ora
# wmstest/wms123 wmstestpdb = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = IP )(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = WMSTESTPDB) ) )
如此可以连接并操作数据库了。
相关推荐
而在12c中,一个容器数据库(Container Database, CDB)可以包含多个PDB,每个PDB都是一个完整的逻辑数据库,拥有自己的用户、表空间和其他资源。 #### 二、连接到PDB并添加scott用户步骤详解 本节将详细介绍如何在...
Oracle 12c引入了一项重大创新,即可插拔数据库(PDB),这使得一个中央数据库容器(CDB)可以容纳多个独立的PDB,每个PDB都可以被视为一个独立的逻辑实体,拥有自己的数据文件、表空间和用户。这种架构提供了更高效...
在Oracle 12c数据库中,表空间管理、用户和角色、临时Undo是数据库管理的关键组成部分。以下是对这些内容的详细解释和操作方法: 一、创建表空间 在Oracle 12c中,创建表空间主要涉及到声明一个新的逻辑区域,用于...
Oracle创建表空间用户及授权
Oracle数据库12c新特性v2,提供了关于12c新版本特性的介绍!
Oracle Database 12c引入了多租户架构,其中包含容器数据库(Container Database, CDB)和可插拔数据库(Pluggable Database, PDB)的概念。在这一架构下,参数文件的管理和配置相比之前的版本有了显著的变化。 - **CDB...
如果不指定,默认情况下,Oracle 数据库将创建一个小文件表空间,并将所有未指定不同永久表空间的非 SYSTEM 用户分配到这个表空间。 #### 四、总结 本文档深入介绍了在 Oracle 12c 中创建和删除 PDB 的多种技术和...
在Oracle 12c中,可以创建具有默认表空间的用户,例如: ```sql CREATE USER username IDENTIFIED BY password DEFAULT TABLESPACE users TEMPORARY TABLESPACE temp; ``` 接着可以赋予用户相应的权限和角色。 修改...
Oracle 12C 中引入了 Container Database(CDB)和 Pluggable Database(PDB)的概念,CDB 是一个容器,PDB 是一个独立的数据库,可以与 CDB 共享资源。以下是 Oracle 12C CDB、PDB 的常用管理命令。 查看 PDB 信息...
《Oracle 12c数据库基础教程》教学课件—03Oracle数据库管理工具.pdf《Oracle 12c数据库基础教程》教学课件—03Oracle数据库管理工具.pdf《Oracle 12c数据库基础教程》教学课件—03Oracle数据库管理工具.pdf《Oracle...
- 当在PDB中创建新用户并分配表空间时,必须确保没有其他PDB存在或所有PDB具有相同的表空间,否则将导致错误。如果在PDB与CDB具有相同表空间的情况下为CDB用户分配表空间,则CDB的表空间分配不会影响PDB的表空间。 -...
#### 三、多租户数据库用户 ##### 3.1 公用用户和本地用户 多租户数据库引入了两类用户:公用用户(common user)和本地用户(local user)。 - **公用用户**:公用用户存储在所有容器中(root和所有PDBs)。在...
docker-oracle12c, 用于Oracle数据库 12c的Docker 映像 目标提供一种简单的方法来构建轻量级的Docker 映像,用于 Oracle数据库。只要运行数据库,跳过安装和配置的复杂性。特性如果已经创建并启动了一个新数据库或者...
在Oracle数据库12c 12.2.0.1版本及更高版本中,用户可能会遇到一个常见的问题,那就是SYSAUX表空间过快增长。SYSAUX表空间是Oracle数据库中的一个重要组成部分,它存储了系统级别的对象和服务,包括数据字典、索引、...
每个PDB都包含自己的数据字典、用户表空间等。 CDB与PDB之间的关系可以用下面的图形来表示: ``` +------------+ +--------------+ | CDB Root |------------| PDB1 | | | +--------------+ | | +--------------+ ...
- **多租户架构**:12c引入了容器数据库(Container Database, CDB)的概念,支持在一个物理数据库中创建多个可插拔数据库(Pluggable Database, PDB),提高了资源利用效率和管理的灵活性。 - **性能优化**: - 自动...
Oracle 数据库 12c 各版本介绍及功能比较 Oracle 数据库 12c 是 Oracle 公司推出的最新版本的数据库管理系统,提供多种企业版选件来满足客户对各种领域(性能和可用性、安全性和合规性、数据仓储和分析、非结构化...
Oracle 12c 数据库教程涵盖了数据库的基础概念、体系架构、进程结构、内存管理、数据库管理、网络配置、用户和权限管理、存储结构、并发处理、还原数据管理、数据库审计、数据移动、性能管理和备份恢复等多个方面。...
解决 Oracle 临时表空间满的问题需要通过查看当前数据库的默认临时表空间、查看当前临时表空间的大小、创建新的临时表空间、将新建的临时表空间设置为数据库的默认临时表空间、删除原来的临时表空间、创建新的临时表...