Unable to create witness for Mirroring!

  • Hi,

    Wonder if you guys could help as I’m quite stuck on this. I’m trying to set up database mirroring with auto failover (so need witness) and I’m getting an error I’m not able to get round.

    Now I have set up mirroring without witness between the Principal and the Mirror no problem. These have the same version of SQL and use the same domain service account.

    The witness is on same domain but different network, and SQL on this machine uses a different service account. The server details are as follows:

    Principal

    Server: WEBDB-01

    Product Version: 10.50.1600.1

    ServicePack: RTM

    Edition: Standard Edition (64-bit)

    IP: 192.168.***.***

    Mirror

    Server: WEBDB-02

    Product Version: 10.50.1600.1

    ServicePack: RTM

    Edition: Standard Edition (64-bit)

    IP: 192.168.***.***

    Witness

    Server: FAX-01

    Product Version: 9.00.4053.00

    ServicePack: SP3

    Edition: Standard Edition

    IP: 10.0.**.**

    Now each time I try and set up the witness I get the following message in the principals SQL log:

    Msg 1456, Level 16, State 3

    The ALTER DATABASE command could not be sent to the remote server instance 'TCP://INF-FAX-01.*domain*.com:5022'. The database mirroring configuration was not changed. Verify that the server is connected, and try again.

    Now I know that the severs can communicate to each other as I can issue a telnet command.

    When I set up mirroring via the wizard I specify for each server the service account it uses.

    I have also tried setting up mirroring using certificates get same issue.

    Would someone be able to help me troubleshoot this? Please let me know if you require more info.

    I’m not sure if this makes a difference but the principal and mirror are on Windows Server 2008 R2 Enterprise.

    The witness is on Windows server 2003 R2 Standard.

    ANY help appreciated!!!

    Cheers,

    Sam

  • Sam -480699 (11/23/2010)


    Witness

    Server: FAX-01

    Product Version: 9.00.4053.00

    ServicePack: SP3

    Edition: Standard Edition

    IP: 10.0.**.**

    Yours principal and mirror server are SQL 2008 version. Witness is 2005.

    Also Witness IP (10.0.*.*) is different from others.

  • Hi,

    Thanks for reply. It's my understanding that you can have 2005 SQL as a witness, as far as I know it shouldn't be a problem? I did try and read up on this and couldn't find any documentation stating otherwise, so if you have this please point me in right direction.

    As for the IP, yes it's different, however, will this cause major problem though? I have tested that the servers can ping each other via FQDN and can connect via telnet commands.

    Anymore input would be much appreciated!

    Cheers,

    Sam

  • Sam -480699 (11/24/2010)


    It's my understanding that you can have 2005 SQL as a witness, as far as I know it shouldn't be a problem? I did try and read up on this and couldn't find any documentation stating otherwise, so if you have this please point me in right direction.

    The BOL on my PC (SQL SERVER 2008 SP1) (ms-help://MS.SQLCC.v10/MS.SQLSVR.v10.en/s10de_4deptrbl/html/a7f95ddc-5154-4ed5-8117-c9fcf2221f13.htm) has this sentence under Database Mirroring Overview.

    Establishing a new mirroring session requires that all involved server instances run the same version of SQL Server.

  • Can they all communicate with each other using netbios names? You might need to hack your hosts file to make sure they can do this.

  • Hi Guys,

    Thanks for your input, I was able to get this working in the end. As previously mentioned, you do need a SQL 2008 engine to act as a witness, you can't have 2005. What I did was install SQL 2008 express on another test machine with same service account and it worked!

    Again, thanks for your help.

    Cheers,

    Sam

Viewing 6 posts - 1 through 5 (of 5 total)

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