自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(130)
  • 收藏
  • 关注

原创 SQL Server数据库损坏、检测以及简单的修复办法

简介    在一个理想的世界中,不会存在任何数据库的损坏,就像我们不会将一些严重意外情况列入我们生活中的日常一样,而一旦这类事情发生,一定会对我们的生活造成非常显著的影响,在SQL Server中也同样如此,或许几年内您没有遇见过数据库中出现这类情况,而一旦遇见这类情况,往往伴随着数据的丢失,宕机,严重甚至您本身的职业生涯也会受到影响。因此对于这类情况,我们需要了解数据库损坏方面的知识,以便我

2013-12-21 12:47:22 948 1

原创 SQL Server有关备份的30个误区

误区 #30:有关备份的30个误区全是错的    在开始有关备份的误区之前,如果你对备份的基础没有了解,请看之前我在TechNet Magazine的文章:Understanding SQL Server Backups。 30-01)备份操作会导致阻塞    不,备份不会导致对用户对象加锁,虽然备份对IO系统的负担导致看起来阻塞了,但实际上不会。唯一的特例是当备份包含到那些最

2013-12-21 12:44:13 956

原创 SQL Server中日志的的作用

数据库的可靠性    在关系数据库系统中,我们需要数据库可靠,所谓的可靠就是当遇见如下两种情况之一时保证数据库的一致性:在系统崩溃/故障等情况下,保证数据库的一致性 数据不能在多个DML语句同时修改数据的情况下,导致不一致或数据损坏      实际上,上述第二种情况就是并发性所需要解决的问题,传统关系数据库中,我们用锁来解决这个问题,而对于内存数据库或带有乐观并发控制的数据库系

2013-12-21 12:42:18 3573

原创 SQL Server中的事务日志(五)-日志在高可用和灾难恢复中的作用

简介    日志的作用是保证持久性和数据一致性,通过日志可以实现数据的Undo与Redo,因此通过日志,SQL Server不仅仅可以实现灾难恢复,还可以通过日志的Redo来实现高可用性。本篇文章主要讲述日志在SQL Server中提供的几种高可用性中的作用以及在灾难恢复中的角色。 日志损坏    日志可能会由于IO子系统的故障而损坏,当出现日志损坏时,如果您对日志的原来略有了解,

2013-12-21 12:40:48 902

原创 SQL Server中的事务日志(四)-在完整恢复模式下日志的角色

简介    生产环境下的数据是如果可以写在资产负债表上的话,我想这个资产所占的数额一定不会小。而墨菲定律(事情如果有变坏的可能,无论这种可能性有多小,它总会发生)仿佛是给DBA量身定做的。在上篇文章介绍的简单恢复模式下,从最近一次备份到当前的数据都会存在丢失的风险。而完整备份模式使得数据丢失的风险大大减少。本文主要介绍在完整备份模式下概念原理和日志所处的角色。 完整(Full)恢复模式

2013-12-21 12:39:51 1424

原创 SQL Server中的事务日志(三)-在简单恢复模式下日志的角色

