从dba的角度,有哪些手段进行数据安全性的保障

从dba的角度,有哪些手段进行数据安全性的保障,第1张

有人说,数据管理员(DBA)有三个基本任务。按照重要性大小的顺序进行排列,它们分别是:保护数据、保护数据再保护数据。

虽然数据完整性显然是DBA的首要职责(如果数据“质量”不好的话,谁在乎数据库是不是可用的或快速的),不过除此之外,他还有很多其它工作要做。下面就列出了一个DBA日常执行的实际工作。(有些任务是所有DBA通用的,其它的则是需要在某些特殊的数据库环境才需要完成的)。

DBA的一般任务

◆安装、配置、升级和迁移

虽然系统管理员通常负责安装、维护服务器上的硬件和 *** 作系统,不过数据库软件的安装通常是由DBA负责的。要胜任这一工作需要了解什么样的硬件配置才能使一个数据库服务器发挥最大的作用,并且还要就这些硬件需求与系统管理员进行沟通。在完成了上述工作之后,DBA就着手安装数据库软件,并从各种不同的产品配置选项中选择一个与硬件匹配的并且能使数据库效率最高的方案。当有新版本的数据库或者补丁包发布时,决定是否要用或者用哪一个升级或补丁包也是DBA的工作之一。如果企业购买了新的数据库服务器,那么DBA也要负责将数据从原有数据库服务器中迁移到新的服务器上来。

备份和恢复

DBA负责为他们所管理的数据库制定、实施并定期测试数据库备份和恢复方案。即使在一个大型企业中有一个单独的系统管理员专门负责数据库的备份工作,不过最终的决定权还是由DBA掌握---他来确保备份工作要如期完成,并且在数据库出现故障执行恢复工作后,能包含所需要的所有文件。当数据库故障发生时,DBA需要知道如何使用备份使数据库返尽快回到正常状态,会丢失任何所完成的事务。数据库出现故障的原因可能又很多种,当出现故障时,DBA必须能很快就能判断出故障所在并采取有效的应对策略。从商业的角度来看,数据库备份是有成本的,DBA需要让企业的管理人员知道各种数据库备份方法的成本和风险。

◆数据库安全

因为数据库主要负责集中存储数据,这些数据有可能是非常机密并且非常有价值的,因此数据库往往是黑客甚至好奇的员工最感兴趣的目标。DBA必须了解所用数据库产品的详细安全模型、该数据库产品的用途、以及如何使用它来有效地控制数据存取。DBA最基本的三个安全任务是验证(设置用户帐户控制用户登录数据库)、授权(对数据库的各部分设置权限,防止非法用户访问)、审计(跟踪用户执行了什么数据库 *** 作)。就目前而言,因为监管法规比如Sarbanes-Oxley 和HIPAA的报告要求必须得到满足,这使得数据库审计工作尤为重要。

◆存储和容量规划

创建数据库得一个主要目就是存储和检索数据,所以规划需要多少磁盘存储空间和监测可用的磁盘存储空间是DBA的关键责任。观察数据的增长趋势也是非常重要的,因为只有这样DBA才能向企业的管理层提出一个长远的存储容量规划。

◆性能监控和调整

DBA负责定期监测数据库服务器,从而找出数据库瓶颈(使数据库性能降低的某些部分)并制定补救措施。对数据库服务器的调整工作要在多个层次上完成。数据库服务器硬件的性能以及 *** 作系统的配置都可能成为造成数据库瓶颈的因素,同样数据库软件的配置也是如此。数据库在磁盘驱动器上的物理安装方式以及索引的选择对于数据库的性能也有影响。数据库查询的编码方式也可能显著改变查询结果返回的快慢程度。DBA需要了解在上述各个层次需要用哪些监测工具,以及如何使用它们来调整系统。从应用设计一开始把性能因素考虑在内是积极主动调整的反映,而不是等待问题发生之后再去修复它们。DBA还需要与数据库应用开发人员紧密合作,以确保应用是按照最佳方式开发出来的,并且能带来良好的性能。

◆疑难解答

当数据库服务器出现某些差错的时候,DBA需要知道如何快速确定问题所在并正确地解决问题,保证不丢失数据或使情况变得更糟。

特殊环境下DBA的任务

除了上述基本职责外,由于某些特殊的数据库环境,一些DBA们还需要掌握一些特别的技巧。

◆高可用性

随着互联网时代的到来,过去那种数据库只需要在白天正常运转的时代已经结束了,现在数据库必须能够提供须提供每周7天每天24小时的全天候服务。网站也已经从静态的、预定义的内容发展成为动态创建的内容---在页面请求发送过来之后,使用数据库创建页面布局。如果网站是全天候可用的,那么支持网站的基础数据库也必须能够全天候工作。在这种环境下管理数据库,DBA需要知道哪些类型的维护业务可以在线完成(也就是在不中断数据库运行的情况下),以及在数据库有可能关闭时制定一个维护“期限”。此外,DBA还要规划为冗余的数据库硬件和软件组件,以便万一数据库出现故障时,冗余系统仍然能够继续要用户提供服务。DBA可以使用在线备份、集群、复制和应急数据库等技术和工具确保更高的可用性。

◆大型数据库(VLDB)

随着企业发现数据库技术的用途越来越多,他们往往用它来保存更多的数据。此外,数据库存储的数据类型也发生了变化,从过去行列整齐的结构化数据发展现在的非结构化数据,比如文件、图像、声音、甚至指纹。这两种趋势带来的结果是一样的:那就是大型数据库(VLDB)的出现。要管理VLDB,DBA需要特殊的技能。过去被认为是非常简单的 *** 作比如复制一个表,所需要的时间可能是非常巨大的。为了保证数据库扩展到非常大的规模时仍然是可管理的,DBA需要了解一些技术,比如表分割(Oracle)、联合数据库(SQL Server)和复制(MySQL)等等。

