海妖 发表于 2015-1-16 22:31:33

MYSQL教程之SQL Server毗连失利毛病及办理

而且其固有的弹性使得它易于扩展以处理不断增长的需求,或当需求MySQL学习教程减弱时缩减规模。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文件有类似的地方。

  


当然,或许这并不是我们拒绝MySQL的一个有说服力的MySQL学习教程,但是对于一些比较守旧的IT经理来说,在为一些关键业务选择平台的时候,平台的成熟性却是必须要考虑的一个因素,在这一点上,MySQL无疑毫无优势。

蒙在股里 发表于 2015-1-20 18:36:53

在select语句中可以使用groupby子句将行划分成较小的组,然后,使用聚组函数返回每一个组的汇总信息,另外,可以使用having子句限制返回的结果集。

飘飘悠悠 发表于 2015-1-29 14:39:23

where子句的作用是在对查询结果进行分组前,将不符合where条件的行去掉,即在分组之前过滤数据,条件中不能包含聚组函数,使用where条件显示特定的行。

仓酷云 发表于 2015-2-6 01:59:30

一个是把SQL语句写到客户端,可以使用DataSet进行加工;

海妖 发表于 2015-2-14 23:43:13

现在是在考虑:如果写到服务器端,我一下搞他个10个存储过程导过去,那久之服务器不就成垃圾箱了吗?即便优化了我的中间层.

若相依 发表于 2015-3-4 10:46:41

是要和操作系统进行Socket通讯的场景。否则建议慎重!

柔情似水 发表于 2015-3-11 18:25:07

比如,MicrosoftSQLServer2008的某一个版本可以满足现在的这个业务的需要,而且价格还比Oracle11g要便宜,那么这一产品就是适合的。

再现理想 发表于 2015-3-19 07:23:24

只能告诉你,学好数据库语言和原理,多见识几种数据库软件,比一棵树上吊死要好。

只想知道 发表于 2015-3-27 13:09:49

数据库物理框架没有变动undo和redo都放在数据库得transaction中,个人感觉是个败笔。如果说我们在设计数据库的时候考虑分多个数据库,可能能在一定程度上避免I/O效率问题。
页: [1]
查看完整版本: MYSQL教程之SQL Server毗连失利毛病及办理