300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > mysql 1326_Mysql应用SQL Server 出现Error: 1326错误(管理器无法连接远程数据库)问题解决方案...

mysql 1326_Mysql应用SQL Server 出现Error: 1326错误(管理器无法连接远程数据库)问题解决方案...

时间:2022-10-25 21:09:11

相关推荐

mysql 1326_Mysql应用SQL Server 出现Error: 1326错误(管理器无法连接远程数据库)问题解决方案...

《Mysql应用SQL Server 出现Error: 1326错误(管理器无法连接远程数据库)问题解决方案》要点:

本文介绍了Mysql应用SQL Server 出现Error: 1326错误(管理器无法连接远程数据库)问题解决方案,希望对您有用。如果有疑问,可以联系我们。

SQL Server 出现Error: 1326错误MYSQL教程

我们在在使用SQL Server时都会遇到使用SQL Server Management Studio无法连接远程数据库实例的问题,错误描述信息摘录如下:

MYSQL教程

An error has occurred while establishing a connection to the server.

(provider: Named Pipes Provider, error: 40 C Could not open a connection to SQL Server) (Microsoft SQL Server, Error: 5)

An error has occurred while establishing a connection to the server. When connecting to SQL Server , this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections. (provider: Named Pipes Provider, error: 40 C Could not open a connection to SQL Server) (Microsoft SQL Server, Error: 1326)

MYSQL教程

上面这段英文的翻译后大概是说:不能在数据库之间建立一个连接,原因是命名管道提供者出现错误.其实这是一个比较典型的数据库服务器设置问题,在局域网或广域网中都可能会遇到,我们只需要对数据库服务器进行一些配置便可以解决这个问题,来看看具体的步骤.

MYSQL教程

第一步:确保服务器端数据库服务已经启动MYSQL教程

开始->所有程序->Microsoft SQL Server ->Configutation Tools,打开SQL Server Configuration Manager,点击SQL Server Services,查看数据库服务是否已经启动,如果服务未开启,手动启动它.当然,你还可以通过点击Windows中的开始->控制面板->管理者工具->服务,来查看相应的数据库服务是否启动.或者如果服务器和你的机器在同一网络,你还可以通过命令“sqlcmd -L”(注意L要大写)去查看该网络内所有可用的SQL Server服务器.

MYSQL教程

第二步:在SQL Server Configuration中启用TCP/IPMYSQL教程

多个SQL Server服务器之间通过网络相互通信是需要TCP/IP支持的,为使SQL Server服务器能被远程连接必须确保TCP/IP已经启用.按照前面介绍的步骤打开SQL Server Configuration Manager,然后打开SQL Server Network Configuration,选择你要设置的数据库,然后点击TCP/IP,右键启用.如果有必要,你还可以启用Named Pipes.记住,所有的修改都必须在重启SQL Server服务之后才能生效!

MYSQL教程

第三步:在Windows防火墙中打开SQL Server的端口号

MYSQL教程

很多时候我们在对数据库服务器本身做了很多次设置后仍然无法成功建立远程连接,这时就要考虑是否是防火墙在作怪.默认情况下,许多端口号和服务都会被防火墙所禁止而不能远程访问或执行,SQL Server默认的端口号也不例外.我们应该重新设置Windows防火墙给SQL Server添加例外.除非人为修改,默认情况下SQL Server的端口号是1433,将该端口号添加到Windows防火墙中.如果SQL Server存在命名实例,那么也应该将SQL Server browser添加到Windows防火墙中.(有关SQL Server的命名实例将在后面介绍)

MYSQL教程

打开Windows控制面板,选择Windows防火墙->Change Settings->Exceptions->Add Port

MYSQL教程

点击Add port...在弹出的对话框中填入:

Name: SQL

Port Number: 1433

Protocol: Select TCPMYSQL教程

第四步:在SQL Server管理器中启用远程连接MYSQL教程

这一步通常会被数据库管理员忽略,如果未启用数据库远程连接,数据库实例只允许在本地进行连接而不能被远程连接,启用远程连接同样非常重要.默认设置中远程连接是被禁止的.如下图,打开SQL Server Management Studio,右键点击数据库实例然后选择属性菜单.

MYSQL教程

在打开的窗口中,左侧选择Connections,然后勾选"Allow remote connections to this server".MYSQL教程

第五步:启用SQL Server Browser服务

MYSQL教程

如果SQL Server在安装时不是用的默认实例名而是自定义的实例名,并且没有配置特定的TCP/IP端口号,那么按照我们前面的描述SQL Server仍然不能支持远程连接.但如果你启用的SQL Server Browser服务,便可以通过动态TCP/IP端口号进行远程SQL Server连接.启用SQL Server Browser服务非常简单,与启用SQL Server类似,在SQL Server Configuration Manager中右键点击SQL Server Browser,然后选择启用.启用该服务将会影响到服务器上所有已安装的SQL Server实例.

MYSQL教程

第六步:在防火墙中为sqlbrowser.exe应用程序创建例外

MYSQL教程

我们在前面已经提到了,自定义命名的SQL Server实例要支持远程连接需要启用sqlbrowser服务,Windows防火墙可能会阻止该服务执行.因此,我们必须在Windows防火墙中给sqlbrowser服务添加例外.

MYSQL教程

首先找到服务器上安装sqlbrowser.exe程序的路径,如C:\Program Files\Microsoft SQL Server\90\Shared\sqlbrowser.exe.如果不确定SQL Server安装在什么地方,你可以在Windows搜索一下文件名.与我们在前面介绍的在防火墙中添加SQL TCP/IP端口号的方法类似,给sqlbrowser.exe应用程序添加防火墙例外.

最后:重新创建数据库别名

MYSQL教程

创建SQL Server别名并在应用程序中使用它很常见.使用数据库别名可以确保一旦数据库的位置发生了变化,如更换了新的服务器,IP地址发生了变化等,应用程序中的数据库连接字符串不用修改.否则你更换了数据库的位置,你还要通知所有使用该数据库的应用程序修改源代码或配置文件中的连接字符串,这恐怕是不可能的.所以,使用数据库别名来配置连接字符串是一个非常明智的选择.另外,你还可以使用相同的别名来指向不同的数据库实例,当修改别名参数时,可以马上实现数据库之间的切换.创建数据库别名非常简单,在SQL Server Configuration Manager中选择Aliases进行创建.

MYSQL教程

自己补充:sqlservr.exe是服务PID是1760,占用端口号是1433,检查该端口是否占用,可以用telnet localhost 1433去查看,还可以通过netstat IP | find "1433'去具体谁占用了.总结:1.一看用户名、密码;2二看是否设置允许远程连接;3三看防火墙是否把1433保护了(不知道的话可以直接关闭防火墙试试)MYSQL教程

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!MYSQL教程

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。