简介    在简单恢复模式下,日志文件的作用仅仅是保证了SQL Server事务的ACID属性。并不承担具体的恢复数据的角色。正如”简单”这个词的字面意思一样,数据的备份和恢复仅仅是依赖于手动备份和恢复.在开始文章之前,首先要了解SQL Server提供的几种不同备份类型。 SQL Server提供的几种备份类型    SQL Server所提供的几种备份类型基本可以分为以下三种(

2013-12-21 12:38:47 653

原创 SQL Server中的事务日志(二)-事务日志在修改数据时的角色

简介    每一个SQL Server的数据库都会按照其修改数据(insert,update,delete)的顺序将对应的日志记录到日志文件.SQL Server使用了Write-Ahead logging技术来保证了事务日志的原子性和持久性.而这项技术不仅仅保证了ACID中的原子性(A)和持久性(D),还大大减少了IO操作,把对数据的修改提交到磁盘的工作交给lazy-writer和check

2013-12-21 12:37:07 558

原创 SQL Server中的事务日志(一)-事务日志的物理和逻辑构架

简介    SQL Server中的事务日志无疑是SQL Server中最重要的部分之一。因为SQL SERVER利用事务日志来确保持久性(Durability)和事务回滚(Rollback)。从而还部分确保了事务的ACID属性.在SQL Server崩溃时,DBA还可以通过事务日志将数据恢复到指定的时间点。当SQL Server运转良好时,多了解一些事务日志的原理和概念显得并不是那么重要。但

2013-12-21 12:36:09 725

原创 SQL Server 对于内存的管理

简介    理解SQL Server对于内存的管理是对于SQL Server问题处理和性能调优的基本,本篇文章讲述SQL Server对于内存管理的内存原理。 二级存储(secondary storage)    对于计算机来说,存储体系是分层级的。离CPU越近的地方速度愉快,但容量越小(如图1所示)。比如:传统的计算机存储体系结构离CPU由近到远依次是:CPU内的寄存器,一级缓存

2013-12-20 16:49:54 584

原创 SQL Server中的执行引擎入门

简介    当查询优化器(Query Optimizer)将T-SQL语句解析后并从执行计划中选择最低消耗的执行计划后,具体的执行就会交由执行引擎(Execution Engine)来进行执行。本文旨在分类讲述执行计划中每一种操作的相关信息。 数据访问操作    首先最基本的操作就是访问数据。这既可以通过直接访问表,也可以通过访问索引来进行。表内数据的组织方式分为堆(Heap)和B

2013-12-20 16:47:27 467

原创 SQL Server中的权限体系(下)-安全对象和权限

简介    在上一篇文章中,我对主体的概念做了全面的阐述。本篇文章接着讲述主体所作用的安全对象以及所对应的权限。 理解安全对象(Securable)    安全对象,是SQL Server 数据库引擎授权系统控制对其进行访问的资源。通俗点说,就是在SQL Server权限体系下控制的对象,因为所有的对象(从服务器,到表,到视图触发器等)都在SQL Server的权限体系控制之下,所

2013-12-20 16:45:15 979

原创 SQL Server中的权限体系(上)-主体

简介    权限两个字,一个权力,一个限制。在软件领域通俗的解释就是哪些人可以对哪些资源做哪些操作。在SQL Server中,”哪些人”,“哪些资源”,”哪些操作”则分别对应SQL Server中的三个对象,分别为主体(Principals),安全对象(Securables)和权限(Permissions),而权力和限制则是对应了SQL Server中的GRENT和DENY。对于主体,安全

2013-12-20 16:43:26 704

原创 SQL Server中的加密

简介    加密是指通过使用密钥或密码对数据进行模糊处理的过程。在SQL Server中,加密并不能替代其他的安全设置,比如防止未被授权的人访问数据库或是数据库实例所在的Windows系统,甚至是数据库所在的机房,而是作为当数据库被破解或是备份被窃取后的最后一道防线。通过加密,使得未被授权的人在没有密钥或密码的情况下所窃取的数据变得毫无意义。这种做法不仅仅是为了你的数据安全,有时甚至是法律所要

2013-12-20 16:39:51 743

原创 流程控制语句

概述     和其他高级语言一样,T-SQL中也有用于控制流程的语句。T-SQL中的流程控制语句进一步扩展了T-SQL的力量……使得大部分业务逻辑可以在数据库层面进行。但很多人对T-SQL中的流程控制语句并没有系统的了解,本篇文章会系统的对T-SQL语句中的流程控制语句进行系统讲解。 基本概念     在没有流程控制语句的情况下,T-SQL语句是按照从上到下的顺序逐个执行:  

2013-12-20 16:36:30 610

原创 SQLSERVER变量

概述     变量对于一种语言是必不可少的一部分,当然,对于T-SQL来讲也是一样。在简单查询中,往往很少用到变量,但无论对于复杂的查询或存储过程中,变量都是必不可少的一部分. 变量的种类     在T-SQL中,变量按生存范围可以分为全局变量(Global Variable)和局部变量(Local Variable).     1.全局变量是由系统定义的,在整个SQL SER

2013-12-20 16:34:06 910

原创 数据库快照

简介    数据库快照,正如其名称所示那样,是数据库在某一时间点的视图。是SQL Server在2005之后的版本引入的特性。快照的应用场景比较多,但快照设计最开始的目的是为了报表服务。比如我需要出2011的资产负债表,这需要数据保持在2011年12月31日零点时的状态,则利用快照可以实现这一点。快照还可以和镜像结合来达到读写分离的目的。下面我们来看什么是快照。 什么是快照   

2013-12-20 10:21:23 660

原创 Windows Server 2008 R2遗忘管理员密码后的解决方案

在日常的工作中,对于一个网络管理员来讲最悲哀的事情莫过于在没有备用管理员账户和密码恢复盘的情况下遗忘了本地管理员账户密码。在早期的系统中,遇到这种事情可以使用目前国内的很多Windows PE光盘来解决。但是,对于Windows Server 2008 R2来讲,只靠简单的这些操作是暂时无法解决密码问题的。但是,可以通过替换文件,使用变通的方法,可以在绕过登录的情况下,使用命令提示行方式,

2013-12-19 21:56:58 917

原创 SQL Server 2008 R2数据库镜像部署

概述“数据库镜像”是一种针对数据库高可用性的基于软件的解决方案。其维护着一个数据库的两个相同的副本,这两个副本分别放置在不同的SQL Server数据库实例中。建议使用不同位置的两台服务器来承载。在同一时刻,其中一台上的数据库用于客户端访问,充当“主体服务器”角色;而另一台则根据镜像会话的配置和状态,充当热备份服务器,即“镜像服务器角色”,这两种角色不是绝对的。优点l 增强了数据保护功

2013-12-19 21:45:43 675

原创 重新编译执行计划

根据数据库新状态的不同,数据库中的某些更改可能导致执行计划效率降低或无效。SQL Server 将检测到使执行计划无效的更改,并将计划标记为无效。此后,必须为执行查询的下一个连接重新编译新的计划。导致计划无效的情况包括:对查询所引用的表或视图进行更改(ALTER TABLE 和 ALTER VIEW)。对执行计划所使用的任何索引进行更改。对执行计划所使用的统计信息进行更新,该更新可能是从语

2013-12-19 18:08:55 791

原创 sql关系型运算符优先级高到低为:not >and> or

select * from table where Condition1 and Condition2 or Condition3如果我们要搜索表table中满足Condition1且满足Condition2和Conditon3中其中一个的时候,我们使用上述语句是错误的,因为关系型运算符优先级高低为:not>and>or,因此上面执行顺序为:se

2013-12-19 12:59:33 814

原创 order by 多个条件

ORDER子句按一个或多个(最多16个)字段排序查询结果,可以是升序(ASC)也可以是降序(DESC),缺省是升序。ORDER子句通常放在SQL语句的最后。ORDER子句中定义了多个字段,则按照字段的先后顺序排序。例:SELECT ProductName,UnitPrice, UnitInStock FROM  Products ORDER BY UnitInStock DESC ,

2013-12-19 12:57:28 964

原创 数据库索引

1.创建表并插入数据在Sql Server2008中创建测试数据库Test,接着创建数据库表并插入数据,sql代码如下:USE TestIF EXISTS (SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 'emp_pay') DROP TABLE emp_payGOUSE T

2013-12-19 12:56:00 521

原创 数据库索引实例

1.创建表并插入数据在Sql Server2008中创建测试数据库Test,接着创建数据库表并插入数据,sql代码如下:USE TestIF EXISTS (SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 'emp_pay') DROP TABLE emp_payGOUSE T

2013-12-19 12:54:56 791

原创 三范式

1.范式说明1.1 第一范式(1NF)无重复的列  所谓第一范式(1NF)是指数据库表的每一列都是不可分割的基本数据项,同一列中不能同时有多个值,即实体中的某个属性不能有多个值或者不能有重复的属性。如果出现重复的属性,就可能需要定义一个新的实体,新的实体由重复的属性构成,新实体与原实体之间为一对多关系。在第一范式(1NF)中表的每一行只包含一个实例的信息。简而言之,第一范式就是无重复的列。

2013-12-19 12:52:23 521

原创 SQLSERVER系统数据库介绍

数据库管理员(DBA)的一项基本的技能是对SQL数据库引擎的系统数据库的深刻理解。数据库开发人员了解SQLSERVER自带的系统数据库也是十分有用的。下面就列出了其中的一些系统数据库。(注:如果你决定研究一下这些系统数据库,那么你需要有一个开发数据库。) Master   Master数据库保存有放在SQLSERVER实体上的所有数据库,它还是将引擎固定起来的粘合剂。如果不使用主数据库,S

2013-12-19 12:43:16 849

原创 ORACLE与SQLSERVER的区别-2

函数SQLServer和Oracle的常用函数对比     1.绝对值    S:select abs(-1) value  O:select abs(-1) value from dual  2.取整(大)    S:select ceiling(-1.001) value    O:select ceil(-1.001) value from dual

2013-10-23 22:49:57 648

转载 ORACLE与SQLSERVER的区别-1

●概念上区别   1.Oracle 是一种对象关系数据库管理系统(ORDBMS),而Sql server只是关系型数据库管      理系统(RDBMS).   2.Oracle使用Internet文件系统,该系统基于Java的应用程序,可以使数据库基于成为     Internet的开发平台;Sql server 是基于windows   3.Orace 主要的三类文

2013-10-23 22:49:10 578

原创 如何整理ORALCE表碎片

数据库在日常使用过程中,不断的insert,delete,update操作,导致表和索引出现碎片是在所难免的事情,碎片多了,sql的执行效率自然就差了,道理很简单,高水位线(HWL)下的许多数据块都是无数据的,但全表扫描的时候要扫描到高水位线的数据块,也就是说oracle要做许多的无用功!因此oracle提供了shrink space碎片整理功能。对于索引,可以采取rebuild online的方

2013-10-22 15:54:13 590

原创 OLAP和OLTP的区别

OLTP:On_line Transaction Processing  联机事务处理 OLAP:On_line Analytical Processing   联机分析处理OLTP 顾名思义,以业务处理为主。OLAP则是专门为支持复杂的分析操作而设计的,侧重于对决策人员和高层管理人员的决策支持,可以应分析人员的要求快速、灵活地进行大数据量的复杂查询处理,并以一直直观的形式把查询结果提供。

2013-10-22 13:59:15 1228 1

原创 PGA与SGA的区别,PGA的功能介绍

当用户进程连接到数据库并创建一个对应的会话时,Oracle服务进程会为这个用户专门设置一个PGA区,用来存储这个用户会话的相关内容。当这个用户会话终止时,数据库系统会自动释放这个PAG区所占用的内存。这个PGA区对于数据库的性能有比较大的影响,特别是对于排序操作的性能。所以,在必要的时候合理管理PGA区,能够在很大程度上提高数据库的性能。一、PGA与SGA的区别。  PGA(程

2013-10-22 11:13:21 8276 1

原创 Oracle两个数据库互相访问,DBLink使用

测试条件:假设某公司总部在北京,新疆有其下属的一个分公司。在本次测试中,新疆的计算机为本地计算机,即本要的IP地址为:192.168.1.100 北京的总部有一个集中的数据库,其SID是SIDBJ,用户名:userbj,密码:bj123,北京的IP地址是:192.168.1.101。在本地(新疆)的分公司也有一个数据库,其SID是SIDXJ,用户:userxj,密码:xj123,新疆的

2013-10-22 11:03:07 1264

原创 数据库巡检有哪些

1. 检查数据库基本状况在本节中主要对数据库的基本状况进行检查,其中包含:检查Oracle实例状态,检查Oracle服务进程,检查Oracle监听进程,共三个部分。1.1. 检查Oracle实例状态 SQL> select instance_name,host_name,startup_time,status,database_status from v$instance;INST

2013-10-22 10:54:23 1454

原创 Oracle 数据库表空间碎片查询和整理

dba_free_space 显示的是有free 空间的tablespace ,如果一个tablespace 的free 空间不连续,那每段free空间都会在dba_free_space中存在一条记录。如果一个tablespace 有好几条记录,说明表空间存在碎片,当采用字典管理的表空间碎片超过500就需要对表空间进行碎片整理。select a.tablespace_name

2013-10-22 10:46:50 1342

原创 Oracle rowid详解 .

1. rowid的介绍先对rowid有个感官认识:SQL> select ROWID from Bruce_test where rownumROWID------------------ ----------AAABnlAAFAAAAAPAAAROWID的格式如下:数据对象编号 文件编号 块编号 行编号OOOOOO FFF BBBBBB RRR

2013-10-22 10:11:53 549

原创 管理临时表空间

1、查看临时表空间 (dba_temp_files视图)(v_$tempfile视图)select tablespace_name,file_name,bytes/1024/1024 file_size,autoextensible from dba_temp_files;select status,enabled, name, bytes/1024/1024 file_size from

2013-10-22 10:05:58 564

原创 表空间设计

Oracle数据库开创性地提出了表空间的设计理念,这为Oracle数据库的高性能做出了不可磨灭的贡献。可以这么说,Oracle中很多优化都是基于表空间的设计理念而实现的。常用原则:1、一般较大的表或索引单独分配一个tablespace。2、Read only对象或Read mostly对象分成一组,存在对应的tablespace中。3、若tablespace中的对象皆是

2013-10-22 09:55:22 1022

原创 RMAN差异增量和累积增量

1、概念  差异增量(Differential):是备份低级别或者相同级别备份以来变化的所有数据块,顾名思议,也就是要备前期备份以来的差异数据块。      1.若前面的备份同时存在低级别和相同级别,则优先选择备份从最近的低级别(n-1)以来变化的数据块。  2.若没有n-1级别备份,则选择备份同级别备份以来变化的数据块。  3.若没有同级别的备份,则备份更低级别以来(n-x)变化

2013-10-21 18:25:19 1525

原创 RMAN体系概述

一、Recovery Manager(RMAN)特性 RMAN是一种用于集备份(backup)、还原(restore)和恢复(recover)数据库于一体的Oracle 工具,支持命令行及图形界面操作。 a.能够备份整个数据库、表空间、数据文件、控制文件、归档文件以及Spfile参数文件。 b.支持增量数据块级别的备份和块级别的介质恢复 c.可以保存频繁执行的备份恢复脚本 d.

2013-10-21 18:24:18 625

原创 RMAN常用命令

一、List命令的使用列出备份集、数据文件镜像等列出指定表空间任意数据文件的备份集或镜像副本列出指定范围内包含归档日志的备份集或镜像副本  RMAN> list backup;  RMAN> list copy;  RMAN> list backup of database;  RMAN> list backup of tablespace uers;  RMAN>

2013-10-21 18:22:02 556

原创 重建、合并、删除索引

重建索引  如果表中记录频繁地被删除或插入,尽管表中的记录总量保持不变,索引空间的使用量会不断增加。虽然记录从索引中被删除,但是该记录索引项的使用空间不能被重新使用。因此,如果表变化不定,索引空间量会不断增加,不论表中记录数量是否增加,这是因为索引中无效空间会增加。 要回收那些曾被删除记录使用的空间,需要使用Alter index rebuild命令。  重建索引有两种方法:一种是最简单的

2013-10-21 18:16:30 1465

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除