Quantcast
Channel: SQL Server Replication forum
Viewing all 4054 articles
Browse latest View live

SQL server merge replication performance

$
0
0

Hi,

We have an sql server merge replication topology. We are having sql server 2012 standard edition publisher and 2008 subscribers.

We are facing the issue of slowness in merge replication where network bandwidth is high.Insert ,updates are taking more than 1hour while it should not be.

Please suggest us ASAP.

Thanks,

Shrutika


automate script execution after replication set up

$
0
0

i am working on simplify things in replication in terms of automation,at the time of database refresh activity from production once replication set up done and after snapshot initialization there are approx 7 scripts manually executed. 

2 for publisher (indexes , permissions), 5 on subscriber (Indexes , permission, triggers, etc..)

please suggest something to automate it.

Slow merge replication over a WAN link - only downloads

$
0
0

Hi all,

We've been using SQL Server merge replication for a few years to synchronise data between our data centres, but we are now suffering with a big performance issue. This may be because the amount of data we are synchronising has increased a lot this year.

Our publisher is an always-on data centre in the UK. Our subscriber is a mobile data centre that travels around the world and is on for periods of up to a week at a time, approx. 25 times a year. However, it also spends the same amount of time (if not more) switched off whilst on its travels - it is a well travelled data centre!

We have 5 database that we synchronise on these servers. However, one of our databases has high numbers of data changes between periods of subscriber downtime and our issue is that it take days to catch up when the server is powered up - the other databases are fine.

Downloads from publisher to subscriber run at about 1.5 rows a second (which is annoying when we have hundreds of thousands of rows) but strangely uploads from subscriber to publisher run about ten times faster.

Things I have checked / tried:

  • all tables have non-clustered primary keys on guid columns that have the rowguid property set
  • changing the generation levelling threshold doesn't help
  • setting the agent profile to high volume doesn't help
  • running a trace at the publisher and subscriber shows the queries are all running very fast (less than 20 m/s generally, but there are gaps of 200 m/s or so between some batches of queries)
  • analysis on our WAN link shows we have huge amounts of bandwidth spare
  • analysis on our servers show we have huge amounts of Ram and CPU spare

Some of the places the subscriber is at do suffer from high latency but this doesn't seem to have an impact - 300 m/s or 100m/s and we still get the same poor performance.

One things I did wonder about - does the replication confirm to the publisher every time it has successfully processed a row at the subscriber? If we have thousands of rows and there is a latency on the line will this compound the issue if it confirms each item? If this does happen, is there a way to batch up messages between publisher and subscriber?

Any help that you can offer will be gladly received!

Thanks

Mark


Delay in synchronization -- Merge Pull Subscription

$
0
0

I have a situation where i have Merge pull subscription using web synchronization. My replicaiton was working fine but one fine day it started getting slow and it is showing lot of pending changes to be synced.

I did notice that my download changes to subscriptions are working fine in quick fashion where as my upload changes takes lot of time die to which all the subscribers are stuck with lot of pending changes. I checked index fragmentation and missing indexes and all are upto date. Kindly help me debug this issue. 


HiSam

ReadCertificateThumprint : Failed to get SSB certificate thumbprint

$
0
0

Hello, 

I am installing a secondary site for SCCM and having issues in the SQL portion when it gets to setting up SSB. I'm not sure if it's directly pertinent to the SQL portion but here is what I've done so far on the config mgr side. 

    • -       SCCM 2012 Primary Site in datacenter
    • -       SQL Server 2012 hosted on the primary site server
    • -       Firewall ports opened for 80, 135, 443, 445, 1433, 4022, 8530 on cisco and host firewalls
    • -    I then opened up all firewall ports in the network and host(s) in each direction for troubleshooting when the above didn't work.
    • -       Attempting to have secondary site at each branch office
    • -       Secondary site server computer account is in local admin group on primary
    • -       Primary site server computer account is in local admin group on secondary
    • -       Secondary site server has full access to system management container in AD
    • -       Secondary site server computer account is in a security group which has sysadmin rights on the primary SQL Server
    • -       Utilizing Secondary Site Server pre-existing SQL 2008 R2 instance
    • -       Confirmed 1433, and 4022 accessibility with telnet from secondary to primary

    I run the secondary site wizard from the console, it passes all prereqs and runs setup for about 5 minutes on the secondary site server and fails here (ConfigMgrSetup.log):

    • ***Select dbo.fnConverBinaryToBase64String9thumbprint) FROM master.sys.certificates WHERE name='ConfigMgrEndpointCert"
    • CSControlSetup::ReadCertificateThumbprint : Failed to get SSB certificate thumbprint.
    • Error: Failed to setup SQL Server certificate for service broker "%NameOfMySecondarySiteServer%"
    • Error:Failed to initialize site control data.

