扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
检查sqlserver数据库主 备有哪些村粗过程不一样
创新互联公司是一家集网站建设,璧山企业网站建设,璧山品牌网站建设,网站定制,璧山网站建设报价,网络营销,网络优化,璧山网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。
主要数据文件是数据库的起点,指向数据库中文件的其它部分。每个数据库都有一个主要数据文件。
主要数据文件的推荐文件扩展名是 .mdf。主要数据文件包含数据库的启动信息,并指向数据库中的其他文件。
用户数据和对象可存储在此文件中,也可以存储在次要数据文件中。每个数据库有一个主要数据文件。主要数据文件的建议文件扩展名是 .mdf。
SQL Server的每个数据库是以两个文件存放的,一个后缀名为mdf,是数据文件,另一个后缀名为ldf,为日志文件。因此只要定期复制这两个文件,就可以达到备份的效果。
1.主服务器:
#Master start
log-bin="d:/log/mysql/mysql_log_bin"
server-id=1
#Master end
2.从服务器:
#Slave start
log-bin="D:/log/mysql2/log-bin.log"
relay_log="D:/log/mysql2/relay-log-bin"
#从机id,区别于主机id
server-id=2
#主机ip,供从机连接主机用
#master-host=localhost
#主机端口
#master-port=3300
#刚才为从机复制主机数据新建的账号
#master-user=slave
#刚才为从机复制主机数据新建的密码
#master-password=654321
#重试间隔时间10秒
#master-connect-retry=10
#需要同步的数据库
#replicate-do-db=test
#启用从库日志,这样可以进行链式复制
log-slave-updates
#从库是否只读,0表示可读写,1表示只读
read-only=1
#只复制某个表
#replicate-do-table=tablename
#只复制某些表(可用匹配符)
#replicate-wild-do-table=tablename%
#只复制某个库
#replicate-do-db=dbname
#不复制某个表
#replicate-ignore-table=tablename
#不复制某些表
#replicate-wild-ignore-table=tablename%
#不复制某个库
#replicate-ignore-db=dbname
#Slave end
3.对从服务器制定主服务器使用CHANGE MASTER 语句
注意:1.一定要在主服务器上创建一个可以执行replication的用户
2.该用户名在从服务器上可远程登录到主服务器。
3.开启MySQL的log-bin日志功能
而且只有 全备份,不能将数据库恢复至某个时间点。所以,我们需要全备份+日志备份。比如每天一个全备份,每隔1小时或若干分钟一个日志备份。说到差异备份,因为微 软的差异备份记录的是上一次全备份以来发生的变化,所以,如果数据库的改动很频繁的话,没过多久,差异备份就会和全备份的大小接近,因此这种情况下就不合 适了。因此,全备份+日志备份的方案适合绝大多数的用户。 3、如果你仅在数据库本地做备份,万一磁盘损坏,或者整个服务器硬件损坏,备份也 就没了,就没法恢复数据库。因此,你需要把备份文件传送至另一个物理硬件上。大多数用户不用磁带机,因此不考虑。一般,我们需要另一台廉价的服务器或者 PC来存放数据库的备份,来防止硬件损坏造成的备份丢失。 4、你可以在数据库服务器本地做完备份,然后使用某些方式将备份文件传送至备机。你是在备份完成后就马上穿送的吗?其实可以考虑将传送备份的脚本用T-SQL语句来写。
双机热备特指基于高可用系统中的两台服务器的热备(或高可用),因两机高可用在国内使用较多,故得名双机热备,双机高可用按工作中的切换方式分为:主-备方式(Active-Standby方式)和双主机方式(Active-Active方式),主-备方式即指的是一台服务器处于某种业务的激活状态(即Active状态),另一台服务器处于该业务的备用状态(即Standby状态)。而双主机方式即指两种不同业务分别在两台服务器上互为主备状态(即Active-Standby和Standby-Active状态)。
组成双机热备的方案主要的三种方式分别为:基于共享存储(磁盘阵列)的方式,全冗余方式和复制方式。
基于共享存储(磁盘阵列)的方式
共享存储方式主要通过磁盘阵列提供切换后,对数据完整性和连续性的保障。用户数据一般会放在磁盘阵列上,当主机宕机后,备机继续从磁盘阵列上取得原有数据。
如下图所示这种方式因为使用一台存储设备,往往被业内人士称为磁盘单点故障。但一般来讲存储的安全性较高。所以如果忽略存储设备故障的情况下,这种方式也是业内采用最多的热备方式。
全冗余方式
全冗余方式就是双机双存储,基于单台存储的传统双机热备方式,确实存在存储单点故障的情况,为实现存储冗余,存储高可用也已经越来越多的被用户接受。我们从理解上可以看出,双机热备最早是为解决服务器的计划性停机与非计划性宕机的解决方案,但是我们无法实现存储的计划性停机与非计划性宕机带来的服务器停机,而存储作为双机热备中唯一存储数据的设备,它一旦发生故障往往会造成双机热备系统全面崩溃。
随着科技的进步,云存储,云计算发展,对于存储热备已经进入了成熟及快速发展阶段,双机热备也随着技术的进步,进入到了没有单点故障的全冗余双机热备方式。如图:
这种方式的特点在于:
1、存储之间的数据复制不经过网络,而是由存储之间进行复制。
2、两个存储之间的复制是完全实时的,不存在任何时间延时。
3、主备存储之间的切换时间小于500ms,以确保系统存储时不产生延时。
4、硬盘盘符及分区不因为主备存储之间的切换而改变。
5、服务器的切换,不影响存储之间的初始化,增量同步及数据复制。
6、某一存储设备的计划性停机,不影响整个服务器双机热备系统的工作。
7、存储设备之间使用重复数据删除技术,完成增量同步工作。
8、真正的7X24小时或切换的全冗余方案。
复制方式
这种方式主要利用数据的同步方式,保证主备服务器的数据一致性。
基于数据复制的方式有多种方法,其性能和安全也不尽相同,其主要方法有以下几种:
A、单纯的文件方式的拷贝不适用于数据库等应用,因为打开的文件是不能被复制的,如果要复制必须将数据库关闭,这显然是不可以的。以文件方式的复制主要适用于WEB页的更新,FTP上传应用,对主备机数据完整性,连续性要求不高的情况下使用。
B、利用数据库所带有复制功能,比如SQLServer2000或2005所带的定阅复制,这种方式用户要根据自己的应用小心使用,原因主要是:
(1)SQLServer的定阅复制会在用户表上增加字段,对那些应用软件编程要求较高,如果在应用软件端书写时未明确指定字段的用户,而使用此功能会造成应用程序无法正常工作。
(2)数据滞留,这个限制怕也是最要命的,因为SQLServer在数据传输过程中数据并非实时的到达主备机,而是数据先写到主机,再写到备机,如此一来,备机的数据往往来不及更新,此时如果发生切换,备机的数据将不完整,也不连续,如果用户发现已写入的数据在备机找不到,重新写入的话,则主机修复后,就会发生主备机数据严重冲突,数据库会乱掉。
(3)复杂应用切莫使用定阅复制来做双机热备,包括数据结构中存储过程的处理,触发器和序列,一旦发生冲突,修改起来非常麻烦。
(4)服务器性能降低,对于大一点的数据库,SQLServer2000或2005所带的定阅复制会造成服务器数据库运行缓慢。
总之SQLServer2000或2005所带的定阅复制主要还是应用于数据快照服务,切莫用他来做双机热备中的数据同步。
C:硬盘数据拦截,目前国际国内,比较成熟的双机热备软件通常会使用硬盘数据拦截的技术,通常称为镜像软件即Mirror软件,这种技术当前已非常成熟,拦截的方式也不尽相同。
(1)分区拦截技术,以Pluswell热备份产品为例,他采用的是一种分区硬盘扇区拦截的技术,通过驱动级的拦截方式,将数据写往硬盘的数据提取,并首先写到备用服务器,以保证备用服务器的数据最新,然后再将数据回写到主机硬盘。这种方式将绝对保证,主备机数据库的数据完全一致,无论发生哪种切换,都能保证数据库的完整性与连续性。由于采用分区拦截技术,所以用户可以根据需要在一块硬盘上划分适合大小的分区来完成数据同步工作。
(2)硬盘拦截技术,以Symantec的Co-Standby为例,也是一种有效的硬盘拦截软件,他的拦截主要基于一整块硬盘,往往在硬盘初始化时需要消耗大量的时间。
双机热备中需要指出的几个概念
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流