`
wangdei
  • 浏览: 372332 次
社区版块
存档分类
最新评论

几种方法解决存储过程中的数据安全问题

阅读更多

 异地备份

  异地备份是保护数据的最安全的方式,无论发生什么情况,那怕是火灾、地震,当其他保护数据的手段都不起作用时,异地容灾的优势就体现出来了,但是困扰异地容灾的问题在于速度和成本,这要求拥有足够带宽的网络连接和优秀的数据复制管理软件。一般主要从三方面实现异地备份,一是基于磁盘阵列,通过软件的复制模块,实现磁盘阵列之间的数据复制,这种方式适用于在复制的两端具有相同的磁盘阵列。二是基于主机方式,这种方式与磁盘阵列无关。三是基于存储管理平台,它与主机和磁盘阵列均无关。

  RAID

  RAID系统使用许多小容量磁盘驱动器来存储大量数据,并且使可靠性和冗余度得到增强。对计算机来说,这样一种阵列就如同由多个磁盘驱动器构成的一个逻辑单元。所有的RAID系统共同的特点是“热交换”能力:用户可以取出一个存在缺陷的驱动器,并插入一个新的予以更换。对大多数类型的RAID来说,不必中断服务器或系统,就可以自动重建某个出现故障的磁盘上的数据。

  镜像

  如果故障发生在异地分公司,可以使用镜像技术,进行不同卷的镜像或异地卷的远程镜像,或采用双机容错技术自动接管单点故障机,保证无单点故障和本地设备遇到不可恢复的硬件毁坏时,仍可以启动异地与此相同环境和内容的镜像设备,以保证服务不间断。当然,这样做必然会提升对设备的投资力度BT下载

  快照

  在数据保护技术中,快照技术(snapshot)是极为基础和热门的技术之一,应用在很多存储过程中,比如数据复制和备份都在使用这种技术。IBM 的FlashCopy、IBM NAS的PSM软件以及VERITAS的FlashSnap软件都是快照技术的代表。

异地备份可以避免发生自然灾害时的数据损失;采用RAID(独立磁盘冗余阵列)可以减少磁盘部件的损坏;采用镜像技术可以减少存储设备损坏;快照可以迅速恢复遭破坏的数据,减少宕机损失。这些技术是数据安全的保障,而保护数据则是存储的首要需求之一。

  存储系统型远程容灾:成本昂贵

  存储系统型远程容灾,顾名思义是基于存储系统(光纤磁盘阵列、NAS)的模式。通过存储系统内建的固件(firmware)或操作系统,通过IP网络或DWDM、光纤通道等传输介面连结,将数据以同步或异步的方式复制到远端。知名的存储系统型远程容灾方案有SRDF、TrueCopy、PPRC等。

  与主机型远程容灾相比,存储系统型远程容灾的优点就是将数据与运行分开,对主机系统的运行资源影响比较小。另外,由于运行机制大多是利用镜像(mirror)来复制数据,并借助高速缓冲存储器加速I/O存取,两端的数据差异时间点比较小,加上存储系统本身具备一定的容错能力,具有一定的运行性能和可靠性。

  而存储系统型远程容灾的最大的限制就在于其昂贵的构建成本。由于用户必须在本地端和灾备端分?e配置两套相同的存储系统,不仅采购成本高,而且还要受制于单一的设备厂商,未来的扩展性势必缺乏弹性。此外,光纤通道存储系统如果要构建远程容灾,必须在本地端和灾备端各安装一台FC-to-IP转接器,硬件成本就会超过5万美元,再加上网络带宽成本的话,整体费用投入定会令人咋舌。如果企业在安装前没有经过谨慎评估的话,构建存储系统型远程容灾极有可能造成IT支出的黑洞,加重财务负担。另外,存储系统型容灾方式对于数据库的一致性容灾存在很大的缺陷,在多点到一点的容灾架构上存在不适用性。

  除了上述两种架构之外,难道企业就没有更好的选择了吗?不是的!近年,以美国飞康软件公司(FalconStor)为代表的网络存储软件解决方案提供商,成功研制出以存储网关(Storage Gateway)为核心的存储网络型(Storage Network based)远程容灾方案,这种方案不仅结合了主机型和存储系统型远程容灾架构的优点,更一举打破了远程容灾构建成本高居不下的坚冰,成为现阶段最热门的异地容灾技术。

  存储网络型远程容灾架构,是在前端应用服务器与后端存储系统之间的存储区域网络(SAN),加入一层存储网关,这个网关和我们所了解的网络网关不同,以美国飞康软件公司的方案为例,它结合了IPStor存储管理软件和专用的管理器,前端连接服务器主机,后端连接存储设备,它的角色就好像是存储网络中的交通警察,所有的I/O都交由它来控制管理。

  存储网络型远程容灾:兼容并蓄 甜性涩爱

  还是以飞康公司的IPStor为例,IPStor远程容灾的运行方式,是结合主机端的代理程序(Agent)和快照功能(TimeMark),创建主机数据的快照副本,通过网络复制到远端的灾备站点。由于IPStor采用的是只对变化数据进行数据复制的模式,因此,所需的带宽较低,本地端与灾备端之间的连结则可以利用价格相对便宜的IP网络。

  存储网络型远程容灾的优点可说是集前述两种架构之大成。由于数据复制是通过存储网关来执行,应用服务器只需数据库执行代理程序,相对于主机型远程容灾来说,它的性能影响十分低。另外,通过存储网关的虚拟化技术,可以整合前端异构平台的服务器和后端不同品牌的存储设备,本地端和灾备端的设备无需成对配置,用户可以根据RTO和RPO,在远端建立完整的热备份中心,当本地端发生灾难时立即接管业务运行;或是采取仅在灾备端安装存储设备的温站配置,先保护数据的完整性和安全性,在本地端修复完成后再进行恢复。

  除了上述的不占用主机运行资源,以及不具备存储平台局限性特点之外,成本更是存储网络型远程容灾的最大优势。

  首先,构建时不需更换原有的IT基础架构,只需在原本的存储区域网络中加入存储网关,本地端的主机和存储设备可以是任何品牌,灾备端的主机和存储设备也不需和本地端相同,用户甚至可以在灾备端采用等级较低的存储系统(如SATA磁盘阵列),根据统计,投资成本可节省多达30%至50%!对于那些对构建远程容灾有热切需求而IT预算又十分有限的客户来说,存储网络型远程容灾无疑是最佳的选择。

  其次,针对数据库专用代理,存储网络型远程容灾确保了数据库具有完整的容灾和启动能力,无需担忧无法启动的现象发生。

  更为重要的是,在存储数据上进行的多点快照等增值功能,能使得各种数据的人为破坏均可以得到瞬间恢复的能力,实在是一种最为完整的容灾体系,其涵盖的灾难抗击范围远远超过前述的各类方式。在这种容灾体系中,容灾的构建已经不再是难事,灾难也不再是极为可怕的事情。

<!---->
分享到:
评论

相关推荐

    解决SQL下数据库修改删除用户未能找到存储过程问题

    ### 解决SQL下数据库修改删除用户未能找到存储过程问题 #### 背景与问题描述 在使用SQL Server进行数据库管理的过程中,有时会遇到“未能找到存储过程”的错误提示,例如:“未能找到存储过程'Ws_UserPro_...

    存储过程导出表数据为添加语句

    在给定的`存储过程导出表数据为添加语句.sql`文件中,应该包含了创建这样一个存储过程的具体SQL代码。执行这个存储过程时,只需要提供待导出的表名作为参数,如`EXEC 存储过程名称 '表名称';`。存储过程内部会处理...

    SQL Server中存储过程比直接运行SQL语句慢的原因

    在SQL Server中,存储过程被认为是一种提升性能和代码组织的有效工具。然而,有时人们发现存储过程的执行速度比直接运行SQL语句要慢,这主要归因于几个因素。 首先,存储过程的编译和缓存机制。存储过程在创建时...

    云数据安全存储技术分析.pdf

    然而,如何确保这些存储在云端的数据安全成为了亟待解决的关键问题之一。本文旨在深入探讨云数据安全存储的相关技术及其发展趋势,帮助读者更好地理解云数据安全的重要性以及实现安全存储的技术手段。 #### 二、云...

    编写安全的SQL Server扩展存储过程

    在SQL Server中,扩展存储过程(Extended Stored Procedures)是一种增强数据库功能的方法,它允许开发者创建自己的函数、存储过程和数据类型,这些功能是通过Windows动态链接库(DLL)实现的。编写安全的SQL Server...

    存储过程-04.存储过程和视图结合操作

    本节我们将深入探讨“存储过程”和“视图”的结合操作,以及它们如何协同工作以提高数据库性能和数据安全性。 首先,存储过程(Stored Procedure)是一种预编译的SQL代码集合,它可以理解为数据库中的可执行程序。...

    试谈云计算安全问题及解决方法.pdf

    云计算安全问题及解决方法的知识点主要包括以下几个方面: 1. 云计算及其数据安全的重要性:云计算是一种通过网络共享软硬件资源和信息,按需提供给网络设备的计算方式。云存储通常在虚拟服务器上保存数据,用户...

    sqlserver的存储过程与 where in 多值参数

    本文将探讨在SQL Server中,存储过程与`WHERE IN`子句结合使用时,处理多值参数的几种方法。 **方法一:拼接SQL字符串并调用`EXEC`** 这是最简单也是最直观的方法。你可以在存储过程中接收一个包含多个值的参数,...

    SQLServer存储过程在系统开发中的应用

    对于高职高专教育而言,教授学生如何正确使用存储过程进行实践教学,有助于培养学生的实际操作能力和解决问题的能力,进而帮助他们在未来的职业生涯中开发出更加高效、安全的管理系统软件。 总之,SQL Server 存储...

    存储过程从入门到熟练(多个存储过程完整实例及调用方法)

    在数据库管理领域,存储过程是不可或缺的一部分,它是一种预编译的SQL语句集合,能够提高数据处理的效率,减少网络传输,同时还能提供安全性和模块化的编程方式。本资源"存储过程从入门到熟练(多个存储过程完整实例...

    电信设备-一种保护移动存储设备数据安全的方法和装置.zip

    标题中的“电信设备-一种保护移动存储设备数据安全的方法和装置”揭示了这个主题的核心,即探讨了在电信设备中如何确保移动存储设备的数据安全。这通常涉及到信息安全、数据加密、访问控制等关键技术。 移动存储...

    android 数据存储的几种方式

    以下将详细介绍这几种存储方式,并针对Android平台的特定实现进行讨论。 1. SharedPreferences SharedPreferences是Android提供的一种轻量级的数据存储方式,主要用于存储简单的键值对数据,如int、long、boolean、...

    存储过程 : 一个获取数据库表中密码的存储过程

    存储过程(Stored Procedure)是一种在数据库中定义好的SQL语句集合,可以在客户端通过调用存储过程的名字来执行其中的SQL语句。存储过程可以接受输入参数并返回输出结果,也可以用于控制流操作。它具有以下优点: -...

    linux下几种安全存储对比

    本文将对Linux下几种常见的安全存储方式进行对比分析,包括文件系统加密和块层加密、文件级和全磁盘加密、以及硬件加密驱动技术等。 首先,数据静止时的加密是安全存储的基础,涉及不同层次的数据加密技术。数据...

    MySQL存储过程学习

    MySQL存储过程是数据库管理系统中的一种重要功能,它允许开发者预编译一系列的SQL语句,形成一个可重复使用的代码块,以提高数据处理的效率和应用程序的性能。在这个"MySQL存储过程学习"的主题中,我们将深入探讨...

    SQL存储过程

    在创建用户存储过程之前,应注意以下几个问题:在存储过程中不能包含CREATE VIEW、CREATE DEFAULT、CREATE RULE、CREATE PROCEDURE和CREATE TRIGGER这几个创建数据库对象的语句。创建存储过程的权限默认属于数据库...

    oracle存储过程常用技巧

    在 Oracle 存储过程中,游标是一种特殊的数据类型,它可以用来存储查询结果。游标可以用来实现复杂的业务逻辑,并提高数据库的性能。 四、异常处理 在 Oracle 存储过程中,异常处理是非常重要的。异常处理可以帮助...

    MySQL存储过程编程教程.pdf

    安全性得以加强是因为存储过程可以限制用户直接对数据库表的访问,数据完整性可以通过在存储过程中加入逻辑约束来保证,应用程序性能通过减少网络传输的数据量和在数据库端集中处理数据来提升,易维护性则体现在逻辑...

    存储过程中的临时表使用方法

    ### 存储过程中的临时表使用方法 #### 一、临时表的概念与特点 临时表是一种特殊类型的数据库表,主要用于存储中间数据或辅助查询过程,它们通常存储在`tempdb`系统数据库中,并且在使用完毕后会被自动删除。根据...

Global site tag (gtag.js) - Google Analytics