I've searched around and the only thing I can find is in relevance to an LSA password filter reg key, but I do not have on that box. 

Any ideas? 

Thanks! 

New article will not replicate to subscriber

$
0
0

I have a very strange problem.

I have an existing publisher/subscription, which is working perfectly.  We added a new article using the SSMS 2012 GUI to the publication, ran snapshot agent, which shows it successfully generated the single article.  I see the snapshot files in the replication directory on the file system.

However, it will not create the new table on the subscriber.   It does not show any errors in the logs and replication is continuing from other tables normally.  I see the commands for the init of the new article in sp_browsereplcmds.

If I add a tracer token it goes in 4 seconds.

Unfortunately, this is a large Production subscription, so I would rather not reinit the entire subscription if I can help it.

Any ideas?

Publisher:  Microsoft SQL Server 2012 (SP1) - 11.0.3412.0 (X64)

Subscriber: Microsoft SQL Server 2008 R2 (SP2) - 10.50.4000.0 (X64)

Replication - Error with real data type

$
0
0

Hi Everybody,

I have a replication problem on a certain SQL Server 2012 build 2100. First of all:

- Tables are the same on Publisher and Subscriber (double-checked)

The problem is 8152 - String or binary would be truncated. Since I know this error, I looked for the command (xact_seqno) and it shows:

{CALL [sp_MSins_tbl2Replicate]
({7B914E3E-25ED-E411-BC82-005056A54F21}
,{BA54EA41-ECE1-4F4B-7A63-08D05A57DCC9}
,{51BEC1B8-F6D2-E411-BC82-005056A54F21}
,1
,NULL
,N'2015-04-27'
,{87766F58-A0C8-41E6-E7D4-08CFE45FE017}
,2
,2.81122997072606E-313
,N'2015-04-27 23:34:59.7600274'
,{87766F58-A0C8-41E6-E7D4-08CFE45FE017}
,NULL
,{0AB7C33E-0B3E-E211-A06F-005056A54F21},NULL,NULL,0,NULL,NULL)}

My problem is the value "2.81122997072606E-313" since this field is a real field. I dont understand that. The Value is way to small and a SELECT in the Publisher-DB shows a "1". Does anybody has an idea?

Thanks

Dave

Issue Regarding Replication

$
0
0

hi,

while setting replication i got the following errors, please help to resovle it
thanks in advance.



The process could not execute 'sp_repldone/sp_replcounters' on 'sqldb2008'. (Source: MSSQL_REPL, Error number: MSSQL_REPL20011)
Get help: http://help/MSSQL_REPL20011

The specified LSN {00000000:00000000:0000} for repldone log scan occurs before the 

current start of replication in the log {001317bf:0000f736:0008}. (Source: 

MSSQLServer, Error number: 18768)
Get help: http://help/18768

The process could not set the last distributed transaction. (Source: MSSQL_REPL, 

Error number: MSSQL_REPL22017)
Get help: http://help/MSSQL_REPL22017

The process could not execute 'sp_repldone/sp_replcounters' on 'sqldb2008'. (Source: MSSQL_REPL, Error number: MSSQL_REPL22037)



Database Mirroring and replication

$
0
0
Hi,

can mirroring and replication is possible on same instance of sql
of sql server 2008. if yes then please provide the  information.

thanks in advance.

restructuring DBs

$
0
0
Current scnerio
we have a database DB1 and it is replicating (using transactional replication) most of the object in database DB2 (but not all objects).
Database DB2 also have few it own objects which does not exist in database DB1.

