TRSWCM操作数据表实现分发站点的停用及批量新建分发站点
操作数据表实现分发站点的停用及批量新建分发站点
需求:
1、停用WCM现有的所有分发点
2、每个站点增加新的分发点
不能在页面上操作的原因:
由于网站群的站点太多,而且切换时间必须断,在页面上操作工作量太大,考虑直接修改数据表来实现,需要提供SQL语句。
实现方法
1、禁用所有分发站点
sql语句:update WCMPUBLISHDISTRIBUTION set ENABLED=0;
2、每个站点建立一个分发站点
下面sql语句中,红色的部分为本地分发站点的存储目录,相当于在WCM中新建分发站点时要填的存储路径。
蓝字‘FILE’表示新建站点里面的类型。
QQ截图20121112162339.png
insert into WCMPUBLISHDISTRIBUTION(PUBLISHDISTRIBUTIONID, FOLDERTYPE, FOLDERID, TARGETTYPE, TARGETSERVER, LOGINUSER, LOGINPASSWORD, DATAPATH, ENABLED, CRUSER, CRTIME, ANONYMFTP, TARGETPORT, PASSIVEMODE) select SITEID+(select max(PUBLISHDISTRIBUTIONID)+1 from WCMPUBLISHDISTRIBUTION),103,siteid,‘FILE’,’’,’’,’’,‘e:’,1,CRUSER,CRTIME,0,null,1 from WCMWEBSITE;
3、其它必要操作
更新WCMID表:
update WCMID set NEXTID=0 where TABLENAME=‘WCMPUBLISHDISTRIBUTION’;
4、重启WCM
因为涉及到数据库的更新,所以要重启一下WCM。
注意
上面第2步中的SQL语句适用于没有建过分发站点的系统,也就是说,WCMPUBLISHDISTRIBUTION表中之前必须有数据。如果系统没有建过分发站点,WCMPUBLISHDISTRIBUTION表中无数据,那么第2步中的语句会报错,需要改成如下语句:
insert into WCMPUBLISHDISTRIBUTION(PUBLISHDISTRIBUTIONID, FOLDERTYPE, FOLDERID, TARGETTYPE, TARGETSERVER, LOGINUSER, LOGINPASSWORD, DATAPATH, ENABLED, CRUSER, CRTIME, ANONYMFTP, TARGETPORT, PASSIVEMODE) select SITEID,103,siteid,‘FILE’,’’,’’,’’,‘e:’,1,CRUSER,CRTIME,0,null,1 from WCMWEBSITE;