SQL Server replication requires the actual server name to make a connection to the server

  • I have 2 servers:

    1.Online server: which is a publisher (SQL Server 2008 R2 workgroup edition)

    2.Local server: a subscriber(well string trying to make it one) (SQL Server 2008 R2 enterprise edition)

    I can connect easily to the online server using the local SSMS, but when i try to create a subscription from the local server it gives me the following error:

    SQL Server replication requires the actual server name to make a connection to the server. Connections through a server alias, IP address, or any other alternate name are not supported. Specify the actual server name, 'kkkkk'. (Replication.Utilities)

    kkkkk is the name of the online server.

    i searched a lot, just always the answer was related to that the name of one of the servers has been changed. but this is not the case for me.

    Please note:

    1.none of the server names has been changed

    2.SQL Server Browser and agent are running on both servers

    3.as i said before, using SSMS i can connect to the online server easily

    Im stuck and not sure what to do, i think its a misleading error message.

    Thanks

  • There's a couple of things worth checking, firstly that you aren't trying to connect to a named instance (bear in mind that even named instances can be forced into listening on 1433 which would mean that you wouldn't have to provide an instance name) and secondly that you aren't using some entry in the hosts file or client alias for that connection.



    Shamless self promotion - read my blog http://sirsql.net

  • the online instance im trying to connect to is the default instance...

    and as i said , i can connect to it using the SQL Server Management studio, just this error appears when im trying to create a subscription.

    I created an alias for the online instance, just also the same problem

  • If you log on to the publisher are you able to successfully make a connection to the subscriber using SSMS?



    Shamless self promotion - read my blog http://sirsql.net

  • i didnt try it...just the subriber doesnt have a static IP, thats why the online is the publisher because it has a static IP

  • A static IP isn't required for a subscriber (although it's best to have one if possible).

    I only mention using SSMS from the publisher as it's a great way to test and confirm that you are able to hit the subscriber without any issues.



    Shamless self promotion - read my blog http://sirsql.net

  • Execute below command and see if it returns the same server name, that you are using in SSMS to connect to it.

    SELECT @@SERVERNAME

    If it returns different name, means you need to drop and add the new server name. Use below commands.

    sp_dropserver 'old_server_name'

    GO

    sp_addserver 'current_SQL_Server_Name'

    This issue happens when we rename windows server or create new server with an image of existing server that has SQL Server instance installed on it.

  • yes i tried it before, it return the same server name.

    Well i think the problem is that installed instance on the online server is the default instance, so it does not have a name. Which means when i try to create subsription i connect to SQL Server using the IP Address without any name of an SQL instance because its the default one

    i will try to install the SQL Server again with a name this time and try again

  • Don't use the IP address, use the server name (the @@servername value). Specifying an instance doesn't make a difference here.



    Shamless self promotion - read my blog http://sirsql.net

Viewing 9 posts - 1 through 8 (of 8 total)

You must be logged in to reply to this topic. Login to reply