problem
now the problem is whenever we deploy our changes we have to make changes in both the databases separately (DB1 & DB2).

requirement
requirement is that, we want to make database DB2 a strict copy or subset of database DB1 means all the objects which are available in database DB2 should also be there in DB1.

the objects of database DB2 should get replicated from database DB1 only. there should not be any independent object in Database DB2, so that there will only be one point of deployment changes which will be database DB1.

kindly help to suggest what should be the best approach to achieve requirement which is mentioned above.

Mutiple Publication, looking for distribution clean up retention specific to publisher database

$
0
0

We have distribution clean up retention set to 24 hours.

EXEC dbo.sp_MSdistribution_cleanup @min_distretention = 0, @max_distretention = 24

We have three publications and would like to keep different distribution retention for each of them. Is this possible?

dbo.sp_MSdistribution_cleanup just have three parameter, if it possible to key in publisher_database_id and it will perform distribution clean up only for that?

Thanks,

-SreejitG

"Enforce for replication" foreign key setting not replicated

$
0
0

Hello,

We have an SQL Server 2008 R2 database (several, in fact) that we use Merge Replication on with multiple subscribers. Several of the replicated tables have a foreign key relationship to each other.

As an example, imagine that we have a "Login" table that contains a "user_id" column, which is a foreign key to the "User" table where "user_id" is the primary key.

Both User and Login entries can be created on a subscriber, and are expected to be uploaded to the publisher when the former synchronises (which is done manually). What we observe is that when both a User and Login entry have been created on a subscriber, the User entry is uploaded normally but there is an "Upload insert failed" conflict on the Login entry.

Researching further, I've noticed that although on the Publisher, the "Enforce for replication" setting is set to True on all FKs on the publisher, all FKs on a subscriber have it set to False. This happens immediately after initialisation on a new subscriber.

It seems that, with the setting set to False, table synchronisation is done alphabetically and so Login fails since the User its FK refers to hasn't been uploaded yet.

The same problem has been noted in this post: https://social.msdn.microsoft.com/Forums/sqlserver/en-US/7652d18a-fe14-434b-b96b-9dfee099a150/constraint-violation-in-merge-replication#61d1abfd-b5a0-4be0-a566-d3bd79c8db25

However no explanation has been offered.

We could of course create a script that finds all foreign keys, drops them and re-creates them without specifying "NOT FOR REPLICATION", as this is a behaviour we obviously do not want. However we'd prefer it if there was a way to ensure the FKs are created correctly on subscribers to begin with.

Is this a bug in SQL server that still hasn't been fixed, or is there a replication setting that prevents or causes this behaviour?


Transactional replication of a 6 billion+ record article only replicating a total of 2147473647 records

$
0
0

We are using SQL 2014 transaction replication to replicate a huge table, about 6 billion records. I created a publication just for this article on a sql 2014 publisher server and the subscription is on a different sql 2012 server.  The distribution db is also a sql 2014 server on a separate server.   Once I started the initial snapshot which was successful, synchronization started and ended in about 8 hours.   Everything looks fine and no errors but the subscription db  only has a little bit over 2 billion records, 2147473647 in the table.  I thought I did something wrong so I dropped the subscription and article and did the whole thing again.... again same result, 2147473647 in subscriber db.   When I look at the number closely, 2147473647  is almost the same number as the integer max limit.     I am wondering if I am hitting some limit or having some setting incorrectly.  

Normally for this kind of big table, I use the 'initialize with backup' method but the problem is that my subscriber server is a sql 2012 server.   And I can't upgrade it to sql 2014. 

Any help on this is very much appreciated.

OD

 

Ocean Deep

Can you replicate databases from SQL Server 2014 Enterprise Edition to SQL Server 2014 Standard edition?

$
0
0

Hello,

Can you replicate databases from SQL Server 2014 Enterprise Edition to SQL Server 2014 Standard edition? 

Thanks. 

Merge replication - multi site, multi distributor, publisher, subscribers ...

$
0
0

Hi,

We have 2 sites at the moment. Each site has 2 servers. To reduce network load I was aiming at doing the following with a merge replication :

