oracle从这里开始

基本概念

oracle 19c 版本

  • 实例-instance
    是用于管理数据库文件的内存结构
  • 数据库
    磁盘上的物理文件,可以通过create database 进行创建。
    实例存在于内存中,而数据库存在磁盘上,所以实例可以独立于数据库存在,数据库也可以独立于实例存在。
  • CBD
    Container Database 数据的元数据存储库
    创建用户c## user_name 开头,创建的是common 用户
  • PDB
    Pluggable Database
    创建本地用户user
  • PDB$SEED
    pdb数据的模板库
    如果所示的关系
    在这里插入图片描述
    实例支持两种模式
    只读实例
    读写实例
    只读实例能够运行查询,但是不能支持 DML修改操作(UPDATE、DELETE、INSERT 以及 MERGE),也不能从客户端直接进行连接。初始化参数 INSTANCE_MODE 设置为 READ_ONLY

oracle 数据库启动方式

Oracle启动模式的nomount阶段- 启动一个实例,但没有与数据库关联。
Oracle启动模式的mount阶段-实例已经启动,并且读取数据库的控制文件。数据库对用户不可用。
Oracle启动模式的open阶段-实例已经启动,并且打开数据库。授权用户可以访问数据文件中的数据。

Oracle 数据库使用 SID 和 Oracle 主目录的路径名称作为共享内存的键值。

oracle 内存结构

在这里插入图片描述

PGA 称为程序全局区,程序全局区不是实例的一部分,当服务器进程启动时,才分
SGA 称为系统全局区,它是数据库实例的一部分,当数据库实例启动时,会首先分配系统全局区。
SGA组成

  • 共享池(Shared pool)
    共享池由两部分组成,即库高速缓存(Libray cache)和数据字典高速缓存(Data dict cache)
    查看数据共享池的大小
    show parameter shared_ pool_ size;
    alter system set shared_pool_size=16M
  • 数据库高速缓存区(Database buffer cache)
    数据写入的内存缓存区
  • 重做日志高速缓存区(Redo Log buffer cache)
    redo log 日志内存缓存区,写数据前,先写redo log 刷磁盘后,才写数据到数据缓冲区
  • large_ pool
    Oracle 在共享池中分配额外的空间用于存储用户进程和服务器进程之间的会话信息。这样减轻共享缓存区的压力
  • java_ pool

oracle 三种文件

1.数据文件
datafile 文件包含数据对象表和索引,一旦数据文件被建立则不能改变大小
2.控制文件
记录数据库的物理结构
3.重做日志文件
联机日志文件-Oracle用来循环记录数据库改变的操作系统文件
归档日志文件-指为避免联机日志文件重写时丢失重复数据而对联机日志文件所做的备份

oracle 进程

与数据库服务器建立连接时,就启动了一个用户进程
服务器进程犹如一个中介,完成用户的各种数据服务请求,而把数据库服务器返回的数据和结果发给用户端。
服务进程和用户进程有专有连接和共享连接

oracle 启动命令

su - oracle
sqlplus / nolog
conn / as sysdba
startup
stop immediate 启动实例
alter database open; 打开数据库
lsnrctl start 启动监听

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值