zoukankan      html  css  js  c++  java
  • "SQLServer复制需要有实际的服务器名称才能连接到服务器,请指定实际的服务器名"

    最近在学习SQL SERVER的高级复制技术的时候,遇到一个小问题,就是用本地SQL SERVER连接服务器的数据库时,在查看复制功能的发布服务器时,连接不上,弹出一个错误提示框架,如下:

    原来在自己本地的实例是一切操作正常的,一连接到远程服务器时就出现这个问题,后来在网上找了下,发现有这两种情况:
    一、自己本身的计算机名称修改过,导致与服务器不一致。
    二、在直接用IP地址连接远程服务器时,如果不用别名来连接的话,就会出现上面这个错误提示框。

    第一种情况下:
    在SQL SERVER里面执行下面语句:

    use master
    go
    select @@servername;
    select serverproperty('servername')

    使用上面的语句查询服务器的名称和实际计算机的名称,如果两者不一致,就需要修改。
    不一致就执行下面的语句:

    -- 将"服务器名", 修改为正确的计算机名
    EXEC sp_dropserver '服务器名[/命名实例名]';           -- 即旧的计算机名
    GO
    EXEC sp_addserver '计算机名[/命名实例名]', 'local'; -- 即新的计算机名

    go

    修改完后,重启SQL SERVER服务。

    第二种情况下:
    为远程服务器增加“别名”,使用别名代替IP地址来连接远程数据库服务器。(我自己用的是SQL SERVER2012)
    打开SQL SERVER2012的配置管理器,定位到“别名”服务选项,如下:


    右键--->新建别名:

    这里的这个"别名"就用服务器名称,就是用上面的SQL 语句查询出来的名称:(select @@servername;),IP地址就是这台服务器的访问地址。


    接着在本机的hosts添加相应的IP地址和别名:
    C:WindowsSystem32driversetc

    hosts:

    IP地址        别名

    例如:

    172.168.1.15     sniper

    修改完,保存.


    都修改完后,重启一下SQL SERVER服务。

    再次连接的时候,使用“别名”代替IP地址去连接服务器即可:


    至此,问题解决!

  • 相关阅读:
    通过注册表选择文件默认打开方式
    oracle的imp和exp
    oracle 10g正则表达式 REGEXP_LIKE 用法
    oracle varchar 和varchar2的区别
    Oracle lower(Upper)函数|大小写|
    NC资金管理对外付款自动选上“网上支付”设置
    wmsys.wm_concat的几个用法
    GridView使用初步
    JavaScript学习笔记(一)—细节问题
    图片水印功能
  • 原文地址:https://www.cnblogs.com/chongyao/p/6491571.html
Copyright © 2011-2022 走看看