一、谈关系型数据库及DBA

在工作中,企业DBA用人;晚上看书,偶尔得之,分享出来。

下面就此事来探讨一下DBA的职责与工作内容相关的问题。当然,由于现在国内DBA的前途大大的好(当然这是建立在技术过硬的前提下),所以我也想学习这方面的技能。

数据库规范

作为oracle从业人员,设计数据库必不可少,需要为企业的数据库应用程序设计高效和优雅的数据库,避免数据库的冗余难以维护,要设计精良的数据库,必须遵循一定的规则,数据库范式就是进行高效数据库设计的基础。

1.字段必须具有单一属性特性,不可再分 ==》消除表中重复的记录

2.表要具有唯一性的主键列 ==》确定表行

3.表中的字段不能包含在其他表中已出现的非主键字段==》避免数据冗余

举例

1.比如     地址可以划分为 省份  城市  区县  街道

电话可以分为 家庭电话  工作电话

2.主键列  不作解释

3.避免冗余,避免存储异常,通过引用解决需求,只需要改一个数据即可,否则会出现不一致。

DBA角色分类

备份恢复的DBA

应用开发的DBA

数据库优化的DBA

DBA职责及任务

  • 安装和升级oracle服务器及应用程序工具
  • 分配数据库的内存及规划数据库系统将来所需要的内存
  • 当系统分析与设计人员设计了数据库架构后,规划和创建主要的数据库存储结构,比如表空间和数据文件
  • 在创建了逻辑存储结构后,一句应用程序设计人员的需求,创建数据库对象。
  • DBA根据应用程序开发人员的需要对数据库结构进行修改。
  • 维护数据库上的用户及用户密码安全,去报数据库本身的安全性
  • 控制和监控用户对于数据库的访问
  • 监控和优化数据库的性能
  • 规划备份和恢复数据库的信息
  • 定期备份数据库,在数据库出现灾难故障时恢复数据库

DBA的工作目标

  1. 安全性,确保数据的安全及对数据库的访问安全
  2. 备份,保证在突出性灾难故障或系统故障情况下可以复原
  3. 性能,保证数据库机子系统具有最优的性能
  4. 设计,确保数据库的设计能满足企业的需求
  5. 实现,确保新数据库系统及应用程序的正确实现

DBA基础任务步骤

1.评估数据库服务器的硬件

oracle数据库可能会占用多少磁盘空间

是否具有或者多少磁盘设备可供oracle数据库使用

oracle实例需要占用服务器多少内存

考虑磁盘冗余阵列,CPU的运算速度,及磁盘的I/O性能

2.安装oracle数据库软件

3.规划数据库的逻辑结构

数据库的逻辑结构会影响到系统的性能和各种数据库管理操作,会影响的包括以下

--oracle数据库的计算性能

--数据库访问操作的性能

--备份与操作的性能

4.创建和打开数据库

利用DBCA

5.备份数据库

厂商已经集成,但需要无缝备份恢复必须做好优化处理

6.注册数据库用户

创建用户,分配权限和角色

7.实现数据库设计

创建表空间实现逻辑结构,表,视图,索引,序列,过程,包。。。

8.进行完整的数据库备份

养成习惯,在数据库结构有所变化之后,必须对数据库进行一次完整的备份

9.调整数据库性能

DBA最重要的工作。oracle数据库提供了数据库资源管理器控制不同的用户组的资源分配,可供我们操作。

10.下载和安装补丁包

11.克隆数据库到其他服务器

厂商集成

这个会是在测试计算机上安装、创建、优化和配置。然后通过克隆的方式克隆到生产环境

-----以上需要经过反复的实践和测试,才能得到一个最优的数据库-------

写错了别喷就行了,多谢,

时间: 2024-10-07 11:56:10

一、谈关系型数据库及DBA的相关文章

浅谈关系型数据库事务的隔离级别

我们知道在关系型数据库里面事务有四个属性: 原子性(Atomicity):事务作为一个整体被执行,包含在其中的对数据库的操作要么全部被执行,要么都不执行. 一致性(Consistency):事务应确保数据库的状态从一个一致状态转变为另一个一致状态.一致状态的含义是数据库中的数据应满足完整性约束. 隔离性(Isolation):多个事务并发执行时,一个事务的执行不应影响其他事务的执行. 持久性(Durability):已被提交的事务对数据库的修改应该永久保存在数据库中. 我们假设现在有A,B不同的

关系型数据库表结构设计规范-浅谈(转)

数据库表结构设计规范-浅谈,为啥是浅谈呢,因为主要的观点还是来自原微信公共账号的一篇文章,稍微加了一些自己的看法. 谁来进行数据库的设计? 肯定是具体的开发工程师来进行,开发同学的话,第一业务熟悉度比较高,第二结合OO和ORM的思想,能有比较好的运用关系型数据库的特性.如果是DBA同学的话,虽然对于数据库本身了解比较多,但是对于业务了解较少,很难有比较客观的设计.但是业务上线或者运行期间,需要DBA同学能够重度的加入进来,针对一些性能点和不合理的点进行优化,同事也可以在上线前,针对SQL进行re

