免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: baggerking
打印 上一主题 下一主题

求助,sybase不能复制问题,高手请留步 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2011-09-24 14:05 |只看该作者
高手指点...未解决

论坛徽章:
0
12 [报告]
发表于 2011-09-24 15:26 |只看该作者

论坛徽章:
7
数据库技术版块每日发帖之星
日期:2015-08-09 06:20:00数据库技术版块每日发帖之星
日期:2015-11-03 06:20:00数据库技术版块每日发帖之星
日期:2016-02-20 06:20:00数据库技术版块每日发帖之星
日期:2016-07-13 06:20:00数据库技术版块每日发帖之星
日期:2016-07-31 06:20:00数据库技术版块每日发帖之星
日期:2016-08-01 06:20:00数据库技术版块每日发帖之星
日期:2016-08-18 06:20:00
13 [报告]
发表于 2011-09-26 09:39 |只看该作者
你给出的信息相当混乱——
1. disk_space和对应who,sqm的变化情况没有跟踪显示
2. 先说"表少的时候可以复制,表多了就不复制了",看来是整个rs系统都已经不工作了,接着又说"有些表可以复制,有些不行",那到底是什么情况?
3. 直到最后,你的复制模式(表级?库级?func级?)和定义以及预订模板也没写出来。
4. 周末时间……大家都懂的。

论坛徽章:
0
14 [报告]
发表于 2011-09-26 10:02 |只看该作者
admin who_is_down居然没给出来?

admin quiesce_force_rsi,看看错误日志报啥新的了?

然后数据重要的话就看看哪里出了问题修复,不重要主要要保证复制运行的话,就是purge 掉,以后补数据

论坛徽章:
0
15 [报告]
发表于 2011-09-26 11:12 |只看该作者
你给出的信息相当混乱——
1. disk_space和对应who,sqm的变化情况没有跟踪显示
2. 先说"表少的时候可以复 ...
Eisen 发表于 2011-09-26 09:39



    你给出的信息相当混乱——