◆数据提取、转化和加载(ETL)

在数据仓库环境中,一个非常关键的任务是如何有效地加载数据仓库或数据集市中的大量数据,而这些数据是从多个现有的生产系统中提取的。通常情况下,这些生产系统的格式与数据仓库中的标准化定义是不同的,所以数据在加载之前必须要转化(或“清洗”)。在一个特定的公司里,提取数据可能是也可能不是DBA的责任,但是DBA需要确定什么样的提取是有用的,它是数据库决策团队一个关键组成部分。

有区别。

1DBA是面向数据库的(数据库管理员,或者数据库架构师),专门搞数据库方面的。

比如搭建数据库架构,优化表、存储过程、等等这些的性能,会细化到某个语句或者节点上

2影响数据库性能检测和日常维护

3数据库安全性,尤其是注入攻击,死锁这些,DBA必须都得会

4数据库热备,还原,数据库迁移

5mysql,sqlserver。。。一大堆数据库的研究部署工作

DBA是个细化具体的职业,在中国的大企业很牛逼,小企业不重视,一般企业也用不到,对技术的要求非常高,他们一般都是让程序员或者运维去搞定数据库的事情,不愿意花钱养一个DBA。。。

运维。。。(面向“大中小型企业”的全能“人才”,我说的是广义的“运维“)

数据库日常监测和维护

linux,windows服务器监测和维护,包括热备,故障处理,磁盘阵列,性能调优,负载均衡等等。。。。。。

部署网站,应用

Nginx、Tomcat、LVS、Keepalived、Haproxy安装、配置、维护及调优。。等等一大堆

shell,perl等脚本的自动化运维,有的要懂C或者python

要精通Linux系统如centos、ubuntu精通Apache、Redis、MySQL、FTP、DNS、Squid等常用服务的安装、配置和维护

网络维护,网络设备故障检修

打杂,修灯泡,修Pc,通厕所

陪老板喝酒。。。。。。

等等

运维和DBA都挺伟大的,运维在中国的中小企业已经完全沦为打杂的职业,敲得了代码,修得通网络,弄的了服务器,搞的了电脑。。。杂碎事一大堆。

大企业运维就很专业了,泡在机房里面,一般只是和服务器,数据库相关的打交道,及时处理故障,没有小企业那种乱七八糟的事情

真正的运维和中国中小企业的传统运维完全不是一码事,这个职业在中国已经被垃圾的互联网公司损毁了

数据库管理员的职责:

一、 一般监视

1. 监控数据库的警告日志。Alert<sid>log,定期做备份删除。

2. Linstenerlog的监控,/network/admin/linstenerora。

3. 重做日志状态监视,留意视图v$log,v$logfile,该两个视图存储重做日志的信息。

4. 监控数据库的日常会话情况。

5. 碎片、剩余表空间监控,及时了解表空间的扩展情况、以及剩余空间分布情况,如果有连续的自由空间,手工合并。

6. 监控回滚段的使用情况。生产系统中,要做比较大的维护和数据库结构更改时,用rbs_big01来做。

7. 监控扩展段是否存在不满足扩展的表。

8. 监控临时表空间。

9. 监视对象的修改。定期列出所有变化的对象。

10. 跟踪文件,有初始化参数文件、用户后台文件、系统后台文件

二、 对数据库的备份监控和管理

数据库的备份至关重要,对数据库的备份策略要根据实际要求进行更改,数据的日常备份情况进行监控。由于我们使用了磁带库,所以要对legato备份软件进行监控,同时也要对rman备份数据库进行监控。

三、 规范数据库用户的管理

定期对管理员等重要用户密码进行修改。对于每一个项目,应该建立一个用户。DBA应该和相应的项目管理人员或者是程序员沟通,确定怎样建立相应的数据库底层模型,最后由DBA统一管理,建立和维护。任何数据库对象的更改,应该由DBA根据需求来 *** 作。

四、 对SQL语句的书写规范的要求

一个SQL语句,如果写得不理想,对数据库的影响是很大的。所以,每一个程序员或相应的工作人员在写相应的SQL语句时,应该严格按照《SQL书写规范》一文。最后要有DBA检查才可以正式运行。

五、 DBA深层次要求

一个数据库能否健康有效的运行,仅靠这些日常的维护还是不够的,还应该致力于数据库的更深一层次的管理和研究:数据库本身的优化,开发上的性能优化;项目的合理化;安全化审计方面的工作;数据库的底层建模研究、规划设计;各种数据类型的处理;内部机制的研究;ora-600错误的研究、故障排除,等等很多值得探讨的问题。

DBA是数据库管理员, 但是数据库的设计很多时候是高级的DBA来做的 实际上并没有 "数据库设计师" 这样一种职业和职称, 因为设计数据库需要考虑和了解的问题很多,关系到很多方面, 不是只认识数据库就行了

数据库一般是 "软件设计师","信息系统架构师" ,"系统分析师" (中国特色本来按道理不该系分来设计数据库的)来设计的 不存在 "数据库设计师"这么一种东西

以上就是关于从dba的角度,有哪些手段进行数据安全性的保障全部的内容,包括:从dba的角度,有哪些手段进行数据安全性的保障、运维和dba有区别吗_dba运维是什么岗位、谁知道数据库管理员是做什么的 中级证书考出来有用吗等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9456855.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存