浅谈MySQL数据库优化

一个成熟的数据库架构并不是一开始设计就具备高可用.高伸缩等特性的,它是随着用户量的增加,基础架构才逐渐完善.这篇博文主要谈MySQL数据库发展周期中所面临的问题及优化方案,暂且抛开前端应用不说,大致分为以下五个阶段: 1.数据库表设计 项目立项后,开发部根据产品部需求开发项目,开发工程师工作其中一部分就是对表结构设计.对于数据库来说,这点很重要,如果设计不当,会直接影响访问速度和用户体验.影响的因素很多,比如慢查询.低效的查询语句.没有适当建立索引.数据库堵塞(死锁)等.当然,有测试工程师的团队

(转)运维角度浅谈MySQL数据库优化

转自:http://lizhenliang.blog.51cto.com/7876557/1657465 一个成熟的数据库架构并不是一开始设计就具备高可用.高伸缩等特性的,它是随着用户量的增加,基础架构才逐渐完善.这篇博文主要谈MySQL数据库发展周期中所面临的问题及优化方案,暂且抛开前端应用不说,大致分为以下五个阶段: 1.数据库表设计 项目立项后,开发部根据产品部需求开发项目,开发工程师工作其中一部分就是对表结构设计.对于数据库来说,这点很重要,如果设计不当,会直接影响访问速度和用户体验.影

从运维角度浅谈 MySQL 数据库优化

一个成熟的数据库架构并不是一开始设计就具备高可用.高伸缩等特性的,它是随着用户量的增加,基础架构才逐渐完善.这篇博文主要谈MySQL数据库发展周期中所面临的问题及优化方案,暂且抛开前端应用不说,大致分为以下五个阶段: 1.数据库表设计 项目立项后,开发部根据产品部需求开发项目,开发工程师工作其中一部分就是对表结构设计.对于数据库来说,这点很重要,如果设计不当,会直接影响访问速度和用户体验.影响的因素很多,比如慢查询.低效的查询语句.没有适当建立索引.数据库堵塞(死锁)等.当然,有测试工程师的团队

sql学习笔记(19)-----------浅谈 MySQL 数据库优化

一个成熟的数据库架构并不是一开始设计就具备高可用.高伸缩等特性的,它是随着用户量的增加,基础架构才逐渐完善.这篇博文主要谈MySQL数据库发展周期中所面临的问题及优化方案,暂且抛开前端应用不说,大致分为以下五个阶段: 1.数据库表设计 项目立项后,开发部根据产品部需求开发项目,开发工程师工作其中一部分就是对表结构设计.对于数据库来说,这点很重要,如果设计不当,会直接影响访问速度和用户体验.影响的因素很多,比如慢查询.低效的查询语句.没有适当建立索引.数据库堵塞(死锁)等.当然,有测试工程师的团队

关系型数据库进阶(二)全局概览

上篇文章 关系型数据库进阶(一)数据库基础,我们已经了解了数据库基础,现在我们需要回来看看数据库的全貌了. 数据库是一个易于访问和修改的信息集合.不过简单的一堆文件也能达到这个效果.事实上,像SQLite这样最简单的数据库也只是一堆文件而已,但SQLite是精心设计的一堆文件,因为它允许你: 1  使用事务来确保数据的安全和一致性 2  快速处理百万条以上的数据 3  数据库一般可以用如下图形来理解: 本篇文章,我不会特别关注如何组织数据库或者如何命名各种进程,因为我选择了自己的方式来描述这些概

选型宝访谈:当业务炸裂式增长 ,如何让关系型数据库平滑扩展?

当业务炸裂式增长,如何让关系型数据库平滑扩展? 爱奇艺.饿了么.摩拜单车.....这些国民级应用的疯狂增长背后,是怎样一款国产的分布式NewSQL数据库,在做平滑支撑? 对话内容 选型宝:您怎么理解数据库技术的发展历程,分几个阶段?黄东旭:其实整个大的背景大概是这样,上世纪六七十年代就有关系数据库概念了,一直发展到90年代,基本都是以IBM DB2. Oracle,微软的SQL Server等单机关系型数据库为主的行业现状.但是在2000年以后,随着互联网行业数据量爆发性的增长,同时最近这5-1

运维角度浅谈MySQL数据库优化

一个成熟的数据库架构并不是一开始设计就具备高可用.高伸缩等特性的,它是随着用户量的增加,基础架构才逐渐完善.这篇博文主要谈MySQL数据库发展周期中所面临的问题及优化方案,暂且抛开前端应用不说,大致分为以下五个阶段: 1.数据库表设计 项目立项后,开发部根据产品部需求开发项目,开发工程师工作其中一部分就是对表结构设计.对于数据库来说,这点很重要,如果设计不当,会直接影响访问速度和用户体验.影响的因素很多,比如慢查询.低效的查询语句.没有适当建立索引.数据库堵塞(死锁)等.当然,有测试工程师的团队