十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
远程连接SQL Server 2000的方法
创新互联公司是专业的蓬江网站建设公司,蓬江接单;提供网站制作、成都网站建设,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行蓬江网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
一 看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,因此在本地能连通是不能说明什么问题的,连接远程服务器是完全不同的协议)
;
可以用左连接(left join)查询出未匹配的数据。原理是左连接时,将输出左表的所有记录,如果右表没有匹配的记录,则用null替代右表的字段值,这样在where子句里筛选出这些右表字段值为null记录,即可查询出未匹配的数据。请参考下列实例:
查出没有参加课程号为"A01"考试的学生资料
数据结构
student(sid,sname)
score(sid,cid,grade)
SQL语句
select a.* from student a left join
(select distinct sid from score where cid='A01') b
on a.sid=b.sid where b.sid is null;
首先你说的外部数据库是指的跨服务器还是在同一个服务器上;
如果在同一台服务上的两个库的话,直接使用库名.表名直接访问,如果是在不同服务器上的话,需要建立服务器连接:
exec
sp_addlinkedserver
--链接服务名称
@server
=
'UPDateLink',
--产品名称
@srvproduct
=
'',
--访问接口
@provider
=
'SQLOLEDB',
--数据源
@datasrc
=
'200.200.200.251'
declare
@LocalUser
varchar(20),@ServerUser
varchar(20),@SeverPSW
varchar(20)
Set
@LocalUser
=
'sa'
Set
@ServerUser
=
'root'
Set
@SeverPSW
=
'617114'
exec
sp_addlinkedsrvlogin
UPDateLink,False,@LocalUser,@ServerUser,@SeverPSW
工具/原料
电脑(安装过SQL Server2008)
方法/步骤
登陆SQL Server 2008(windows身份认证),登陆后右击,选择“属性”。
左侧选择“安全性”,选中右侧的“SQL Server 和 Windows 身份验证模式”以启用混合登录模式。
选择“连接”,勾选“允许远程连接此服务器”,建议将“最大并发连接数”按实际情况,进行设置,然后点“确定”。
展开“安全性”-“登录名”-“sa”,右键选择“属性”。
左侧选择“常规”,右侧选择“SQL Server 身份验证”,并设置密码。
选择“状态”,选中“启用”,点击“确定”。
右击数据库选择“方面”。
在“方面”下接列表框中,选择“服务器配置,“RemoteAccessEnabled”属性和”RemotoDacEnabled”设为“True”,点“确定”。至此SSMS已设置完毕,先退出,再用sa登录,成功即表示sa帐户已经启用。
下面开始配置Sql Server Configuration Manager (SSCM),选中左侧的“SQL Server服务”,确保右侧的“SQL Server”以及SQL Server Browser正在运行。
打开左侧“SqlServer网络配置”,打开“你自己数据库实例名的协议”,查看右侧的TCP/IP默认是“已禁用”,将其修改为“已启用”。
双击打开“TCP/IP”查看“TCP/IP属性”下“协议”选项卡中的“全部侦听”和“已启用”项,是否都是设置成“是”。
选择“IP Addersses”选项卡,IP1、IP2、IPAll设置TCP端口为“1433”,TCP动态端口为空值,已启用为“是”。
将"客户端协议"的"TCP/IP"也修改为“已启用”。
双击打开右侧“TCP/IP”,打开“TCP/IP属性”,将默认端口设为“1433”,已启用为“是”。配置完成,重新启动SQL Server 2008。
最后一步,必需要防火墙上把SQL Server 的1433 TCP端口和1434 UDP端口映射出去。
注意事项
SQL Server 2008 Express安装以后,默认情况下是禁用远程连接的。如果需要远程访问,需要手动配置。 打开防火墙设置。将SQLServr.exe(C:\Program Files\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\Binn\sqlservr.exe)添加到允许的列表中。 该文章是根据本人在使用的实际情况中进行不断试验和在网上查找相关资料进行整改的。 由于本人使用的是CiscoASA5510的防火墙,所以在配置防火墙的时候曾经一度以为只要1433的TCP端口映射就可以了,但是却反复试验都不成功。最后查找了Sql Server网络端口的相关资料,再把1434的UDP端口也一并映射出去,就可以用SSMS在INTERNET中成功连接。
一台服务器上已经安装了sql
server
2005,一切正常。最近由于要用到表类型参数,需要安装sqlserver
2008,可是装好后却连不上。本机通过机器名可以连上。
后来发现需要改一下端口。我不知到这是不是唯一的办法,希望高手指正。
打开ConfigurationManager,找到TCP/IP,右击点属性,选择IPAddress到最后TCPAll,
把TCPPort改为你自己的port。
然后在连接的时候需要加上port,类似这样10.10.10.10sqlserver2008,1400,就可以连接成功了。连接字符串也要加上端口号。
最后,注意把端口号添加到防火墙例外。
服务端配置:
1、(SQL2005、SQL2008):
开始--程序--Microsoft SQL Server 2008(或2005)--配置工具--SQL Server 配置管理器--SQL Server网络配置--MSSQLSERVER(这个名称以具体实例名为准) 的协议--TCP/IP--右键--启用。
2、SQL2005:
开始--程序--Microsoft SQL Server 2005--配置工具--SQL Server 2005外围应用配置器--服务和连接的外围应用配置器--Database Engine --远程连接,选择本地连接和远程连接并选上同时使用Tcp/Ip和named pipes。
SQL2008:
打开SQLServer Management Studio--在左边[对象资源管理器]中选择第一项(主数据库引擎)--右键--方面--在方面的下拉列表中选择[外围应用配置器]--将RemoteDacEnable置为True.(这一步很关键)
Express:
如果XP有开防火墙,在例外里面要加入以下两个程序:
C:/Program Files/Microsoft SQL Server/MSSQL.1/MSSQL/Binn/sqlservr.exe,
C:/Program Files/Microsoft SQL Server/90/Shared/sqlbrowser.exe
3、开始--程序--Microsoft SQL Server 2008(或2005)--配置工具--SQL Server 配置管理器--SQL Server 服务--右击SQLServer(MSSQLSERVER) (注:括号内以具体实例名为准)--重新启动
4、服务器端开启sa用户。开始 - 程序- Microsoft SQL Server 2008 - Microsoft SQL Server Management Studio- 主数据库引擎 - 安全性 - 登录名- sa,设置密码。
客户端配置:
5、客户端连接数据库选择:开始- 程序 - Microsoft SQLServer 2008 - SQL Server Management Studio。
在客户端登陆服务器端数据库。
服务器名称:改为需要连接的数据库服务器的服务名,一般为该服务器的机器名;
身份验证:选择“SQLServer 身份验证”,现服务器的服务名为:“XP-201112021040”;
登录名:使用“sa”用户登录;
密码:“scisoft”;
6、登录进入SQLServer服务器后,展开“数据库”项,其中“edms”即为EDMS系统使用的数据库。