首页 > 学技术 > 技术网文 > Sybase > 正文

[保留] sybase整库复制步骤


来源 chinaunix.net 酷勤网整理

以前写过一篇基于表复制的,这次是基于整库复制的(warm standby)
复制服务器名字 : HRB_REP
主数据库服务器和主库HRB_HB.maindb    to    备份数据库服务器和备份库HRB_HB_REP.maindb

1. 复制服务器和ASE数据库的interfaces中都要包括上面三个server的接口信息
2. 用复制服务器安装的用户登录。

3. 使用/repsrv/REP-12_5/install/rs_init 安装复制服务器 
   (ctrl-a 接受  ctrl-b 向后 ctrl-x 退出)
   1>; Configure a Server product
   2>; Replication Server
   3>; Install a new Replication Server
   3.1>; Replication Server Information
        3.1.1 输入复制服务器的名字  HRB_REP
        3.1.2 Is this Replication Server the ID Server 选择Yes
   3.2>; Replication Server System Database
        3.2.1 RSSD SQL Server Name: 输入安装复制服务器系统库的数据库服务器名字HRB_HB_REP
        3.2.2 Create RSSD : 如果没有建过这个库,选Yes
        3.2.3 SA password : 输入sa口令
   3.3>; RSSD Device Information
        3.3.1 Size of the RSSD Database: 输入HRB_REP_RSSD数据库的大小(30-50M)
        3.3.2 RSSD device name : 输入数据库设备的名字
        3.3.3 如果数据库中没有建立设备,选择 Create the RSSD device 并输入设备文件名和大小
        3.3.4 Size of the RSSD Database: 输入HRB_REP_RSSD日志的大小(30-50M)
   3.4>; Disk Partition
        3.4.1 Partition文件必须存在,可以使用 >;filename(或touch filename) 创建
        3.4.2 Disk Partition Path: 输入partition文件的文件名
        3.4.3 Logical Identifier for Disk Partition: 输入partition在复制服务器中的逻辑名
        3.4.4 Size of Disk Partition: 输入Partiton的大小(一定要分配足够大的空间,否则在大的事务复制时会因为partition满而出错)
   3.5>; 如果所有选项全部为complete状态,按ctrl-a创建复制服务器
   创建完后不要退出rs_init,后面还要用

4. 在主点数据库和备份点数据库服务器中分别执行
   设置数据库服务器可以复制
   isql -Usa -P<password>; -S<database_servername>;
   1>; use master
   2>; go
   1>; sp_configure 'enable rep agent threads',1
   2>; go
   如果maindb没有设置select into 选项,需要如下设置
   1>; use master
   2>; go
   1>; sp_dboption maindb,'select into',true
   2>; go
   1>; use maindb
   2>; go
   1>; checkpoint
   2>; go
5. 在复制服务器中执行
   isql -Usa -P -S<rep_servername>;
   1>; create logical connection to HRB_HB.maindb
   2>; go
6. 在rs_init中增加主库到复制中,选择 add a database to the replication system
   6.1>; Replication Server Information
   6.1.1>; 输入复制服务器名字HRB_REP
   6.2>; Database Information
   6.2.1>; SQL Server Name: 输入主数据库服务器名HRB_HB
   6.2.2>; SA password : 输入sa口令
   6.2.3>; Database name: 输入主库名maindb
   6.2.4>; Will database be replicated : 选择Yes
   6.2.5>; Is this a Physical Connection for Existing Logical Connection: 选择Yes
   6.2.6>; Logical DB Setup 
          6.2.6.1>; Is this an Active Connection or Standby Connection: 选择active
          6.2.6.2>; Logical DS Name : 输入主服务器名HRB_HB
          6.2.6.3>; Logical DB Name :  输入主数据库名maindb
   6.3>; 如果所有选项全部为complete状态,添加数据库

7. 在主数据库服务器中执行
   isql -Usa -P<password>; -SHRB_HB
   1>; use maindb
   2>; go
   1>; sp_reptostandby maindb,"ALL"
   2>; go 
   1>; grant role sa_role to maindb_maint
   2>; go
   
   在备份数据库服务器中执行      
   isql -Usa -P<password>; -SHRB_HB_REP
   1>; use master
   2>; go
   1>; sp_addlogin maindb_maint,maindb_maint_ps,@defdb="maindb"
   2>; go
   1>; use maindb
   2>; go
   1>; sp_adduser maindb_maint
   2>; go
   1>; grant role sa_role to maindb_maint
   2>; go

8. 同步主库HRB_HB和备份库HRB_HB_REP的login和role、权限等,要保证两台机器的login id一致

9. 在rs_init中增加备份库到复制中,选择 add a database to the replication system
   9.1>; Replication Server Information
   9.1.1>; 输入复制服务器名字HRB_REP
   9.2>; Database Information
   9.2.1>; SQL Server Name: 输入备份数据库服务器名HRB_HB_REP
   9.2.2>; SA password : 输入sa口令
   9.2.3>; Database name: 输入主库名maindb
   9.2.4>; Will database be replicated : 选择Yes
   9.2.5>; Is this a Physical Connection for Existing Logical Connection: 选择Yes
   9.2.6>; Logical DB Setup 
          9.2.6.1>; Is this an Active Connection or Standby Connection: 输入standby
          9.2.6.2>; Logical DS Name : 输入主服务器名HRB_HB
          9.2.6.3>; Logical DB Name :  输入主数据库名maindb
          9.2.6.4>; Active DS Name : 输入主服务器名HRB_HB
          9.2.6.5>; Active DB Name :  输入主数据库名maindb
          9.2.6.6>; Active Db sa password : 输入主数据库sa口令
   9.3>; 如果所有选项全部为complete状态,添加数据库

10. 从主库dump到备份库load&online
11. 在复制服务器中恢复连接
    isql -Usa -P -SHRB_REP
    1>; resume connection to HRB_HB.maindb
    2>; go
    1>; resume connection to HRB_HB_REP.maindb
    2>; go
12. 修改备份库HRB_HB_REP的参数与主库HRB_HB一致,锁的数量最好要大于主库。



 Hello_bluesky 回复于:2005-09-22 08:30:33




 echoaix 回复于:2005-09-22 09:42:33

顺便说一下,很多朋友问我要rep server,发mail肯定是不可能的,太大了。我也一直想上传到sybase版的ftp上,可是速度不到1K,所以做罢。不过现在ftp上好象已经有人传了,大家可以试试。


 I_no 回复于:2005-10-09 12:00:04

好贴,顶


 dyhlx 回复于:2005-10-09 12:54:34

但是好像rep server的排序顺序只能是缺省的binary,而我的SQL SERVER排序顺序是altnocsp,这样整个复制系统运行起来不稳定,请教各位大虾,指导一二!!!


 jtyhyl 回复于:2005-10-10 10:59:36

没用过,不过还是收藏先


 echoaix 回复于:2005-11-22 16:28:36

我顶


 megaman 回复于:2005-11-22 20:06:20

今天按楼主的方法配过了,,配置过程中也没什么错,不过DUMP和LOAD过程没做,目标数据库是空的,目前来看,源数据库中的表没复过去,源数据库尚没有作任何操作,明天准备先把源数据库清空了再试


 leno_mx 回复于:2005-11-26 17:51:17

好,顶


 pana 回复于:2005-12-30 19:02:41

如果数据库中的表未标记为复制行不行??????


 leno_mx 回复于:2006-01-03 11:27:29

不行




原文链接:http://bbs.chinaunix.net/viewthread.php?tid=615296
转载请注明作者名及原文出处



收藏本页到: