远程的IP为 123.65.214.117我现在本地想通过这个IP连接远程的数据库并希望有端口号,例 
123.65.214.117,8010请简单说明操作步骤,成功后马上结贴.
在线

解决方案 »

  1.   

    不同服务器数据库之间的数据操作--创建链接服务器 
    exec sp_addlinkedserver   'ITSV ', ' ', 'SQLOLEDB ', '远程服务器名或ip地址 ' 
    exec sp_addlinkedsrvlogin  'ITSV ', 'false ',null, '用户名 ', '密码 ' --查询示例 
    select * from ITSV.数据库名.dbo.表名 --导入示例 
    select * into 表 from ITSV.数据库名.dbo.表名 --以后不再使用时删除链接服务器 
    exec sp_dropserver  'ITSV ', 'droplogins ' --连接远程/局域网数据(openrowset/openquery/opendatasource) 
    --1、openrowset --查询示例 
    select * from openrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码 ',数据库名.dbo.表名) --生成本地表 
    select * into 表 from openrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码 ',数据库名.dbo.表名) --把本地表导入远程表 
    insert openrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码 ',数据库名.dbo.表名) 
    select *from 本地表 --更新本地表 
    update b 
    set b.列A=a.列A 
     from openrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码 ',数据库名.dbo.表名)as a inner join 本地表 b 
    on a.column1=b.column1 --openquery用法需要创建一个连接 --首先创建一个连接创建链接服务器 
    exec sp_addlinkedserver   'ITSV ', ' ', 'SQLOLEDB ', '远程服务器名或ip地址 ' 
    --查询 
    select * 
    FROM openquery(ITSV,  'SELECT *  FROM 数据库.dbo.表名 ') 
    --把本地表导入远程表 
    insert openquery(ITSV,  'SELECT *  FROM 数据库.dbo.表名 ') 
    select * from 本地表 
    --更新本地表 
    update b 
    set b.列B=a.列B 
    FROM openquery(ITSV,  'SELECT * FROM 数据库.dbo.表名 ') as a  
    inner join 本地表 b on a.列A=b.列A --3、opendatasource/openrowset 
    SELECT   * 
    FROM   opendatasource( 'SQLOLEDB ',  'Data Source=ip/ServerName;User ID=登陆名;Password=密码 ' ).test.dbo.roy_ta 
    --把本地表导入远程表 
    insert opendatasource( 'SQLOLEDB ',  'Data Source=ip/ServerName;User ID=登陆名;Password=密码 ').数据库.dbo.表名 
    select * from
      

  2.   


    --创建链接服务器 
    exec sp_addlinkedserver   'ITSV ', ' ', 'SQLOLEDB ', '远程服务器名或ip地址 ' 
    exec sp_addlinkedsrvlogin 'ITSV ', 'false ',null, '用户名 ', '密码 ' --查询示例 
    select * from ITSV.数据库名.dbo.表名 --导入示例 
    select * into 表 from ITSV.数据库名.dbo.表名 --以后不再使用时删除链接服务器 
    exec sp_dropserver  'ITSV ', 'droplogins ' --连接远程/局域网数据(openrowset/openquery/opendatasource) 
    --1、openrowset --查询示例 
    select * from openrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码 ',数据库名.dbo.表名) --生成本地表 
    select * into 表 from openrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码 ',数据库名.dbo.表名) --把本地表导入远程表 
    insert openrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码 ',数据库名.dbo.表名) 
    select *from 本地表 --更新本地表 
    update b 
    set b.列A=a.列A 
    from openrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码 ',数据库名.dbo.表名)as a inner join 本地表 b 
    on a.column1=b.column1 --openquery用法需要创建一个连接 --首先创建一个连接创建链接服务器 
    exec sp_addlinkedserver   'ITSV ', ' ', 'SQLOLEDB ', '远程服务器名或ip地址 ' 
    --查询 
    select * 
    FROM openquery(ITSV,  'SELECT *  FROM 数据库.dbo.表名 ') 
    --把本地表导入远程表 
    insert openquery(ITSV,  'SELECT *  FROM 数据库.dbo.表名 ') 
    select * from 本地表 
    --更新本地表 
    update b 
    set b.列B=a.列B 
    FROM openquery(ITSV,  'SELECT * FROM 数据库.dbo.表名 ') as a  
    inner join 本地表 b on a.列A=b.列A --3、opendatasource/openrowset 
    SELECT   * 
    FROM   opendatasource( 'SQLOLEDB ',  'Data Source=ip/ServerName;User ID=登陆名;Password=密码 ' ).test.dbo.roy_ta 
    ---------------------------------------------------------------------------------------
      

  3.   

    --1:环境
    服务器环境:
    机器名称: ZehuaDb 
    操作系统:Windows 2000 Server
    数据库版本:SQL 2000 Server 个人版客户端
    机器名称:Zlp
    操作系统:Windows 2000 Server
    数据库版本:SQL 2000 Server 个人版--2:建用户帐号
    在服务器端建立域用户帐号
    我的电脑管理->本地用户和组->用户->建立 
    UserName:zlp
    UserPwd:zlp--3:重新启动服务器MSSQLServer
    我的电脑->控制面版->管理工具->服务->MSSQLServer 服务
    (更改为:域用户帐号,我们新建的zlp用户 .\zlp,密码:zlp) --4:安装分发服务器
    A:配置分发服务器
    工具->复制->配置发布、订阅服务器和分发->下一步->下一步(所有的均采用默认配置)
    B:配置发布服务器
    工具->复制->创建和管理发布->选择要发布的数据库(SZ)->下一步->快照发布->下一步->
    选择要发布的内容->下一步->下一步->下一步->完成
    C:强制配置订阅服务器(推模式,拉模式与此雷同)
    工具->复制->配置发布、订阅服务器和分发->订阅服务器->新建->SQL Server数据库->输入客户端服务器名称(ZLP)->使用SQL Server 身份验证(sa,空密码)->确定->应用->确定
    D:初始化订阅
    复制监视器->发布服务器(ZEHUADB)->双击订阅->强制新建->下一步->选择启用的订阅服务器->ZLP->
    下一步->下一步->下一步->下一步->完成--5:测试配置是否成功
    复制监视器->发布服务器(ZEHUADB)->双击SZ:SZ->点状态->点立即运行代理程序
    查看:
    复制监视器->发布服务器(ZEHUADB)->SZ:SZ->选择ZLP:SZ(类型强制)->鼠标右键->启动同步处理
    如果没有错误标志(红色叉),恭喜您配置成功--6:测试数据
    --在服务器执行:
    选择一个表,执行如下SQL
    insert into WQ_NEWSGROUP_S select '测试成功',5复制监视器->发布服务器(ZEHUADB)->SZ:SZ->快照->启动代理程序
                                          ->ZLP:SZ(强制)->启动同步处理去查看同步的 WQ_NEWSGROUP_S 是否插入了一条新的记录测试完毕,通过。
    --7修改数据库的同步时间,一般选择夜晚执行数据库同步处理
    (具体操作略) :D/*
    注意说明:
    服务器一端不能以(local)进行数据的发布与分发,需要先删除注册,然后新建注册本地计算机名称卸载方式:工具->复制->禁止发布->是在"ZehuaDb"上静止发布,卸载所有的数据库同步配置服务器注意:发布服务器、分发服务器中的SQLServerAgent服务必须启动
          采用推模式: "D:\Microsoft SQL Server\MSSQL\REPLDATA\unc" 目录文件可以不设置共享
          拉模式:则需要共享~!*/少量数据库同步可以采用触发器实现,同步单表即可:========================================================配置过程中可能出现的问题,总结如下:(感谢作者: 余枫 提供的帮助) 
      

  4.   

    远程的IP为 123.65.214.117 我现在本地想通过这个IP连接远程的数据库 并希望有端口号,例 
    123.65.214.117,8010 运程ip通过路由器做个端口应射,应射到本机...
    创建连接服务器..
      

  5.   

    登录远程SQL服务器.
    一 看ping 服务器IP能否ping通。  这个实际上是看和远程sql server 2000服务器的物理连接是否存在。如果不行,请检查网络,查看配置,当然得确保远程sql server 2000服务器的IP拼写正确。  二 在Dos或命令行下输入telnet 服务器IP 端口,看能否连通。  如telnet 202.114.100.100 1433  通常端口值是1433,因为1433是sql server 2000的对于Tcp/IP的默认侦听端口。如果有问题,通常这一步会出问题。通常的提示是“……无法打开连接,连接失败"。  如果这一步有问题,应该检查以下选项。  1 检查远程服务器是否启动了sql server 2000服务。如果没有,则启动。  2 检查服务器端有没启用Tcp/IP协议,因为远程连接(通过因特网)需要靠这个协议。检查方法是,在服务器上打开 开始菜单->程序->Microsoft SQL Server->服务器网络实用工具,看启用的协议里是否有tcp/ip协议,如果没有,则启用它。  3 检查服务器的tcp/ip端口是否配置为1433端口。仍然在服务器网络实用工具里查看启用协议里面的tcp/ip的属性,确保默认端口为1433,并且隐藏服务器复选框没有勾上。  事实上,如果默认端口被修改,也是可以的,但是在客户端做telnet测试时,写服务器端口号时必须与服务器配置的端口号保持一致。如果隐藏服务器复选框被勾选,则意味着客户端无法通过枚举服务器来看到这台服务器,起到了保护的作用,但不影响连接,但是Tcp/ip协议的默认端口将被隐式修改为2433,在客户端连接时必须作相应的改变。  4 如果服务器端操作系统打过sp2补丁,则要对windows防火墙作一定的配置,要对它开放1433端口,通常在测试时可以直接关掉windows防火墙(其他的防火墙也关掉最好)。  5 检查服务器是否在1433端口侦听。如果服务器没有在tcp连接的1433端口侦听,则是连接不上的。检查方法是在服务器的dos或命令行下面输入  netstat -a -n 或者是netstat -an,在结果列表里看是否有类似 tcp 127.0.0.1 1433 listening 的项。如果没有,则通常需要给sql server 2000打上至少sp3的补丁。其实在服务器端启动查询分析器,输入 select @@version 执行后可以看到版本号,版本号在8.0.2039以下的都需要打补丁。  如果以上都没问题,这时你再做telnet 服务器ip 1433 测试,将会看到屏幕一闪之后光标在左上角不停闪动。恭喜你,你马上可以开始在企业管理器或查询分析器连接了。  三 检查客户端设置  程序->Microsoft SQL Server -> 客户端网络使用工具。像在服务器网络实用工具里一样,确保客户端tcp/ip协议启用,并且默认端口为1433(或其他端口,与服务器端保持一致就行)。  四 在企业管理器里或查询那分析器连接测试  企业管理器->右键SQlserver组->新建sqlserver注册->下一步->写入远程IP->下一步->选Sqlserver登陆->下一步->写入登陆名与密码(sa,password)->下一步->下一步->完成  查询分析器->文件->连接->写入远程IP->写入登录名和密码(sa,password)->确定  通常建议在查询分析器里做,因为默认情况下,通过企业管理器注册另外一台SQL Server的超时设置是4秒,而查询分析器是15秒。  修改默认连接超时的方法:  企业管理器->工具->选项->在弹出的"SQL Server企业管理器属性"窗口中,点击"高级"选项卡->连接设置->在 登录超时(秒) 后面的框里输入一个较大的数字  查询分析器->工具->选项->连接->在 登录超时(秒) 后面的框里输入一个较大的数字  通常就可以连通了,如果提示错误,则进入下一步。  五 错误产生的原因通常是由于SQL Server使用了"仅 Windows"的身份验证方式,因此用户无法使用SQL Server的登录帐户(如 sa )进行连接。解决方法如下所示:  1 在服务器端使用企业管理器,并且选择"使用 Windows 身份验证"连接上 SQL Server。  2 展开"SQL Server组",鼠标右键点击SQL Server服务器的名称,选择"属性",再选择"安全性"选项卡。  3 在"身份验证"下,选择"SQL Server和 Windows "。  4 重新启动SQL Server服务。(在dos或命令行下面net stop mssqlserver停止服务,net start mssqlserver启动服务,也是一种快捷的方法)。  附注:在连接本地服务器时,通常使用的是命名管道协议(在服务器网络实用工具里可以看到启用的协议有这个),默认端口是445,因此在本地能连通是不能说明什么问题的,连接远程服务器是完全不同的协议。
    本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/wufeng4552/archive/2008/12/21/3571392.aspx
      

  6.   


    程序—Microsoft SQL Server 2005—配置工具—SQL Server Configuration Manager—網絡連接協議—選擇實例對應協議—啟用(shard memory、Named Pipes、TCP\IP)
    TCP/IP属性,动态端口删除值,指定IP的端口8010 再MSSQLserver(实例名)—DataBase Engine—远程连接—(设置选项)再启用服务SQL Server Browser
      

  7.   

    http://blog.csdn.net/wufeng4552/archive/2008/12/21/3571392.aspx
      

  8.   

    SQL2005 正解,如果是SQL2000的:
    进入开始菜单-->程序-->Microsoft SQL Server-->服务器网络实用工具-->在启用的协义下面选择TCP/IP,点击下面的属性-->修改默认端口值-->重新启动SQL服务.
    这样设置完了后连接的时候就能用[IP,自定义端口号]的格式来连接了