代码编织梦想

创建表空间

-- 创建表空间
CREATE tablespace testspace   -- 创建名为testspace的表空间
datafile 'D:\testspace.dbf' -- 表空间存放在 'D:\testspace.dbf'
size 100m -- 表空间大小为 100m
autoextend on -- 表空间开启自动递增
next 10m -- 每次递增10m

创建用户

-- 创建用户(必须依托表空间,一个表空间下可建多个用户)
create user testuser --创建名为testuser的用户
identified by root -- 密码为root
default tablespace testspace -- 创建到名为testspace表空间下

创建用户时出现 【ORA-65096: 公用用户名或角色名无效】的错误,这里就需要注意下了:

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

CDB相当于操作系统,调用并管理各个PDB。PDB相当于真正提供业务需求的数据库实例。Oracle 12C或更高版本安装后只创建了CDB,需要自己生成相应的PDB。 Oracle 12C或更高版在安装时,默认创建为容器数据库。

解决方法:

查询到是说cdb创建用户是用户名前面必须要加上C##或c##,但是当我加上之后又出现了一个错误:

 > ORA-65048: 在插接式数据库 ORCLPDB 中处理当前 DDL 语句时出错
ORA-00959: 表空间 'TESTSPACE' 不存在

看了以下其他大神说,还是cdb的问题。查询以下现在的session:

sqlplus / as sysdba;
show con_name;

 这就导致了我在cdb创建了表空间但是pdb上面并没有这个表空间。由于cdb与pdb表空间结构不同,所以就出现了【ORA-00959: 表空间 'TESTSPACE' 不存在】的错误。

 再查看以下cdb数据库容器下的pdb

show pdbs;

如果结果为CDB&ROOT,则为容器状态(CBD),结果为ORCLPDB(这个PDB名字根据自己的实际情况而定,不是固定的),则为可插拔数据库(PDB)。

可以看到里面有个ORCLPDB,可以看到我现在的ORCLPDB的打开方式是可读写的,如果是mounted执行以下打开。

--启动相应pdb(orclpdb是我的pdb的名称)
 
alter pluggable database orclpdb open;

用navicat重新连接了一下这个可插拔数据库。 

 连接上PDB之后,创建用户也不许要加C##了

 给用户赋予修改表空间的权限

alter user testuser quota unlimited on testspace

在程序启动时mybatis报错:【表或视图不存在】,以下是错误的连接参数

url: jdbc:oracle:thin:@localhost:1521/ORCLPDB
username: system

此时是因为我没有使用我创建的用户进行连接,想着直接用权限较高的system就可以了,但是却报出了【表或视图不存在】这个错误,实际上username要使用自己创建的才行,不过还得给自己创建的用户添加以下权限,不然也会报错。

赋权sql:

-- 需要在system下进行赋权,我这里直接赋予dba权限
grant dba to testuser;

这样程序连接也不会又问题了。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/csdn100551/article/details/129681047

oracle 19c concepts(15):process architecture-爱代码爱编程

进程简介 进程是在操作系统中可以运行一系列步骤的机制。 该机制取决于操作系统。例如,Windows 上的一个 Oracle 后台进程是在某个进程内执行的一个线程。在 Linux 和 UNI

Oracle19c 安装-爱代码爱编程