1. disk_space和对应who,sqm的变化情况没有跟踪显示
--这个不知道怎么去跟踪...
2. 先说"表少的时候可以复制,表多了就不复制了",看来是整个rs系统都已经不工作了,接着又说"有些表可以复制,有些不行",那到底是什么情况?
--有些表可以复制,有些不能复制,(2个表的复制定义发布用的是一样的模板,但没有对应的日志,admin health也一直是health)
3. 直到最后,你的复制模式(表级?库级?func级?)和定义以及预订模板也没写出来。
--复制模式是表级复制,复制步骤跟定义以及预订模板如下:
<1>添加主库跟复制库操作基本一样(2个库既作主库也作备库)
--#以方便区分步骤^_^
#6. 在rs_init中增加主库到复制中,选择 add a database to the replication system
#6.1> Replication Server Information
#6.1.1> 输入复制服务器名字PRODREP
#6.2> Database Information
#6.2.1> SQL Server Name: 输入主数据库服务器名 PB_PROD
#6.2.2> SA password : 输入sa口令
#6.2.3> Database name: 输入主库名 Dgloss_static
#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 : 输入主服务器名 PB_PROD
#6.2.6.3> Logical DB Name : 输入主数据库名 Dgloss_static
#6.3> 如果所有选项全部为complete状态,添加数据库
<2>定义以及预订模板:
#1. 主点允许复制
#isql -Usa -SPB_PROD -P
#use Dgloss_static
#go
#sp_setreptable  dld_frn,true  
#go
#2.出版 --RS执行
#isql -Usa -SREP_PROD -P
#create publication "dld_frn_Dgloss_static_repdef"
#with primary at PB_PROD.Dgloss_static
#go   
#create replication definition "dld_frn_Dgloss_static_repdef"
#with primary at PB_PROD.Dgloss_static
# with all tables named "dld_frn"
#(
#    instr_no     char(12) ,
#    start_date   datetime ,
#    end_date     datetime ,
#    rate         float    ,
#    version_date datetime ,
#    retry_ind    char(1)   
#)  primary key (instr_no, start_date, version_date)
#go      
#4.订阅 --RS执行
#create subscription dld_frn108110
#for dld_frn_Dgloss_static_repdef
#with replicate at Depot_PROD.cs2
#go
4. 周末时间……大家都懂的。
--非常感谢你的回复 --(@

另外我的复制环境是这样搭建的
主点,RS(RSSD建在非主备库上),备库

论坛徽章:
0
16 [报告]
发表于 2011-09-26 11:15 |只看该作者
admin who_is_down居然没给出来?

admin quiesce_force_rsi,看看错误日志报啥新的了?

然后数据重要 ...
hefan 发表于 2011-09-26 10:02


admin who_is_down一直是health的,但quiesece一直是false,如下:
1> admin who_is_down
2> go
Spid Name       State                Info
---- ---------- -------------------- ----------------------------------------
1> admin quiesce_force_rsi
2> go
Msg 6059, Level 12, State 0:
Server 'PRODREP':
Can't quiesce. Materialization in progress. Queue 104:-2147483547.
1> admin health
2> go
Mode             Quiesce  Status
---------------- -------- --------
NORMAL           FALSE    HEALTHY

论坛徽章:
0
17 [报告]
发表于 2011-09-26 12:24 |只看该作者
我现在想让复制正常运行,之前不同步的数据就暂时不理了

论坛徽章:
7
数据库技术版块每日发帖之星
日期:2015-08-09 06:20:00数据库技术版块每日发帖之星
日期:2015-11-03 06:20:00数据库技术版块每日发帖之星
日期:2016-02-20 06:20:00数据库技术版块每日发帖之星
日期:2016-07-13 06:20:00数据库技术版块每日发帖之星
日期:2016-07-31 06:20:00数据库技术版块每日发帖之星
日期:2016-08-01 06:20:00数据库技术版块每日发帖之星
日期:2016-08-18 06:20:00
18 [报告]
发表于 2011-09-26 12:24 |只看该作者
越发混乱了,表级复制,又启用了logical connection?
怀疑你的这些脚本也都是前任留给你的古老版本,和实际系统中运行的不一致。所以你描述的现象和你给出的脚本不一致啊。没准得实际到系统里面去查一遍才好知道到底你们的系统是怎么架设和配置的。
ps: purge了queue之后,应该是没法quiesce_force_rsi的。

论坛徽章:
0
19 [报告]
发表于 2011-09-26 13:52 |只看该作者
越发混乱了,表级复制,又启用了logical connection?
怀疑你的这些脚本也都是前任留给你的古老版本,和实际 ...
Eisen 发表于 2011-09-26 12:24



    这些步骤是我自己根据资料测试后整理出来的,RS方面基本没经验...

    表级复制不用建create logical connection吗? 那应该如何处理呢?我整理的步骤如下,麻烦看看有什么问题:
sybase复制步骤

复制服务器名字 : PRODREP

1. interface 复制服务器和ASE数据库的interfaces中都要包括上面三个server的接口信息
2. 用复制服务器安装的用户登录。
3. 使用rs_init 安装复制服务器  
1> Configure a Server product
2> Replication Server
3> Install a new Replication Server
3.1> Replication Server Information
3.1.1 输入复制服务器的名字 PRODREP
3.1.2 Is this Replication Server the ID Server 选择Yes
3.2> Replication Server System Database
3.2.1 RSSD SQL Server Name: 输入安装复制服务器系统库的数据库服务器名字 IFOPAPP186
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: 输入PRODREP_RSSD数据库的大小(500M)
3.3.2 RSSD device name : 输入数据库设备的名字
3.3.3 如果数据库中没有建立设备,选择 Create the RSSD device 并输入设备文件名和大小
3.3.4 Size of the RSSD Database: 输入PRODREP_RSSD日志的大小(500M)
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的大小(1024M)
3.5> 如果所有选项全部为complete状态,按ctrl-a创建复制服务器
创建完后不要退出rs_init,后面还要用

*****按附件"rs_parameter_configure.sql " 配置RS******

4. 在主点数据库和备份点数据库服务器中分别执行(2库名不同)
设置数据库服务器可以复制
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 PB_PROD.Dgloss_static
2> go
6. 在rs_init中增加主库到复制中,选择 add a database to the replication system
6.1> Replication Server Information
6.1.1> 输入复制服务器名字PRODREP
6.2> Database Information
6.2.1> SQL Server Name: 输入主数据库服务器名 PB_PROD
6.2.2> SA password : 输入sa口令
6.2.3> Database name: 输入主库名 Dgloss_static
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 : 输入主服务器名 PB_PROD
6.2.6.3> Logical DB Name : 输入主数据库名 Dgloss_static
6.3> 如果所有选项全部为complete状态,添加数据库

7. 在主数据库服务器中执行
isql -Usa -P<password> -SPB_PROD
1> use Dgloss_static
2> go
1> grant role sa_role to Dgloss_static_maint
2> go
在备份数据库服务器中执行
isql -Usa -P<password> -SDepot_PROD
1> use master
2> go
1> sp_addlogin Dgloss_static_maint,Dgloss_static_maint_ps,@defdb="cs2"
2> go
1> use maindb
2> go
1> sp_adduser Dgloss_static_maint
2> go
1> grant role sa_role to Dgloss_static_maint
2> go

8. 同步主库Depot_PROD和备份库PB_PROD的login和role、权限等,要保证两台机器的login id一致
9. 在复制服务器中执行添加到备库的connection
isql -Usa -P -S<rep_servername>;
1>; create logical connection to Depot_PROD.cs2  
2>; go
10. 在rs_init中增加备库到复制中,选择 add a database to the replication system
10.1>; Replication Server Information
10.1.1>; 输入复制服务器名字 PRODREP
10.2>; Database Information
10.2.1>; SQL Server Name: 输入主数据库服务器名 Depot_PROD
10.2.2>; SA password : 输入sa口令
10.2.3>; Database name: 输入备库名 cs2
10.2.4>; Will database be replicated : 选择Yes
10.2.5>; Is this a Physical Connection for Existing Logical Connection: 选择Yes
10.2.6>; Logical DB Setup
10.2.6.1>; Is this an Active Connection or Standby Connection: 选择active
10.2.6.2>; Logical DS Name : 输入备服务器名 Depot_PROD
10.2.6.3>; Logical DB Name : 输入备数据库名 cs2
10.3>; 如果所有选项全部为complete状态,添加数据库
11. bcp同步数据
12.按另一附件"rs发布预定.sql"操作

论坛徽章:
7
数据库技术版块每日发帖之星
日期:2015-08-09 06:20:00数据库技术版块每日发帖之星
日期:2015-11-03 06:20:00数据库技术版块每日发帖之星
日期:2016-02-20 06:20:00数据库技术版块每日发帖之星
日期:2016-07-13 06:20:00数据库技术版块每日发帖之星
日期:2016-07-31 06:20:00数据库技术版块每日发帖之星
日期:2016-08-01 06:20:00数据库技术版块每日发帖之星
日期:2016-08-18 06:20:00
20 [报告]
发表于 2011-09-26 14:21 |只看该作者
我现在想让复制正常运行,之前不同步的数据就暂时不理了
baggerking 发表于 2011-09-26 12:24



        那个简单,rebuild queues然后在route 各端执行ignore loss ...即可正常。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP