宗尚技术分享在分享中得到快乐 应用上线过程分析 数据库创建 葛云杰 (Fiyo) 山东诺安诺泰信息系统有限公司电话 :18660746900 邮件 :sdfiyon@gmail.com
关于我 姓名 : 葛云杰 网络 ID:Fiyo www.xiaoqrobot.org 电话 :18660746900 邮箱 :sdfiyon@gmail.com
应用上线过程分析 数据库创建
应用上线过程需要做哪些事情? 建库 建表空间 建用户 授权 建数据表 索引 视图 数据仓库 数据库备份 数据库优化 集群 灾备 应用上线过程分析 数据库创建
应用上线过程分析 数据库创建 ORACLE 体系结构 数据库软件安装 数据库实例创建 网络配置 Grid Control 安装 备份恢复 数据仓库管理 数据库管理 性能优化 RAC 安装 部署 Data Guard
Oracle 10g 体系结构 用户进程 共享缓冲区 实例 SGA 库缓冲区 数据缓冲区 日志缓冲区 服务器进程 PGA 数据字典 Java 池 大池 PMON SMON DBWR LGWR CKPT Others 参数文件 数据文件 控制文件 重做日志文件 归档日志文件 密码文件 数据库
数据库软件安装 安装 LINUX 操作系统 安装各种软件包 安装数据库软件
DBCA 数据库实例创建 Manual
DBCA 数据库实例创建
Manual 实例启动过程 : 数据库实例创建 nomount 阶段 mount 阶段 open 阶段
Manual 实例启动过程需要哪些文件支持? 数据库实例创建 密码文件 ( 口令文件 ) 参数文件 控制文件 数据文件 日志文件
数据库实例创建 Manual 实例启动过程需要哪些文件支持? 密码文件 ( 口令文件 ) Oracle 的密码文件的作用是存放所有以 sysdba 或者 sysoper 权限连接数据库的用户的口令, 由于 sys 用户在连接数据库时必须以 sysdba or sysoper 方式, 也就是说 sys 用户要想连接数据库必须使用口令文件, 在数据库中存放 sys 用户的口令其实没有任何意义! 使用口令文件的好处是即使数据库不处于 open 状态, 依然可以通过口令文件验证来连接数据库
数据库实例创建 Manual 实例启动过程需要哪些文件支持? nomount 阶段 : 参数文件 Oracle 首先寻找参数文件 (pfile/spfile), 然后根据参数文件中的设置 ( 如内存分配等设置 ), 创建实例 (INSTANCE), 分配内存, 启动后台进程 Nomount 的过程也就是启动数据库实例的过程 从 Oracle9i 开始,spfile 被引入 Oracle 数据库,Oracle 首选 spfile<oracle_sid>.ora 文件作为启动参数文件 ; 如果该文件不存在,Oracle 选择 spfile.ora 文件 ; 如果前两者都不存在,Oracle 将会选择 init<oracle_sid>.ora 文件 ; 如果以上三个文件都不存在, Oracle 将无法创建和启动 instance Oracle 在启动过程中, 会在特定的路径中寻找参数文件, 在 Unix/Linux 下的路径为 $ORACLE_HOME/dbs 目录, 在 WINDOWS 上的路径为 $ORACLE_HOME\database 目录 在此阶段, 可以执行的操作有 : 重建控制文件, 重建数据库
数据库实例创建 Manual 实例启动过程需要哪些文件支持? mount 阶段 : 控制文件 控制文件中包含日志文件, 数据文件的位置信息, 检查点信息等重要信息 在 mount 阶段,oracle 会打开控制文件, 加载数据库, 此时数据库的基本结构信息都能够查询了, 但是还不能查询用户表的内容 在此阶段, 可以执行的操作有 : 数据库日志归档 数据库介质恢复 使数据文件联机或脱机 重定位数据文件和联机日志文件
数据库实例创建 Manual 实例启动过程需要哪些文件支持? open 阶段 : 数据文件 日志文件 在 open 阶段, 就是打开数据库, 在这个阶段 SMON 会对数据文件的检查点进行一致性检查, 不一致时 smon 会介入进行恢复 此时数据库可用, 可以建立会话
Manual 数据库实例创建过程? 数据库实例创建
数据库网络配置 监听器配置 本地服务名配置 限定文件
Grid Control 安装配置 OMS Agent
备份恢复 imp/exp impdp/expdp rman tar
数据仓库 数据库管理 性能优化 表空间 用户 权限
RAC 安装 配置互信 安装集群软件 配置网络 安装 ASM 实例
RAC 相关知识 并发控制 利用 DLM(Distribute Lock Management) 机制来进行多个实例间的并发控制 健忘症 (OCR Disk) 集群环境配置文件不是集中存放的, 而是每个节点都有一个本地副本, 在集群正常运行时, 用户可以在任何节点更改集群的配置, 并且这种更改会自动同步到其他节点 有一种特殊情况 : 节点 A 正常关闭, 在节点 B 上修改配置, 关闭结点 B, 启动结点 A 这种情况下, 修改的配置文件是丢失的, 就是所谓的健忘症 脑裂 (Voting Disk) 在集群中, 节点间通过某种机制 ( 心跳 ) 了解彼此的健康状态, 以确保各节点协调工作 假设只有 " 心跳 " 出现问题, 各个节点还在正常运行, 这时, 每个节点都认为其他的节点宕机了, 自己是整个集群环境中的 " 唯一建在者 ", 自己应该获得整个集群的 " 控制权 " 在集群环境中, 存储设备都是共享的, 这就意味着数据灾难, 这种情况就是 " 脑裂 "
Data Guard 部署 物理备用数据库 同步或异步重做传输 备份 生产数据库 网络 Broker 重做应用 DIGITAL DATA STORAGE DIGITAL DATA STORAGE 将重做转换成 SQL 逻辑备用数据库 可用于报表操作 SQL 应用 额外的索引和物化视图
Data Guard 部署 灵活的数据保护模式 保护模式 数据丢失保护 重做传输 最高保护 最高可用性 最高性能 零数据丢失双重故障保护零数据丢失单重故障保护最少的数据丢失 LGWR SYNC 将重做同步传输至两个站点 LGWR SYNC 重做同步传输 LGWR ASYNC 或 ARCH 重做异步传输 例如 :ALTER DATABASE SET STANDBY TO MAXIMIZE PROTECTION; 均衡成本 可用性 性能和事务保护
Data Guard 部署 Data Guard 和 RAC Data Guard 和真正应用集群是互补的, 应一起使用以实现最高可用性结构 真正应用集群提供了高可用性 能够快速和自动地从节点故障或一个实例崩溃中恢复过来 提供了增强的可伸缩性 Data Guard 提供了灾难保护并防止数据丢失 维护主数据库的几个事务一致的副本 防止灾难 数据损坏和用户错误 无需昂贵且复杂的 HW/SW 镜像
Thank You