首先,下载Oracle安装包的压缩文件 访问Oracle官网(https://www.oracle.com/index.html)下的数据库下载地址:https://www.oracle.com/database/technologies/oracle-database-software-downloads.html Oracle安装包已放入百度云网盘

在CentOS7.6下搭建Oracle19c RAC集群-爱代码爱编程

在CentOS7.6下搭建Oracle19c RAC集群 1.准备阶段1.1 虚拟环境准备1.2 Oracle版本包准备2.服务器配置阶段2.1.配置IP2.2.停止不相关服务2.3.配置服务器2.4.配置系统参数2.5.配置环境变量2.6.配置ASM共享磁盘2.7.配置用户互信3.grid图形界面安装4.database图形界面安装5.自定义创建

Linux下Oracle19C RAC通过Gateways(透明网关)连接Sql server数据库-爱代码爱编程

Linux下Oracle RAC通过Gateways(透明网关)连接Sql server数据库 文章目录 注意事项:实验环境:软件包下载:操作步骤:1、传输Gateways压缩包并解压得到gateways目录:2、进入gateways目录执行./runInstaller:3、进入gateways主目录查验initdg4msql.ora文件:4、复制g

云服务器centos8安装oracle19c-爱代码爱编程

原创不易,转载请注明出处 因为云服务器的centos是没有图形界面的,所以安装比较麻烦,刚好19c有本地rpm的安装方法,所以推荐用rpm安装。 首先到官网下载rpm包,然后上传到服务器。官网需要先注册账号,而且因国情原因下载很慢,我下载传到网盘了。 链接:https://pan.baidu.com/s/1Tw38GeKWqRWTnT

oracle中job的retry次数,Oracle 19c注意事项: DBMS_JOB 行为变化-爱代码爱编程

DBMS_SCHEDULER 是一种新的JOB调度形式,提供了功能更加强大和跟踪的功能,说是新是相对DBMS_JOB, schedure从10G时引入已经十多年, 用于替换DBMS_JOB, 如果你升级19c 时原来的库有dbms_job对象,会在preupgrade.jar中提示Warning JOB_TABLE_INTEGERITY. 不用担心,

oracle19c加密密钥文件,Oracle 19C CBD Active DataGuard Standby passwd file 注意事项 ORA-01017...-爱代码爱编程

在Oracle 19C CBD Active DataGuard搭建时基本上和11G 的ADG 搭建一样,该文章不做详细说明,我主要说一下我们19C 的passwd file 文件的引起ADG 无法搭建的情况。 Oracle 密码文件我们在以前的版本中一直记的是在 $OACLE_HOME/dbs 下,但19C 我们发现 数据库的密码文件默认存放在AS

cgroup限制oracle,Oracle 19c 升级迁移注意事项:INMEMORY JOINGROUP 创建的 ORA-38350 异常...-爱代码爱编程

在 Oracle 19c 的升级迁移中,必须要关注不同版本的变化,例如 SQL 写法的改变,特殊参数的设置,以避免应用迁移后的异常。这些改变有的来自功能性变化,有的则是BUG。 在 MOS 文档 2559321.1 中描述了这样一个情况:DB INMEMORY JOINGROUP 的创建,在 12c 中工作正常,但是在 18c 、19c 中却是出

vmware上搭建oracle19c RAC scanip、oracle12c scanip环境-爱代码爱编程

vmware上搭建oracle19c RAC scanip、oracle12c scanip环境 一、环境准备1.准备安装包及前期规划1.1 Linux系统1.2 Linux用户1.3 Oracle安装包1.4 系统工具安装包1.5 Oracle RAC IP规划2.虚拟机安装前准备2.1 虚拟机资源配置2.2 虚拟机网络配置2.3 ASM共享磁盘

Centos7静默安装Oracle19c ZIP 及修改端口-爱代码爱编程

Centos7静默安装Oracle19c 官方安装包下载路径(需要登录Oracle账号): https://www.oracle.com/database/technologies/oracle-database-software-downloads.html#19c 可选择windows/Linux平台对应的安装包,有ZIP和RPM两种方式的安装包,我

Oracle 19c ADG Swithover 切换手册-爱代码爱编程

作者 | JiekeXu 来源 | JiekeXu DBA之路(ID: JiekeXu_IT) 大家好,我是 JiekeXu,很高兴又和大家见面了,今天和大家一起来看看 Oracle 19c ADG Swithover 切换流程,欢迎点击上方蓝字关注我,标星或置顶,更多干货第一时间到达! 本文档主要是根据前面文档中搭建的 Orac

Oracle 19C 静默安装、补丁升级-爱代码爱编程

Oracle 19c(19.3) 单机数据库静默安装 一、环境介绍 操作系统:CentOS 7.4 数据库版本:Oracle database 19.3 主机名:oradb31 IP地址:192.168.1.31 安装目录:/opt/oracle/product/19.3/db_1 数据库名称:orcl 字符集:AL32UTF8 二、环境准备 2.1

Linux——虚拟机VM Centos8.5安装 Oracle 19c-爱代码爱编程

本文针对Centos8安装Oracle 19c 一、更新yum源 (root用户下) 在安装之前,建议先更新yum源: yum update -y 或者dnf update 二、安装相关依赖(root用户下) yum install -y binutils* compat-libstdc* elfutils-libelf* gcc* glibc*

【详细】oracle数据库安装教程--oracle database 19c_kino丶li的博客-爱代码爱编程

【详细】Oracle数据库安装教程–Oracle DataBase 19c Oracle Database 19c 是最新的长期版本,支持期限最长; 19.3 - 企业版(也包括标准版 2) 适用于WINDOWS X64位

oracle19c scott用户创建脚本(注意事项)_梦想家dba的博客-爱代码爱编程

脚本如下所示: -- 创建scott/tiger用户 -- CREATE USER scott IDENTIFIED BY tiger ; -- 为scott用户赋予权限 -- GRANT CONNECT,RESOURCE,UNLIMITED TABLESPACE TO scott; -- 删除数据表 DROP TABLE

oracle19c详细安装过程win10-爱代码爱编程

我的电脑是win10系统,看了一些视频和文章说oracle19c版本是目前比较稳定的,所以就官网下载了oracle19c版本。 一、下载前准备。 如果你的电脑之前安装过Oracle19c或其他版本,必须完全卸载 关闭任何杀毒软件:360、火绒等等;保险起见,win10及以上的系统最好也关闭系统的windows defender 。 如何关闭可以看