仓酷云
标题:
MSSQL编程:SQL Server毗连失利毛病及办理[1]
[打印本页]
作者:
小妖女
时间:
2015-1-16 22:24
标题:
MSSQL编程:SQL Server毗连失利毛病及办理[1]
提供TCP/IP、ODBC和JDBC等多种数据库连接路径。server|毛病|办理在利用SQLServer的过程当中,用户碰到的最多的成绩莫过于毗连失利了。一样平常而言,有以下两种毗连SQLServer的体例,一是使用SQLServer自带的客户端工具,如企业办理器、查询剖析器、事件探查器等;二是使用用户本人开辟的客户端程序,如ASP剧本、VB程序等,客户端程序中又是使用ODBC大概OLEDB等毗连SQLServer。上面,我们迁就这两种毗连体例,详细谈谈怎样来办理毗连失利的成绩。
1、客户端工具毗连失利
在利用SQLServer自带的客户端工具(以企业办理器为例)毗连SQLServer时,最多见的毛病有以下一些:
1、SQLServer不存在或会见被回绝
ConnectionOpen(Connect())
2、用户sa登录失利。缘故原由:未与信托SQLServer毗连相干联。
3、超时已过时。
上面我们顺次先容怎样来办理这三个最多见的毗连毛病。
第一个毛病"SQLServer不存在或会见被回绝"一般是最庞大的,毛病产生的缘故原由对照多,必要反省的方面也对照多。一样平常说来,有以下几种大概性:
1、SQLServer称号或IP地点拼写有误;
2、服务器端收集设置有误;
3、客户端收集设置有误。
要办理这个成绩,我们一样平常要遵守以下的步骤来一步步找出招致毛病的缘故原由。
起首,反省收集物理毗连:
ping<服务器IP地点>
大概
ping<服务器称号>
假如ping<服务器IP地点>失利,申明物理毗连有成绩,这时候候要反省硬件设备,如网卡、HUB、路由器等。另有一种多是因为客户端和服务器之间安装有防火墙软件酿成的,好比ISAServer。防火墙软件大概会屏障对ping、telnet等的呼应,因而在反省毗连成绩的时分,我们要先把防火墙软件临时封闭,大概翻开一切被关闭的端口。
假如ping<服务器IP地点>乐成而ping<服务器称号>失利,则申明名字剖析有成绩,这时候候要反省DNS服务是不是一般。偶然候客户端和服务器不在统一个局域网内里,这时候候极可能没法间接利用服务器称号来标识该服务器,这时候候我们可使用HOSTS文件来举行名字剖析,详细的办法是:
1、利用记事本翻开HOSTS文件(一样平常情形下位于C:WINNTystem32driversetc).
2、增加一条IP地点与服务器称号的对应纪录,如:
172.168.10.24myserver
也能够在SQLServer的客户端收集有用工具内里举行设置,前面会有具体申明。
其次,利用telnet命令反省SQLServer服务器事情形态:
telnet<服务器IP地点>1433
假如命令实行乐成,能够看到屏幕一闪以后光标在左上角一直明灭,这申明SQLServer服务器事情一般,而且正在监听1433端口的TCP/IP毗连;假如命令前往"没法翻开毗连"的毛病信息,则申明服务器端没有启动SQLServer服务,也大概服务器端没启用TCP/IP协定,大概服务器端没有在SQLServer默许的端口1433上监听。
接着,我们要到服务器上反省服务器真个收集设置,反省是不是启用了定名管道,是不是启用了TCP/IP协定等等。我们能够使用SQLServer自带的服务器收集利用工具来举行反省。
点击:程序->MicrosoftSQLServer->服务器收集利用工具,翻开该工具后看到的画面以下图所示:
从这里我们能够看到服务器启用了哪些协定。一样平常而言,我们启用定名管道和TCP/IP协定。
点中TCP/IP协定,选择"属性",我们能够来反省SQKServer服务默许端口的设置,以下图所示:
一样平常而言,我们利用SQLServer默许的1433端口。假如选中"埋没服务器",则意味着客户端没法经由过程列举服务器来看到这台服务器,起到了回护的感化,但不影响毗连。
反省完了服务器真个收集设置,接上去我们要到客户端反省客户真个收集设置。我们一样能够使用SQLServer自带的客户端收集利用工具来举行反省,所分歧的是此次是在客户端来运转这个工具。
点击:程序->MicrosoftSQLServer->客户端收集利用工具,翻开该工具后看到的画面以下图所示:
从这里我们能够看到客户端启用了哪些协定。一样平常而言,我们一样必要启用定名管道和TCP/IP协定。
点击TCP/IP协定,选择"属性",能够反省客户端默许毗连端口的设置,以下图所示。
该端口必需与服务器分歧。
单击"别号"选项卡,还能够为服务器设置别号。服务器的别号是用来毗连的称号,毗连参数中的服务器是真实的服务器称号,二者能够不异或分歧。以下图中,我们可使用myserver来取代真实的服务器称号sql2kcn-02,而且利用收集库NamedPipes。别号的设置与利用HOSTS文件有类似的地方。
在需要把许多新记录插入某个数据表的场合,DELAY_KEY_WRITE选项的作用将非常明显。另外,索引还会在硬盘上占用相当大的空间。因此应该只为最经常查询和最经常排序的数据列建立索引。注意,如果某个数据列包含许多重复的内容,为它建立索引就没有太大的实际效果。
作者:
蒙在股里
时间:
2015-1-19 11:04
呵呵,这就是偶想说的
作者:
精灵巫婆
时间:
2015-1-25 14:23
XML字段类型更好的解决了XML数据的操作。XQuery确实不错,但是个人对其没好感。(CSDN的开发者应该是相当的熟了!)
作者:
谁可相欹
时间:
2015-2-2 22:24
比如日志传送、比如集群。。。
作者:
金色的骷髅
时间:
2015-2-8 14:39
而写到本地,我又考虑到效率问题.大家来讨论讨论吧,分数不打紧,就给10分,十全十美,没啥对错,各抒己见,但是要有说服力的哦~
作者:
老尸
时间:
2015-2-25 18:58
另一个是把SQL语句写到服务器端,就是所谓的SP(存储过程);
作者:
透明
时间:
2015-3-8 01:44
SQLServer的异构移植功能个人感觉最好了。(如果对比过SQLServer的链接服务器和Oracle的透明网关的朋友会发现SQLServer的sp_addlinkedserver(openquery)异构数据库系列比Oracle真是强太多了。)
作者:
第二个灵魂
时间:
2015-3-15 19:50
呵呵,这就是偶想说的
作者:
小妖女
时间:
2015-3-22 03:11
然后最好有实践机会,能够把实践到的和实践结合起来,其实理论思考是个非常困扰和痛苦的事情
欢迎光临 仓酷云 (http://ckuyun.com/)
Powered by Discuz! X3.2