我爱电脑技术论坛's Archiver

麦迪 发表于 2008-6-14 11:44

一步一步教你网站同步镜像

1.介绍I4wD3g7O k6U\s

9Y^y6U5j] 现在的网站随着访问量的增加,单一服务器无法承担巨大的访问量,有没有什么方便快捷的方式解决这个问题呢,答案是”有”!比如建立服务器群,进行均衡负载. fuf Yp g0O}OJ_
但是如果要解决像电信网通这样的互访问题(中国网民的悲哀..),这个解决办法就无能为了了!
Sg)K]E ` 要解决这个问题最方便快捷的方式就是建立镜像网站!由访问者自己选择适合自己网络的速度最快的网站!这样即可以解决线路问题,又可以解决访问量问题!V8|,V*ae

q!S7m)FY 2.网站同步的数据分类
2oZR$x_ X"u #oK$e'b ?,T9_y fa
网站数据基本分为两类:7\+@}T4U)j8B
一类是文件,比如HTML,ASP,PHP等网页文件,或者RAR,ZIP,RM,AVI等可下载文件!m'}a-X5BG,j[o
要实现他们的同步很简单,用FTP同步软件就可以了!至于哪几个我会在后面做详细介绍.
8g4YhS iW7r:r s#BiV A&~)b+t
一类是数据库数据文件,比如MySQL,SQL Server等等!/?B1H(wxB
数据库同步的方法也很多,最简单的办法只是将数据库目录同步一下就OK了!gu,}G^*{{ T
在后面我也会做详细讲解!&W@&|I1Rs@3]7{0a

"^-`ECV-b2B 3.网站文件的同步!l({3U+I(nD5D mx!`
H&eb;o:s/FaVo)N
在这里用到的主要工具就是FTP,网站文件同步分两种情况,一种是本地到远程,一种是远程到远程(FXP)!第一种不用说了,第二种远程到远程即FXP,支持它的软件也很多,但是真正适合多网站同步镜像的却不多!
Q'r;i2c;Vk+S'ML 下面我介绍几个我认为不错的软件!(PS:如果熟悉FTP命令,完全可以自己制作一个批处理文件时间的)
-_tpjDi`Cz 1.首先我要推荐的是国产的FTP软件”网络传神”,功能非常强大,特别是在网站的同步镜像方面,可惜的是,这款非常经典的软件已经不再更新了,最后更新时间是2003年3月,最后一个版本是3.12!虽然如此还是非常好用的!下面是一段官方的简介:
,d @/x:J1wN4Uk
3c3g5@BiH5F%P 网络传神完全吸收了Cuteftp和UpdataNow的全部功能,并且增加了其他软件没有的多项功能:支持网站互传;支持网站同步(UPDATA NOW);支持后台上传(多线程上传多个文件);可同时打开多个站点;多站点计划上传功能,支持镜像站点;支持宏操作支持计划操作;支持文件高级比较上传;支持目录隐藏过滤(为用ForntPage作主页的朋友带来福音);服务器自动识别功能;资源管理器浏览方式;可以自定义命令;支持RFC959标准具有更好的稳定性;完备的信息返回机制及错误监控机制完整的中文帮助。7}2i7I%m2i/pb
j G1vz-N b}lkCT
2.第二款是由ReGet同一开发公司制作的专用于网站同步的软件”WebSynchronizer”,用这款软件,你才会体验到网站同步的方便快捷,简单容易.最新版本是1.3.62, 网上能找到XX的最后版本是1.1版!下面是一段简介:&zM X:Ep2h2j[

^'J9kt X 档案同步化工具 - WebSynchronizer,由知名续传软件 ReGet 之软件出版公司所推出,是网站同步化、档案镜像、档案备份的绝佳工具,可以执行下列主要工作:1) 本机资料夹及远程资料夹的同步化;2) 两台远程计算机中的资料夹同步化;3) 两个本机资料之同步化。
W1{i^ {!` d6s jwl5^sd
3.其他还有一些软件如同步快梭(AutoSyncFTP),也能实现简单的网站同步,不过,这款软件非常不稳定,而且2001年就已经停止开发.所以,不用考虑了!还有上次有朋友提到的SiteMirro,由于网上找不到可以用的版本,所以没有办法测试!

麦迪 发表于 2008-6-14 11:45

4.网络传神网站同步镜像使用傻瓜指南
"o+} e-BSw9I;i 第一次运行网络传神的时候,它会让你选择”完全模式”和”启动模式”,要使用网站同步必须选择”完全模式”.qS(U J5~b3D

-dHCg'x 进入主界面:你会发现这个软件非常像FlashGet,要使用网站同步功能,点击软件左下角的”FTP客户端”.
P2xhj3Sw"y/D vp)^;q6Klv!T;N
现在你要做的就是添加你的镜像母站和需要镜像的网站:文件->站点管理,在里面添加你需要同步的几个的FTP服务器,下面我将介绍具体设置(主要是镜像母站的设置) yoY2Fup

'zh Z;c XZM 母站设置最重要的地方就是”比较目录(网站同步)”:.f6W(\G9|&U1K,S
P9?j in7D5c-W6l'N d%] K
1.拖动传送
p0K`G9_mM"V g9Rf 就是手动拖动传送时候的传送方式,非拖动方式不受影响,因为母站的更新基本上是从本地目录进行的,所以建议这里选择第二项”只上传不同的文件”,镜像站点这里可以忽略1^4@VZ3t4U
2.磁盘比较设置
^T2L(`+a1fE-S 这个功能非常有用,可以通过文件长度和文件日期进行文件差异对比.
o2r(sYJP.] a"_x
z"zBx6Z9X.DG 你还可以设置本地目录过滤和服务器目录过滤,非常灵活!_Sj ?[:R
好了,添加好母站和镜像站之后,我们来设置同步:
7a VE#oK!X|@8_
0xm3Gu^h 如果是添加镜像站,则会跳出下面的母站选择窗口::} M~Z6r(@+v!?Cp`
I/T?[x
设置好多个镜像站点之后,返回主界面就可以进行网站同步了:
1j p-O(e ZH b!e {&Zz `d9b)N-Xn
注意事项:ah!rSW*X
一般不要改动镜像站点前面的“对钩”标志,因为镜像站点同步的原理是“根据主站点的同步信息更新镜像站点”,如果景象站点没有更新那么必须将该镜像站点单独同步。,I k$u MQ
注意一般应该“选项窗口”-〉“FTP客户端”-〉“计划”中的“最大连接个数”和“最大线程个数”一般不要改动保持为“1”。
hS6? GU 如果同步时某个站点出错同步没有完全完成只需按“计划”窗口中的 按钮单独执行某个站点的传送即可j`EZ { RZ jK

8E b&Z8hB~Y\ 再介绍一下网站镜像同步中必要的功能,定时同步,这样你就只要做好母站的更新,其他的让网络传神帮你完成:8[Cd IIcb
点击设置:
tMJn@7`6p ;pgAzor@ gCc+@
进入网络传神的选项设置窗口,选中FTP客户端中的定时同步
+[_*FxJw 'V IHsKOR,nj
定时下载:在指定的时段内下载文件。#p w?)Fg&E%S
定时上传:在指定的时段内用网站同步的方法进行上传。8| g5_:@5}w
开始时间:如果要使用定时方式必须设置此项,在设置的时间中会自动开始所有设置为计划的站点。 Ia$[_-h9xdH#H
停止时间:如果设置此项则当系统时间大于停止时间时自动停止所有设置为计划的站点。lHAN'F/I;a [4p
%Y6L2OYM1T5~I
注意:定时上传种没有“停止时间”选项,网站同步完成后会自动停止,同时网站同步同一时间只能运行一次。~;Tg[ m8R G)M;|0h

5`|F o'M7Ahtu 网络传神还有很多为便于同步镜像设置的功能,大家实际使用中去体会吧!d0~+ehf*w Os

c?nY+v&W 5. Web Synchronizer 网站同步镜像使用傻瓜指南 si(my(T3EU|^Y
Web Synchronizer功能非常强大,不单单是网站同步,还可以进行本地目录同步,本地到远程同步,功能方面远胜过传神,不过,国内好像没有汉化版,对于一些对英文感冒的朋友用起来会不太舒服,希望CCF里的汉化高手能将他中文化!'k\$v ZK_S:N
3sBy0wJ"]
开始运行程序,老外的软件就是智能,一打开这个软件就会有一个同步向导跳出来!

麦迪 发表于 2008-6-14 11:45

在这里,你也看出来了吧,这个软件只支持两个目录间的同步.不过,我们可以创建多个项目来解决这个问题!具体我在后面介绍!这里,我们来看看如何建立两个远程目录的同步!
Q7J wSif#Ix,h 选择第二项,进入下一个选择框:
;C'@y ^ _%Ks-\ O7h.M5A,m
网站同步当然是选择第一项了!再进入下一步,要你选择同步的第一个服务器,建议在这里servers list,先编辑好需要同步的几个FTPr8HpU7u|^

7b,CZ"SG6S#_ 同步方式设置说明:
(xxbcQT4P*` 第一项的意思是:上传下载所有改变的文件 Wk;TUbW
第二项的意思是:不改变文件夹内容,只下载新的文件
\*j.g1?4q 0E2KFVhmm
点击下一步进行第二个服务器设置,方法和第一个一样!UI'A YV
设置完成后,你还可以修改任务名称!
lw)E,QC#D|&y;i 我觉得这点就是这个软件非常优秀的地方,以任务的方式进行管理.非常方便!
0V q(vZ^8Bk^.g
|b-[5Z-L_.]E7} OK,现在我们就可以看到他的主界面了!
2l*Z2TF hs
!V#~ y Gu m:O;Ix|n 还有一点要提,他的计划任务更能也很强大,在这里我就不再多说了!用过才知道他的强大!K&Se4eUM s7x_
#PBVg h
有朋友会说,我要进行两个以上的网站同步怎么办?
#U1d oV_*S%]y*A1f K,{ 很简单,再多建几个任务就可以了,要镜像多少网站都没有问题!
0S$Fw-o-^u*N 这个软件的网站同步镜像可以非常灵活,比如可以本地-远程,然后再远程-远程!或者本地-远程1,本地-远程2,远程1-远程2,任何情形下的同步都可以完成!3w(_tb2P0@G ?w]

%ws,FV _-BY 3.数据库同步操作指南*[Lf}-`!K
#Sq&~.yWl e(p
说完了文件同步,我们再来探讨一下数据库同步!!{#fMa$h:u}8wy
这里我主要教大家两种最常用的数据库的同步方法! Et i\H0V[f si%X,WB
:} u6`|2Ef+B{"T5_
MySQL
BL ClGg}7Fh$W
)Y tA u5C| MySQL数据同步主要有三种方式:
oOW#h f/S/~h 1.利用MySQL自身的数据库同步功能]*tY0sq
2.利用MySQL数据库的特性(数据库存在固顶目录,并且以文件形式存储),进行数据库目录同步以达到数据同步目的SNw"RJdn3J
3.利用专用的MySQL数据库同步软件
#n%N+^/@'S4_R3M
0ZugDL } 1. 利用MySQL自身的数据库同步功能(下面参考自网上的文章,写的非常详细了)Z%} du)G-kbo9E
MySQL从3.23.15版本以后提供数据库复制功能。利用该功能可以实现两个数据库同步,主从模式,互相备份模式的功能.
3o!f~U%hX 2r_(K9a'u;cD GwW
数据库同步复制功能的设置都在mysql的设置文件中体现。mysql的配置文件(一般是my.cnf),在unix环境下在/etc/mysql/my.cnf 或者在mysql用户的home目录下的my.cnf。6RFp_d;Z%RF~4Bv L
bnbn&tU%_V
windows环境中,如果c:根目录下有my.cnf文件则取该配置文件。当运行mysql的winmysqladmin.exe工具时候,该工具会把c:根目录下的my.cnf 命名为mycnf.bak。并在winnt目录下创建my.ini。mysql服务器启动时候会读该配置文件。所以可以把my.cnf中的内容拷贝到my.ini文件中,用my.ini文件作为mysql服务器的配置文件。

麦迪 发表于 2008-6-14 11:45

设置方法:
*\E&Jxs:H w7V   设置范例环境:5NqZl/vry%uo
  操作系统:window2000 professional
!n#Gul.M   mysql:4.0.4-beta-max-nt-log ^9P,te4s#XE
  A ip:10.10.10.22
F c,BqUu   B ip:10.10.10.53
Ua"z,Y3|;\/T(n   A:设置
p Si\i,YS b-?   1.增加一个用户最为同步的用户帐号:{$gJ7|SHr
  GRANT FILE ON *.* TO backup@'10.10.10.53' IDENTIFIED BY ‘1234’e;x.hw3?-u*ey
  2.增加一个数据库作为同步数据库:_P/]X-^
  create database backup
-?/{3YT7^ B:设置
|Jd4_A9g K   1.增加一个用户最为同步的用户帐号:?(Y be0}\,Y|(a
  GRANT FILE ON *.* TO backup@'10.10.10.22' IDENTIFIED BY ‘1234’
^&Xu1w+iUJ/w]   2.增加一个数据库作为同步数据库:1T4qFV#cQ
  create database backupDJ.EE-k Iv*l.E
  主从模式:A->B}#y{ CM"[
  A为master
`J1E[ sSG(y~   修改A mysql的my.ini文件。在mysqld配置项中加入下面配置:
,l1IrR;n3R3p4G2K8i   server-id=1 ^yq]e.H
  log-bin
!r[jIg aAX)G   #设置需要记录log 可以设置log-bin=c:mysqlbakmysqllog 设置日志文件的目录,
j7eI9U.U#GR   #其中mysqllog是日志文件的名称,mysql将建立不同扩展名,文件名为mysqllog的几个日志文件。
?-v*p1d$A Q'X   binlog-do-db=backup #指定需要日志的数据库-{+Tc_:T4~ ^
  重起数据库服务。9hI7J xV
  用show master status 命令看日志情况。
Gy!{ P V*T{`K!X${   B为slave
o/gXB4RM]"tz   修改B mysql的my.ini文件。在mysqld配置项中加入下面配置:
K9^'skoLZ7i   server-id=2q2I4C-}'W
  master-host=10.10.10.22@;\P!tl
  master-user=backup #同步用户帐号]LO/m5n!|0l/KMF
  master-password=1234,}$Rc?"[t c
  master-port=3306oON2\ yOW
  master-connect-retry=60 预设重试间隔60秒#c Lv g f*`.[
  replicate-do-db=backup 告诉slave只做backup数据库的更新
l6Q/@n%{'c?   重起数据库FO&^)L;s^i$D:s
  用show slave status看同步配置情况。
oX/`(@"is;Nz P   注意:由于设置了slave的配置信息,mysql在数据库目录下生成master.info
@-Z.W \|   所以如有要修改相关slave的配置要先删除该文件。否则修改的配置不能生效。l"q/a%b/_a0b%Sc`(h
  双机互备模式。P2_SG9k8Q^ nI
  如果在A加入slave设置,在B加入master设置,则可以做B->A的同步。O ~*q9HK'z
  在A的配置文件中 mysqld 配置项加入以下设置:
D9GL"{9XU/P3_   master-host=10.10.10.531G\@1cTiG$w
  master-user=backup
9vOQy d"Dn   master-password=1234;tLQ'EcO Y"dMAm
  replicate-do-db=backupiR p/v7};a:c
  master-connect-retry=10
0[9r:a5rJ4`3ugW4`   在B的配置文件中 mysqld 配置项加入以下设置: kc g(s9a2ia3Y
  log-bin=c:mysqllogmysqllog
^n`P+d3F@$i)zk0f   binlog-do-db=backup
@]r3P6Tj   注意:当有错误产生时*.err日志文件。同步的线程退出,当纠正错误后要让同步机制进行工作,运行slave start
*y g7u{?l-d   重起AB机器,则可以实现双向的热备。
_wZ+~Q.gPY   测试:DC gGKz]R:P
  向B批量插入大数据量表AA(1872000)条
q }0pZ1O3X K \!o   A数据库每秒钟可以更新2500条数据。1mPC9~&^AW

*g0z?@ t 2.数据库目录同步,方法和文件同步一样,设置好需要同步的两个数据库目录就可以了!
N#O`PI1Z 缺点很明显,数据同步只能单向进行,可以作为备份方案

麦迪 发表于 2008-6-14 11:46

3.用专用的MySQL同步软件进行同步
lWI&b+x 这方面的软件有SQLBalance 和MyReplicator ,优点是方便直观,还有很多争强功能!L T Hwh&d
缺点和2一样,只能单项同步!
[f uf4i|8f 当然你也可以修改镜像网站的程序为提交数据到母数据库,读取则在当前镜像下的数据,不过,修改起来麻烦!普通用户修改也非常难!呵呵,大家了解一下就可以!给大家一个思路!有能力的朋友可以试试阿!
$l*TV9s T2bx[| t$~6c@kw
MSSQL*e&r:@0MrbmCiU.mP
9wD`v.Q{
MSSQL数据同步利用数据库复制技术实现数据同步更新(来自网络,也是非常完美的教程)
O!mH5S Pf!I2_+gZ 复制的概念
y3Ec4@/w)k5jb} 复制是将一组数据从一个数据源拷贝到多个数据源的技术,是将一份数据发布到多个存储站点上的有效方式。使用复制技术,用户可以将一份数据发布到多台服务器上,从而使不同的服务器用户都可以在权限的许可的范围内共享这份数据。复制技术可以确保分布在不同地点的数据自动同步更新,从而保证数据的一致性。7P` {+m-Q'M
SQL复制的基本元素包括3l h5G,In#Z
出版服务器、订阅服务器、分发服务器、出版物、文章
I/fP-X IU6f SQL复制的工作原理/{|0I,f Co5m0@
SQL SERVER 主要采用出版物、订阅的方式来处理复制。源数据所在的服务器是出版服务器,负责发表数据。出版服务器把要发表的数据的所有改变情况的拷贝复制到分发服务器,分发服务器包含有一个分发数据库,可接收数据的所有改变,并保存这些改变,再把这些改变分发给订阅服务器U,GH~:g5n
SQL SERVER复制技术类型 x |6U"Q&IGC&H8y+H
SQL SERVER提供了三种复制技术,分别是:3W#~7d7fJ
1、快照复制(呆会我们就使用这个)byb:R'e
2、事务复制
t;G0M2X[9X5?} 3、合并复制s uJ^x4u5k6C
只要把上面这些概念弄清楚了那么对复制也就有了一定的理解。接下来我们就一步一步来实现复制的步骤。
'l%z+@? M H c8r$J }7@ 第一先来配置出版服务器
^9O:UDq(s (1)选中指定[服务器]节点)kVjJ.p(V ZF6P
(2)从[工具]下拉菜单的[复制]子菜单中选择[发布、订阅服务器和分发]命令 v7~8h w&o5pc
(3)系统弹出一个对话框点[下一步]然后看着提示一直操作到完成。tw;}*T5o
(4)当完成了出版服务器的设置以后系统会为该服务器的树形结构中添加一个复制监视器。同时也生成一个分发数据库(distribution) BiQ7ob zhwS3Q-n:EJ
第二创建出版物4G1V+p!Z-ubR
(1)选中指定的服务器
.V"kc,gir8b7b (2)从[工具]菜单的[复制]子菜单中选择[创建和管理发布]命令。此时系统会弹出一个对话框?0Zm4m$i$T'jTu
(3)选择要创建出版物的数据库,然后单击[创建发布]
m/o6tT6G-x)Ej_B;dV (4)在[创建发布向导]的提示对话框中单击[下一步]系统就会弹出一个对话框。对话框上的内容是复制的三个类型。我们现在选第一个也就是默认的快照发布(其他两个大家可以去看看帮助)\,~RZ-~8S'f C
(5)单击[下一步]系统要求指定可以订阅该发布的数据库服务器类型,SQLSERVER允许在不同的数据库如 orACLE或ACCESS之间进行数据复制。但是在这里我们选择运行"SQL SERVER 2000"的数据库服务器7bl(~T9I
(6)单击[下一步]系统就弹出一个定义文章的对话框也就是选择要出版的表"D!zjyN,l__
(7)然后[下一步]直到操作完成。当完成出版物的创建后创建出版物的数据库也就变成了一个共享数据库。
Tc:y#v-m$O*i 第三设计订阅9V"m sBP*LM7r
(1)选中指定的订阅服务器
K c0u!E T%IpqB-U (2)从[工具]下拉菜单中选择[复制]子菜单的[请求订阅]
R-?/\~!LEB3C@B!_ (3)按照单击[下一步]操作直到系统会提示检查SQL SERVER代理服务的运行状态,执行复制操作的前提条件是SQL SERVER代理服务必须已经启动。Eoa G:r
(4)单击[完成]。完成订阅操作。!{|{U7ON2Y
完成上面的步骤其实复制也就是成功了。但是如何来知道复制是否成功了呢?这里可以通过这种方法来快速看是否成功。展开出版服务器下面的复制——发布内容——右键发布内容——属性——击活——状态然后点立即运行代理程序接着点代理程序属性击活调度把调度设置为每一天发生,每一分钟,在0:00:00和23:59:59之间。接下来就是判断复制是否成功了打开C:\Program Files\Microsoft SQL Server\MSSQL\REPLDATA\unc\XIAOWANGZI_database_database下面看是不是有一些以时间做为文件名的文件夹差不多一分中就产生一个。要是你还不信的话就打开你的数据库看在订阅的服务器的指定订阅数据库下看是不是看到了你刚才所发布的表—?k-by:?,de
一个手工同步的方案Ghm%dp S&f9B
--定时同步服务器上的数据%}"uwk&z6~q
--例子:0zZ'aZ6G:I5X^)QE
--测试环境,SQL Server2000,远程服务器名:xz,用户名为:sa,无密码,测试数据库:test^;|4{3P O6E O
--服务器上的表(查询分析器连接到服务器上创建)(C zR8Lm+m
create table [user](id int primary key,number varchar(4),name varchar(10)).C0~ x0@zR,}9Z
go*g5xj*z&y'o?]j
--以下在局域网(本机操作)3vs T%t/Xa i*wU
--本机的表,state说明:null 表示新增记录,1 表示修改过的记录,0 表示无变化的记录
#G4VLY!v:|9_z+i if exists (select * from dbo.sysobjects where id = object_id(N'[user]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)8Id%~ R'a:_(s
drop table [user]
CU%Tt2cW3K { GO
&E8@ sT#a| create table [user](id int identity(1,1),number varchar(4),name varchar(10),state bit)n;\){[^fl!B
go

麦迪 发表于 2008-6-14 11:46

--创建触发器,维护state字段的值
'IhN]%ZH@2D!W{ create trigger t_state on [user]*Lu Q}D7| _X
after update
2o n_(?8?c asTpn+u|0f
update [user] set state=10Fsu!lLSp
from [user] a join inserted b on a.id=b.id
h$E7Ar+B\| p where a.state is not null
S9mXVNL^ go
-BJ-P.l-pQ,r --为了方便同步处理,创建链接服务器到要同步的服务器
E|.E'Q v5t6qA --这里的远程服务器名为:xz,用户名为:sa,无密码
'Jou4| F\S if exists(select 1 from master..sysservers where srvname='srv_lnk')
$m%i#o\0q p0B exec sp_dropserver 'srv_lnk','droplogins'
6UD+l#yKB!r AK\ gon.uY ["PbF}
exec sp_addlinkedserver 'srv_lnk','','SQLOLEDB','xz'
r_)^'WH*BR exec sp_addlinkedsrvlogin 'srv_lnk','false',null,'sa'B:C2s9tYN@)qUY8uo
goz^z!T8PN~k
--创建同步处理的存储过程
Y+gpBh~2s@ if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[p_synchro]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)Q x$jZ3o._k1t*@
drop procedure [dbo].[p_synchro]
;[~3J$m v C~)^G GO|6|/[aFIx GB
create proc p_synchro
&j}K$bg??${;@e as!Yk'j6F4s V
--set XACT_ABORT on
I1zR \@&MO1\Tf;R --启动远程服务器的MSDTC服务ACu Q9nLW{L
--exec master..xp_cmdshell 'isql /S"xz" /U"sa" /P"" /q"exec master..xp_cmdshell ''net start msdtc'',no_output"',no_output*NN.P+\M/G
--启动本机的MSDTC服务K"TVm1W@
--exec master..xp_cmdshell 'net start msdtc',no_output
Q$nI2T4H/_+|3_ --进行分布事务处理,如果表用标识列做主键,用下面的方法?WPL"x6r~I
--BEGIN DISTRIBUTED TRANSACTIONwGuN3g"o ps1a
--同步删除的数据g,B.H f:U7D
delete from srv_lnk.test.dbo.[user]
3Y Lj(fT where id not in(select id from [user])-QJ;v,[5gH%l
--同步新增的数据 mLa4S&IX/Z
insert into srv_lnk.test.dbo.[user]
AA;S5Z_0@1ZsAN select id,number,name from [user] where state is null/BY3y:A.d!E h2z9p
--同步修改的数据
&@z-sY0v5p)s!Vk update srv_lnk.test.dbo.[user] set~;_!NA%zh5KM
number=b.number,name=b.name V!J F%nx4cM'G'^%L%E.i
from srv_lnk.test.dbo.[user] a
*p3^~/~N-_6h`;C#} join [user] b on a.id=b.idV6\cE;~#R:Y1tJ
where b.state=1D&Z"DJ5{1s5B
--同步后更新本机的标志
Y)|,dx P7` update [user] set state=0 where isnull(state,1)=1
C\8gR*^ --COMMIT TRAN_+iB}.Vf
go
+]K:|&O%h2A|g --创建作业,定时执行数据同步的存储过程
&L&H%R^t'O7XkD5D if exists(Select 1 from msdb..sysjobs where name='数据处理')5|1C_7K f0y+u*JJ
EXECUTE msdb.dbo.sp_delete_job @job_name='数据处理'
9{e.XQ3P1lEf;z exec msdb..sp_add_job @job_name='数据处理'
U4mA}`N#e_ c/P --创建作业步骤
'u.W(bpD declare @sql varchar(800),@dbname varchar(250)
RqC,| LaL9z'C select @sql='exec p_synchro' --数据处理的命令
(t1CzQjr8q ,@dbname=db_name() --执行数据处理的数据库名
u*dBa/P3R@ exec msdb..sp_add_jobstep @job_name='数据处理',
kv-tVM"z @step_name = '数据同步',
Fx'\m:~&C$c1} @subsystem = 'TSQL',
.?;K~9U5]rM D7JF q @database_name=@dbname,O w0^"\ H xMx7F
@command = @sql,
(QA'Y m5r @retry_attempts = 5, --重试次数x7Y8dR^Z4E5u
@retry_interval = 5 --重试间隔

麦迪 发表于 2008-6-14 11:47

--创建调度
1YpF]CLk EXEC msdb..sp_add_jobschedule @job_name = '数据处理',
g:KR"c)E@j @name = '时间安排',
~GN"p+tgwbq @freq_type = 4, --每天B @B8v*e&D oD:^D
@freq_interval = 1, --每天执行一次Qh'?;P{
@active_start_time = 00000 --0点执行
?%Nc7]:S1ZJ*i&t go
3v N#v:Y,f9NW6kv
@,z)Xq2~W 当我们辛辛苦苦的制作好一个站点之后,如何选择快速简便的FTP工具将其上传到站点是件让人头痛的事情。虽然目前有很多FTP软件供大家选择,不过它们几乎都是清一色的英文软件,这对于那些E文不好的网友来说多少有些不便。不过网络传神的出现给我们带来了一个全新的选择,使得我们能够更好的维护和管理自己在网上筑出的小屋。D@J"q a s'A)cbo

-mU-vH c4V](t*\#B&| t*z 一、功能简介
7}7y0^}*V6K$o
,c*hYX7{   网络传神可以按照这个地址的地址连接进行下载,它的大小只有832K,这和其它FTP软件比较起来简直是个小家伙了。不过麻雀虽小,五脏俱全,就是这个小家伙的功能却又不得不让我们为其竖起大拇指,总的说来,网络传神在FTP上传方面主要有以下几个特点:fV W!?([9|
a_m2M-E7];G
  1、网站同步功能:方便用户上传主页,只需设置一次以后只要点击“网站同步”即可将磁盘上的主页与服务器上的主页进行同步上传。
}6T?]P-@*h%I&pt   2、后台多文件传送功能:该功能可以开启多个连接上传一组文件,并且能够将整个目录上传到站点,而且可以工作在后台不影响前台的操作。b/Q(g-^%[
  3、磁盘镜像比较功能:采用本地磁盘镜像机制,所谓磁盘映像就是每次上传文件自动记录成功上传文件的日期时间和长度信息,新比较采用生成的磁盘映像和本地目录相比较以确定出新的文件,并放在计划上传窗口,该比较的特点是准确,速度快。
k|r"li)o)@5SK   4、多站点镜像:支持同时向多个镜像站点进行文件上传更新。9O2s iAiSD2Oy9B)]H"`
  5、网站互传功能:支持服务器间的文件传送。
f*c m1O,J!?2p[)v\
?/] {4lt   除去上述的主要功能之外,网络传神还有宏操作、定时上传、声音提示、服务器自动识别、远程文件编辑、自动关闭和错误监控机制等附属功能,这些都为它成为一流FTP软件奠定了坚实的基础。s:r2b8HTR
-e#W"f?$].CS(\q
二、使用指南
L\'y'u N*J
YG(`UE3|Z\[*o   安装网络传神很简单,可以闭着眼睛一直按下回车键来轻松搞定。第一次运行它的时候将有站点设置向导出现帮助我们设置自己的FTP站点,这主要包括站点名称、服务器地址、用户名和口令等内容。不过比较独特的一点是增加了默认磁盘和服务器目录功能,设置它们之后可以用于设定主页文件在本地硬盘上存放的目录和服务器上的目录,这样每次运行网络传神之后程序将自动打开这两个目录以方便我们的操作。(图1)
s@e Yi}u m 3g{_C1~
%bja^a*B+JZ _+o
b-aj!uzE
[attach]31164[/attach]

麦迪 发表于 2008-6-14 11:49

 对自己的站点设置完成后,我们才能看见网络传神的主操作界面,这时连接到Internet上并按下工具栏上的“连接”按键,网络传神就会与对方站点进行连接,同时右下角的信息反馈窗口显示出相应的连接信息。等与对方站点建立连接之后,右边的站点文件列表中将显示出已经存在的文件或者是目录结构(图2)。
[Kw8Xi;q r
&C8]X y G-p [attach]31165[/attach]
4O!M`G:o%{4O3n2\ S
Ob P%e#r+Ze 当你需要上传文件的时候,只要用鼠标将文件从本地文件列表中拖拽到站点文件列表中即可。i[+MJV LW1V

Za.?J+];I   可见网络传神的基本使用还是相当简单的,但它那些特色功能又如何使用呢?我们不妨一起来看看。
*le&sLrY_7h Z
l7ye:G8h6S 制作磁盘镜像(图3)
h/]7Rf { Na(\Mpg
[attach]31166[/attach]
0{K8S/l3P$|
}&kq {*j  为了配合网站同步,网络传神中加入了这个功能。在图2所示的主界面中运行“比较上传->磁盘镜像制作”命令激活向导窗口。 R6hi1b#KJ5Y&U&N
'uR/]9a&d~K#\!U
  1、先根据向导的提示确定主页存放的目录。
'~/H:W0S|6A$FA!`:o   2、然后设置主页文件的日期,在日期范围内的文件都视为旧文件(已经上传的文件),如果你确定你的服务器中的主页已经是最新的则保证两项都是“未设置”则认为所有文件都是旧文件将制作镜像,然后网站同步就将磁盘目录和生成的文件比较确定是否应该上传。e6A&P)q |2q*QQ(D
  3、接着确定主页文件的大小范围,在长度范围内的文件都视为旧文件(已经上传的文件),如果你确定你的服务器中的主页已经是最新的则保证两项都是“未设置”则认为所有文件都是旧文件将制作镜像。C)|f"vTjJ%C"wctT?
  4、此时还可以设置操作的方式是清除原有的信息来创建新的镜像,还是在把新的文件添加到已经存在的镜像文件中。B M/r1f"y h2TKA LI
  5、最后点击“开始”按键创建磁盘镜像文件。#e0V8WJ H7@?\.]

C0g3I(Ex Dqk 网站同步)@:n(m(A!GJ

;zQ@T;e,\D1xA   首先单击主窗口的“站点总管”按钮打开站点总管窗口,选择你要同步的站点并点击“添加同步”按钮把站点已经添加网站同步子窗口中,此时我们可以在网站同步子窗口中看到刚才添加站点的名字(图4)。
'Y:o*s/k+r+jkd ~l-n\0C
[attach]31167[/attach]/aQ'FHM.i T
:m*w KZ8Il&g
 同时还可以在“网站编辑”对话框中的“比较条件设置”中设置比较的条件,也可以设置本地目录的隐藏屏蔽掉不需上传的文件目录。a9Lz P3e
:xP.~?)PlpV2m.q6\-S
  设置完成后,要在“网站同步”子窗口中将新添加的网站前边的方框打勾以确定该站点采用同步更新,如果禁止此站点同步可以将前面的勾号去掉。最后再按下主窗口的“网站同步”按钮对该站点进行同步。(图5)
8{ ^4O PrIK /Etq4{7f!z
%@7fw%oz9w-G kP
[attach]31168[/attach]J$P `Qn_"A
V7yRBT"K-Mn7y
文件比较)`eVsW:@tR

!T4i2A.Dx9p   1、磁盘比较 通过磁盘文件文件的比较可以找出新的文件进行上传,以有效的节约上传时间。而文件的比较采用了本地磁盘镜像机制,将生成的磁盘镜像和本地目录相比较以确定出新的文件,然后根据个人的需要调用。通过文件比较能够准确迅速的查找出最新的文件,这样在上传的时候就能大大减少所需要的时间。
b1F(k"Q-m Y3K
-y I:l's|x   2、服务器比较 这种比较方式是用本地的磁盘目录与服务器的目录比较,但是由于一些服务器的限制导致时间无法准确的提供从而使比较出错无法正常完成。服务器比较的优点是文件可以在任何目录,只要服务器目录不变就可以比较,可速度慢是它最大的缺点。
1r6FzN6XCVu }g+o ef'p{
  文件比较的调用全部在“比较上传”菜单中,而且它的设置与磁盘镜像基本上差不多,在此就不加详述了。
4|`l`i +u h Yp0U,c}u
计划窗口
G8M3Ax'Y8m]]
U tm)S*EX-YN   计划窗口是网络传神中比较重要的窗口,在该窗口中可以对要运行的命令进行编辑修改。6J7?*s1FjB9R

W1@rn2y&t)G_   使用的时候先在图2窗口右下角的讯息窗口中选择“计划”标签,然后可以把需要上传的文件从本地文件列表窗口中拖动到计划窗口中即可。这样我们可以在脱机工作状态来选定需要上传的文件,等到全部设置完毕再连接到网络上以减少不必要时间的浪费。此外,我们还可以通过鼠标右键功能把当前的计划命名保存,等到以后再重新调用。
p ?WN~i1gr &p2W c;v9p
定时上传e5Sy9YIM]%K
H1^ Ke$Qd'|1Wbd"c9c
  定时上传功能是为配合网站同步而功能设置的,这项功能可以根据设置的时间自动开启网站同步功能进行网站同步,而且当开启站点超过了最大开启限制时这些同步站点会放入等待队列中。'h5py4N*g

3q!_:xU#R   直接在主窗口中按下“定时上传”按键将弹出一个设置窗口(图6),可以设定在特定的时间将文件上传到站点,也可以定义每隔一定时间就上传文件到你设置的FTP站点中。如果你是一个勤于更新主页的人,那么可以设定在每天凌晨将文件上传到站点,而你同时就在高枕无忧了,呵呵!
#|+vE&x1l[ N C y&jW)A _ gY
[attach]31169[/attach]
"i$p)FLv,uyR 2R5g:Y i7Q
后台上传
^'P:\0L$]9Ul1B
J*Shc g`   所谓后台上传是指利用多线程的方式在后台开启多个连接,同时上传一组文件,这样能够有效的利用带宽,节约上网费用,而且在操作时并不会影响前台的任何操作。
p.w P2q(u z X He7G.o e
  要进行后台上传必须在站点总管界面里设置“使用后台上传”选项,并确定“使用后台上传”命令有效(图7),这样当你上传主页时系统会自动对上传命令进行后台操作。同时可以在后台信息中看到后台线程的工作情况。当后台文件传送时前台仍然可进行除上传以外的页面浏览、文件下载等操作。 _ gH/i_.eCfW

B-M"^@7Y6I [attach]31170[/attach]
6Lh:wM[4g.@
eZ9ph-GjC Qf 网站互传w%bn(sx
Y|r7bW!A@+@*C,MV
  网站互传功能可以在两个服务器之间传送数据,我们只要同时在网络传神中开启两个站点,并且当两个站点都连接完成后即可从一个站点的服务器目录拖动文件到另一个站点的服务器目录来完成上传。利用这个功能,我们可以直接把其它站点中优秀的软件工具拖拽到自己的主页里,而这一过程是服务器之前的数据传输,所以速度很快,且还不要你付出一分钱的费用,真是大快人心的事情!S0g(@K@ ^

@+P6f1A&J y"hU*Yi 三、实用技巧
C;GIW+ort
L8eMi"g7a.q/U   在笔者使用网络传神的过程中,还发现了一些提高工作效率、简化工作的实用技巧,在此介绍给大家,希望能够对各位有些帮助。
|4Oq!Q#s(UUs~7x
/^D q'e/VlZsV]4Q   1、在第一次上传主页的时候,首先可以创建磁盘镜像,而且在设置的时候要定义文件的时间与日期为“未设置”,这样才能保证所有的文件都被添加到镜像文件中。
}z,^X0Q.A u   2、上文介绍的网站同步步骤适用于服务器中没有文件的新站点,或者长期适用网络传神的站点。如果你的网站在服务器上不是空网站,则必须通过“本地磁盘镜像制作功能”初始化磁盘镜像,再使用网站同步功能。p M^LHg
  3、有些服务器的初始目录不是需要进入的目录,所以你必须在“网站编辑->目录及比较设置初始目录设置”中设置服务器的初始目录。
$H?+w#tk5k wE W   4、充分利用服务器之间文件互传的功能,当你有多个镜像站点的时候,可以每次只更新一个主站点,然后将主站点的更新文件通过服务器互传功能复制到其它镜像站点上,这样能够大大减少维护所需要的时间。P-s(_3hjK]l;B

I|[5l t3B$EQ   总的说来,网络传神填补了我们国人在FTP软件方面的空白,而且它的功能和稳定性也是不错的。如果你不想被满屏的E文所困扰,那不妨试试这个网络传神吧。

页: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.