* configure one server at each site to be distributor and publisher

* configure the other server at each site to be a subscriber

* configure the 2 publishers to also be subscribers to each other to sync the sites.

Or even better:

* have all the servers be distributors, publishers and subscribers, so that if one dies, who cares as they all have the same configuration.

Also, I was thinking of:

* having the distributor and publishers use a DFS share replicated on both sites (or maybe the same share on each sql server ? not sure what the best practice is on this one)

However, I can't seem to find a good post / thread where it describes this kind of scenario in a step by step way nor what happens to the identity range management.

If you could share any light on this or point me to the right English terms to describe the above scenario, thanks in advance.

Olivier

PS: We only have STD edition, so peer to peer and AG are not available to US. (which is why we are using merge)

PS2: One way I could see this work is if I manually set the identity columns in the tables so that they won't overlap and make the range management manual. Then just setup publications / distributors and subscribers on each node. (But if I can dodge the manual management, it be great)


SQL Server Replication: Sybase as publisher and SQL Server as Subscriber possible or not?

$
0
0

Hi,

Using SQL Server Replication, data pulling from Sybase to SQL Server is possible or not?
--sybase has publisher and sql has subscriber

Thanks  

Replication Monitor Error

$
0
0

We are using merge replication on SQL 2012.

Getting below 2 errors in Replication monitor:

"Replication monitor could not open the details window
specified cast is not valid"

"Replication monitor could not open the details window
The start context provided for this detail windows is incomplete. The following input is missing:
SnapshotAgentName (ReplicationMonitor)"



log shipping stop working

$
0
0

Dear all,

I have configured log shipping to our DR site. Both SQL versions are 2008 r2. The replication works fine for 5-6 days. then for no reason stop working   and the secondary database stays in restoring mode while normaly should stay in standby mode. I cannot find any error. I have configure it again and after some days again stop working. Does anyone have any idea why this may happen?

Regards

Pantos

Can we set transactional replication between SQL 2014 DB and SQL 2012 DB

$
0
0

We need to set up Transactional replication between two servers A and B: Configs listed below:

Server A (Publisher)

Microsoft SQL Server 2014 - 12.0.2254.0 (X64)

Enterprise Edition (64-bit)

Single database of approx 1.5 TB( this would be the database to be replicated on server B

CPU - 4 Intel Xeon CPU E7-8893 v2 @ 3.4GHZ

Server B (Subscriber & Distributor)

Microsoft SQL Server 2012 - 11.0.5058.0 (X64)

Standard Edition (64-bit)

CPU - 1 AMD Operon 6378 processor 64 bit 2.40 GHz (4 Core) ( Better RAM and CPU will be added when moved to better Hyper V server)

I am new to the replication concept so would like you're expertise to confirm:

  1. If we can set up the transactional replication between server A of version 2014 and server B of version 2012. Tried to Google out but could not find the exact documents because may be am looking somewhere wrong. Please suggest if it can be set up?
  2. We need to implement encryption on server A, but this encrypted data needs not to go on server B as that is SAN encrypted. Is there a way we can do this, if replication can be successfully implemented as asked in point 1?

Thanks in advance

A trigger returned a resultset and/or was running with SET NOCOUNT OFF while another outstanding result set was active

$
0
0

I have 2 servers connected over a low speed wan and we're running SQL Server 2008 with Merge replication.

At the subscriber, sometimes when attempting to insert new rows, I get this error:

A trigger returned a resultset and/or was running with SET NOCOUNT OFF while another outstanding result set was active.

  • My database doesn't have any triggers; the only triggers are the one created by the Merge replication
  • Also, whenever this error occurs it automatically rolls back the existing transaction
  • I am using DataTables and TableAdapters to insert and update the database using transactions

What I have checked:

  1. the database log file size is below 50Mb
  2. Checked the source code for Zombie transactions (since I wasn't able to retrieve the actual error at the beginning)
  3. Checked the connection between the two servers and found it congested

Questions:

  1. How to avoid this behavior and why it's occurring at first place?
  2. Why it's cancelling the open transaction?
Viewing all 4054 articles
Browse latest View live




Latest Images