Oracle - 数据库的实例、表空间、用户、表之间关系
Oracle是一种广泛使用的关系型数据库管理系统,它具有高性能、高可靠性、高安全性等特点。1Oracle数据库的结构和组成是一个复杂而又有趣的话题,本文将介绍Oracle数据库的四个基本概念:数据库、实例、表空间和用户,以及它们之间的关系和作用。
数据库
数据库是指存储在磁盘上的一系列物理文件,这些文件包括数据文件、控制文件、联机日志文件、参数文件等,它们记录了数据库的数据和元数据。2数据库是Oracle数据库的核心,它是数据的持久化存储和管理的基础。
数据库的名称是由全局数据库名(Global Database Name)决定的,它是数据库的唯一标识,一般不会修改。全局数据库名由数据库名(DB_NAME)和域名(DB_DOMAIN)组成,例如:orcl.example.com。全局数据库名在安装Oracle数据库时就要指定,它会写入控制文件和数据字典中,也会影响到数据库的连接和访问。
实例
实例是指在内存中分配的一块共享内存区域(SGA)和一组后台进程(或线程),它们用于访问和控制数据库。3实例是Oracle数据库的运行时环境,它是数据库的动态部分,它可以启动和关闭,也可以有多个实例同时运行。
实例的名称是由实例名(Instance Name)决定的,它也叫做系统标识符(SID),它是实例的唯一标识,一般与数据库名相同。4实例名是由参数instance_name决定的,它会写入参数文件中,也会影响到数据库的连接和访问。
数据库和实例的关系
数据库和实例是Oracle数据库的两个重要组成部分,它们之间有着密切的关系。5一般来说,一个数据库只能被一个实例访问,这种模式叫做单实例数据库(Single Instance Database)。但是,在某些情况下,一个数据库可以被多个实例访问,这种模式叫做多实例数据库(Multi Instance Database),也叫做Oracle Real Application Clusters(RAC)。RAC是Oracle数据库的一种高可用性和高性能的解决方案,它可以实现数据库的负载均衡和故障转移。
表空间
表空间是数据库的逻辑划分,它是一组数据文件的集合,用于存储数据库对象,如表、索引、视图等。6表空间是数据库的组织和管理的单位,它可以根据不同的用途和需求进行划分,例如:系统表空间(SYSTEM)用于存储系统对象,用户表空间(USERS)用于存储用户对象,临时表空间(TEMP)用于存储临时数据等。
表空间的名称是由表空间名(Tablespace Name)决定的,它是表空间的唯一标识,可以由用户自定义。表空间的创建和管理是由SQL语句实现的,例如:
–创建表空间 CREATE TABLESPACE db_test DATAFILE ‘D:\oracle\product\10.2.0\userdata\db_test.dbf’ SIZE 50M7 AUTOEXTEND ON;
–查看表空间 SELECT TABLESPACE_NAME, STATUS, CONTENTS FROM DBA_TABLESPACES;
–删除表空间 DROP TABLESPACE db_test INCLUDING CONTENTS AND DATAFILES;
用户
用户是数据库的访问者和使用者,它是一种数据库对象,用于标识数据库的登录者和拥有者。用户可以拥有自己的数据库对象,也可以访问其他用户的数据库对象,这取决于用户的权限和角色。用户是数据库的安全和控制的基础,它可以实现数据库的身份认证和访问控制。
用户的名称是由用户名(User Name)决定的,它是用户的唯一标识,可以由用户自定义。用户的创建和管理是由SQL语句实现的,例如:
–创建用户 CREATE USER utest IDENTIFIED BY utestpwd DEFAULT TABLESPACE db_test TEMPORARY TABLESPACE temp;
–查看用户 SELECT USERNAME, DEFAULT_TABLESPACE, TEMPORARY_TABLESPACE FROM DBA_USERS;
–删除用户 DROP USER utest CASCADE;
表
表是数据库的基本对象,它是一种二维的数据结构,用于存储数据。表由行和列组成,每一行代表一条记录,每一列代表一个属性。表是数据库的数据源和目标,它是数据库操作的对象和结果。
表的名称是由表名(Table Name)决定的,它是表的唯一标识,可以由用户自定义。表的创建和管理是由SQL语句实现的,例如:
–创建表 CREATE TABLE emp ( empno NUMBER(4) PRIMARY KEY, ename VARCHAR2(10), job VARCHAR2(9), mgr NUMBER(4), hiredate DATE, sal NUMBER(7,2), comm NUMBER(7,2), deptno NUMBER(2) REFERENCES dept(deptno) );
–查看表 SELECT TABLE_NAME, TABLESPACE_NAME FROM USER_TABLES;
–删除表 DROP TABLE emp;
表空间、用户和表的关系
表空间、用户和表是数据库的三个重要对象,它们之间有着密切的关系。一般来说,一个用户可以拥有多个表空间,一个表空间可以包含多个表,一个表只能属于一个表空间和一个用户。8这种关系可以用下图表示:
表空间、用户和表的关系决定了数据库的存储和访问的方式。例如:
–用户utest在表空间db_test中创建了表emp CREATE TABLE utest.emp ( empno NUMBER(4) PRIMARY KEY, ename VARCHAR2(10), job VARCHAR2(9), mgr NUMBER(4), hiredate DATE, sal NUMBER(7,2), comm NUMBER(7,2), deptno NUMBER(2) REFERENCES dept(deptno) ) TABLESPACE db_test;
–用户utest可以直接访问自己的表emp SELECT * FROM emp;
–用户scott可以访问utest的表emp,如果有权限的话 SELECT * FROM utest.emp;
举例
我们通过一个生动的例子来理解Oracle数据库中实例、表空间、用户和表的关系。
假设我们正在建设一个城市(Oracle数据库)。这个城市有许多建筑物(数据文件),包括住宅、商店、办公楼等。这些建筑物都分布在不同的街区(表空间)中。
现在,我们需要一位市长(实例)来管理这个城市。市长负责协调城市的运作,包括维护公共设施、规划城市发展等。
在这个城市中,我们有许多居民(用户)。每个居民都在城市中拥有自己的房产(表)。他们可以在自己的房产中存储自己的物品(数据),也可以访问其他居民的房产(如果被授权的话)。
例如,我们有一个名叫Alice
的居民,她在ResidentialArea
街区中拥有一栋房子,这栋房子就是一个表,名叫Alice_House
。在这个表中,Alice存储了她的一些个人物品,比如家具、电器等。
同时,我们还有一个名叫Bob
的居民,他在CommercialArea
街区中拥有一家商店,这家商店也是一个表,名叫Bob_Shop
。在这个表中,Bob存储了他出售的一些商品信息。
在这个例子中,我们可以看到,实例(市长)是用来管理整个数据库(城市)的,表空间(街区)是用来组织数据文件(建筑物)的,用户(居民)是数据库的使用者,他们在表空间中创建和管理自己的表(房产)。希望这个例子能帮助你更好地理解Oracle数据库中实例、表空间、用户和表的关系。如果你还有其他问题,欢迎随时向我提问。我会尽我最大的努力来帮助你。谢谢你的理解和耐心。。
总结
本文介绍了Oracle数据库的四个基本概念:数据库、实例、表空间和用户,以及它们之间的关系和作用。通过理解这些概念,可以更好地理解和使用Oracle数据库,也可以更好地进行数据库的设计和优化。希望本文对你有所启发和帮助。
相关文章:
Oracle - 数据库的实例、表空间、用户、表之间关系
Oracle是一种广泛使用的关系型数据库管理系统,它具有高性能、高可靠性、高安全性等特点。1Oracle数据库的结构和组成是一个复杂而又有趣的话题,本文将介绍Oracle数据库的四个基本概念:数据库、实例、表空间和用户,以及它们之间的关…...

Java面试项目推荐,异构数据源数据流转服务DatalinkX
前言 作为一个年迈的夹娃练习生,每次到了春招秋招面试实习生时都能看到一批简历,十个简历里得有七八个是写商城或者外卖项目。 不由得想到了我大四那会,由于没有啥项目经验,又想借一个质量高点的项目通过简历初筛,就…...
一、Vue3组合式基础[ref、reactive]
一、ref 解释:ref是Vue3通过ES6的Proxy实现的响应式数据,其与基本的js类型不同,其为响应式数据,值得注意的是,reactive可以算是ref的子集,ref一般用来处理js的基本数据类型如整型、字符型等等(也可以用来处…...

unity网页远程手机游戏Inspector面板proxima
https://www.unityproxima.com/docs...

聊聊spring事务12种场景,太坑了
前言 对于从事java开发工作的同学来说,spring的事务肯定再熟悉不过了。 在某些业务场景下,如果一个请求中,需要同时写入多张表的数据。为了保证操作的原子性(要么同时成功,要么同时失败),避免数…...
mysql 数据查重与查重分页
起因是公司的crm录入不规范,有重复数据。 之后考虑到需要手动处理,首先需要自动找出重复的数据 查重要求: 存在多个不允许重复的字段,任一字段重复,则判断为同一个客户。划分到同一重复组中。 查重sql如下 SELECT C…...
微服务(12)
目录 56.k8s是怎么进行服务注册的? 57.k8s集群外流量怎么访问Pod? 58.k8s数据持久化的方式有哪些? 59.Relica Set和Replication Controller之间有什么区别? 60.什么是Service Mesh(服务网格)&#x…...

iOS实时查看App运行日志
目录 一、设备连接 二、使用克魔助手查看日志 三、过滤我们自己App的日志 📝 摘要: 本文介绍了如何在iOS iPhone设备上实时查看输出在console控制台的日志。通过克魔助手工具,我们可以连接手机并方便地筛选我们自己App的日志。 Ǵ…...

【计算机毕业设计】SSM健身房管理系统
项目介绍 本项目为后台管理系统,主要分为管理员与用户两种角色; 登录页面,管理员首页,会员增删改查,教练增删改查,运动器材管理等功能。 用户角色包含以下功能: 用户登录页面,用户首页,选择课程,选择教练等功能。 环境需要 1.运行环境&a…...

嵌入式Linux之MX6ULL裸机开发学习笔记(IMX启动方式-启动设备的选择)
一,硬件启动方式选择 1.启动方式的选择 6ull支持多种启动方式。 比如可以从 SD/EMMC、 NAND Flash、 QSPI Flash等启动。 6ull是怎么支持多种外置flash启动程序的。 1.启动方式选择: BOOT_MODE0 and BOOT_MODE1,这两个是两个IO来控制的,…...
K8S Ingress-Nginx导出TCP端口
ingress-nginx导出TCP端口 Exposing TCP and UDP services - Ingress-Nginx Controllerhttps://github.com/kubernetes/ingress-nginx/blob/main/docs/user-guide/exposing-tcp-udp-services.md helm upgrade ingress-nginx导出redis 6379端口(这种方式最简单&…...

索引类型-哈希索引
一. 前言 前面我们简单介绍了数据库的B-Tree索引,下面我们介绍另一种索引类型-哈希索引。 二. 哈希索引的简介 哈希索引(hash index) 基于哈希表实现,只有精确匹配索引所有列的查询才有效。对于每一行数据,存储引擎都会对所有索引列计算一个…...

uniapp中组件库的Textarea 文本域的丰富使用方法
目录 #平台差异说明 #基本使用 #字数统计 #自动增高 #禁用状态 #下划线模式 #格式化处理 API #List Props #Methods #List Events 文本域此组件满足了可能出现的表单信息补充,编辑等实际逻辑的功能,内置了字数校验等 注意: 由于…...
LLM、AGI、多模态AI 篇三:微调模型
文章目录 系列LLM的几个应用层次Lora技术其他微调技术FreezeP-TuningQLoRA指令设计构建高质量的数据微调步骤系列 LLM、AGI、多模态AI 篇一:开源大语言模型简记 LLM、AGI、多模态AI 篇二:Prompt编写技巧 LLM、AGI、多模态AI 篇三...

IPC之十二:使用libdbus在D-Bus上异步发送/接收信号的实例
IPC 是 Linux 编程中一个重要的概念,IPC 有多种方式,本 IPC 系列文章的前十篇介绍了几乎所有的常用的 IPC 方法,每种方法都给出了具体实例,前面的文章里介绍了 D-Bus 的基本概念以及调用远程方法的实例,本文介绍 D-Bus…...

ES6之生成器(Generator)
✨ 专栏介绍 在现代Web开发中,JavaScript已经成为了不可或缺的一部分。它不仅可以为网页增加交互性和动态性,还可以在后端开发中使用Node.js构建高效的服务器端应用程序。作为一种灵活且易学的脚本语言,JavaScript具有广泛的应用场景&#x…...

Matlab技巧[绘画逻辑分析仪产生的数据]
绘画逻辑分析仪产生的数据 逻分上抓到了ADC数字信号,一共是10Bit,12MHZ的波形: 这里用并口协议已经解析出数据: 导出csv表格数据(这个数据为补码,所以要做数据转换): 现在要把这个数据绘制成波形,用Python和表格直接绘制速度太慢了,转了一圈发现MATLAB很好用,操作方法如下:…...
Go面试题学习
1.并发安全性 Go语言中的并发安全性是什么?如何确保并发安全性? 并发安全性是指在并发编程中,多个goroutine对共享资源的访问不会导致数据竞争和不确定的结果。 使用互斥锁(Mutex):通过使用互斥锁来保护…...
SQL效率-查询条件需避免使用函数处理索引字段
一个sql效率的问题 问题 假设created_at 是date类型、是索引,那么以下2种方式有没效率差异: WHERE TO_CHAR(created_at, ‘YYYY-MM-DD’) ‘2020-02-01’WHERE created_at TO_DATE(‘2020-02-01’ , ‘YYYY-MM-DD’) DBA回复 有的,第一…...

【Spring 篇】Spring:轻松驾驭 Java 世界的利器
在 Java 开发领域,Spring 框架无疑是一颗璀璨的明星,它不仅提供了全面的企业级特性,还为开发者提供了简便而强大的开发方式。本文将深入探讨 Spring 框架的简介、配置和快速入门,带你轻松驾驭 Java 世界的利器。 Spring 简介 Sp…...

多模态2025:技术路线“神仙打架”,视频生成冲上云霄
文|魏琳华 编|王一粟 一场大会,聚集了中国多模态大模型的“半壁江山”。 智源大会2025为期两天的论坛中,汇集了学界、创业公司和大厂等三方的热门选手,关于多模态的集中讨论达到了前所未有的热度。其中,…...

对WWDC 2025 Keynote 内容的预测
借助我们以往对苹果公司发展路径的深入研究经验,以及大语言模型的分析能力,我们系统梳理了多年来苹果 WWDC 主题演讲的规律。在 WWDC 2025 即将揭幕之际,我们让 ChatGPT 对今年的 Keynote 内容进行了一个初步预测,聊作存档。等到明…...
Nginx server_name 配置说明
Nginx 是一个高性能的反向代理和负载均衡服务器,其核心配置之一是 server 块中的 server_name 指令。server_name 决定了 Nginx 如何根据客户端请求的 Host 头匹配对应的虚拟主机(Virtual Host)。 1. 简介 Nginx 使用 server_name 指令来确定…...

【2025年】解决Burpsuite抓不到https包的问题
环境:windows11 burpsuite:2025.5 在抓取https网站时,burpsuite抓取不到https数据包,只显示: 解决该问题只需如下三个步骤: 1、浏览器中访问 http://burp 2、下载 CA certificate 证书 3、在设置--隐私与安全--…...
如何为服务器生成TLS证书
TLS(Transport Layer Security)证书是确保网络通信安全的重要手段,它通过加密技术保护传输的数据不被窃听和篡改。在服务器上配置TLS证书,可以使用户通过HTTPS协议安全地访问您的网站。本文将详细介绍如何在服务器上生成一个TLS证…...
聊一聊接口测试的意义有哪些?
目录 一、隔离性 & 早期测试 二、保障系统集成质量 三、验证业务逻辑的核心层 四、提升测试效率与覆盖度 五、系统稳定性的守护者 六、驱动团队协作与契约管理 七、性能与扩展性的前置评估 八、持续交付的核心支撑 接口测试的意义可以从四个维度展开,首…...

Java面试专项一-准备篇
一、企业简历筛选规则 一般企业的简历筛选流程:首先由HR先筛选一部分简历后,在将简历给到对应的项目负责人后再进行下一步的操作。 HR如何筛选简历 例如:Boss直聘(招聘方平台) 直接按照条件进行筛选 例如:…...
大语言模型(LLM)中的KV缓存压缩与动态稀疏注意力机制设计
随着大语言模型(LLM)参数规模的增长,推理阶段的内存占用和计算复杂度成为核心挑战。传统注意力机制的计算复杂度随序列长度呈二次方增长,而KV缓存的内存消耗可能高达数十GB(例如Llama2-7B处理100K token时需50GB内存&a…...

Yolov8 目标检测蒸馏学习记录
yolov8系列模型蒸馏基本流程,代码下载:这里本人提交了一个demo:djdll/Yolov8_Distillation: Yolov8轻量化_蒸馏代码实现 在轻量化模型设计中,**知识蒸馏(Knowledge Distillation)**被广泛应用,作为提升模型…...

RSS 2025|从说明书学习复杂机器人操作任务:NUS邵林团队提出全新机器人装配技能学习框架Manual2Skill
视觉语言模型(Vision-Language Models, VLMs),为真实环境中的机器人操作任务提供了极具潜力的解决方案。 尽管 VLMs 取得了显著进展,机器人仍难以胜任复杂的长时程任务(如家具装配),主要受限于人…...