SQL 数据库连接服务器失败是什么原因?
2021-03-04 · MySQL开源数据库领先者
关注
展开全部
一、mysqld 进程没有正常运行遇到这种情况首先到服务器上看看 mysqld 进程是否活着,采用的命令:
二、客户端不能和进程 mysqld 通信如果 MySQL 服务器上的 mysqld 进程运行正常,我们再看看客户端能不能和 mysqld 进行通信,使用下面的命令进行网络连通的测试:telnet localhost 3306
如果本地能通,再到客户端的机器上把 localhost 换成 MySQL 服务器的 ip 地址进行测试。如果不能通,通常有两种原因,一种原因是 OS 或网络的问题,或者是防火墙;另一种原因是 mysqld 自身根本没有侦听客户端的连接请求, mysqld 启动后对于客户端的侦听是分三种情况。
第一种情况
是使用参数 --skip-networking 跳过侦听客户端的网络连接,用下面的命令我们可以看到 MySQL 根本没有侦听 3306 端口。
第二种情况
使用参数 --bind-address 后面增加对客户端访问 IP 地址的限制,例如只侦听本地的连接
三、账户密码的问题最后一种情况是账户密码的问题,应付这种情况我们有个有力的工具就是查看 MySQL 的 error log, error log 记载信息的详细程度上由参数 --log-error-verbosity 进行控制的
二、客户端不能和进程 mysqld 通信如果 MySQL 服务器上的 mysqld 进程运行正常,我们再看看客户端能不能和 mysqld 进行通信,使用下面的命令进行网络连通的测试:telnet localhost 3306
如果本地能通,再到客户端的机器上把 localhost 换成 MySQL 服务器的 ip 地址进行测试。如果不能通,通常有两种原因,一种原因是 OS 或网络的问题,或者是防火墙;另一种原因是 mysqld 自身根本没有侦听客户端的连接请求, mysqld 启动后对于客户端的侦听是分三种情况。
第一种情况
是使用参数 --skip-networking 跳过侦听客户端的网络连接,用下面的命令我们可以看到 MySQL 根本没有侦听 3306 端口。
第二种情况
使用参数 --bind-address 后面增加对客户端访问 IP 地址的限制,例如只侦听本地的连接
三、账户密码的问题最后一种情况是账户密码的问题,应付这种情况我们有个有力的工具就是查看 MySQL 的 error log, error log 记载信息的详细程度上由参数 --log-error-verbosity 进行控制的
快又稳
2024-10-28 广告
2024-10-28 广告
数据库服务器作为广州快又稳网络科技有限公司的核心基础设施之一,承载着公司海量数据的存储、处理与访问需求。我们采用高性能、高可用性的服务器架构,确保数据的安全性、完整性和快速响应能力。通过先进的数据库管理系统,优化查询效率,支持复杂业务场景下...
点击进入详情页
本回答由快又稳提供
展开全部
由以下几个原因:
1.数据库引擎没有启动
有两种启动方式:
(1)开始->程序->Microsoft SQL Server 2008->SQL Server 2008外围应用配置器,在打开的界面单击"服务的连接的外围应用配置器",在打开的界面中找到Database Engine,单击"服务",在右侧查看是否已启动,如果没有启动可单击"启动",并确保"启动类型"为自动,不要为手动,否则下次开机时又要手动启动;
(2)可打开:开始->程序->Microsoft SQL Server 2008->配置工具->SQL Server Configuration Manager,选中SQL Server 2008服务中SQL Server(MSSQLSERVER) ,并单击工具栏中的"启动服务"按钮把服务状态改为启动;
使用上面两种方式时,有时候在启动的时候可能会出现错误[/b],不能启动,这时就要查看"SQL Server 2008配置管理器"中的SQL Server 2008网络配置->MSSQLSERVER协议中的VIA是否已启用,如果已启用,则把它禁止.然后再执行上述一种方式操作就可以了。
2.进行远程连接时,是否已允许远程连接.
SQL Server 2008 在默认情况下仅限本地连接.我们可以手动启用远程连接.在上面第一种方式中,找到Database Engine,单击"远程连接",在右侧将"仅限本地连接(L)"改为"本地连接和远程连接(R)",并选中"同时使用TCP/IP和named pipes(B)".
3.如果是远程连接,则还要查看连接数据库的语句是否正确,登录账户是否正确,密码是否正确等.
我在一次局域网内连接数据库时,就要因为连接字符串出了问题,在局域网内一台机子连接另一台机子上数据库时,把Data Source=装有数据库的另一台机子的IP.我在连接数据库时总是出现上面的错误,查了好长时间,后来发现,IP没有正确到传到连接字符串,原来我在连接时,使用的是本地,即127.0.0.1,输入的IP没有传到连接字符串
1.数据库引擎没有启动
有两种启动方式:
(1)开始->程序->Microsoft SQL Server 2008->SQL Server 2008外围应用配置器,在打开的界面单击"服务的连接的外围应用配置器",在打开的界面中找到Database Engine,单击"服务",在右侧查看是否已启动,如果没有启动可单击"启动",并确保"启动类型"为自动,不要为手动,否则下次开机时又要手动启动;
(2)可打开:开始->程序->Microsoft SQL Server 2008->配置工具->SQL Server Configuration Manager,选中SQL Server 2008服务中SQL Server(MSSQLSERVER) ,并单击工具栏中的"启动服务"按钮把服务状态改为启动;
使用上面两种方式时,有时候在启动的时候可能会出现错误[/b],不能启动,这时就要查看"SQL Server 2008配置管理器"中的SQL Server 2008网络配置->MSSQLSERVER协议中的VIA是否已启用,如果已启用,则把它禁止.然后再执行上述一种方式操作就可以了。
2.进行远程连接时,是否已允许远程连接.
SQL Server 2008 在默认情况下仅限本地连接.我们可以手动启用远程连接.在上面第一种方式中,找到Database Engine,单击"远程连接",在右侧将"仅限本地连接(L)"改为"本地连接和远程连接(R)",并选中"同时使用TCP/IP和named pipes(B)".
3.如果是远程连接,则还要查看连接数据库的语句是否正确,登录账户是否正确,密码是否正确等.
我在一次局域网内连接数据库时,就要因为连接字符串出了问题,在局域网内一台机子连接另一台机子上数据库时,把Data Source=装有数据库的另一台机子的IP.我在连接数据库时总是出现上面的错误,查了好长时间,后来发现,IP没有正确到传到连接字符串,原来我在连接时,使用的是本地,即127.0.0.1,输入的IP没有传到连接字符串
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这种错误原因较多,一个个的排除。
如果你的客户端和数据库服务器是在同一台机器上:
1、可能是数据库服务没有启动
2、可能是有实例名,你没有写上实例名,有实例名的联接是 服务器名称/实例名称
3、没有安装上数据库服务
如果客户端和服务器不是在同一台机器上,就是远程联接:
1、看一下网络通不通,可以ping一下
2、可能是数据库服务没有启动
2、可能是有实例名,你没有写上实例名,有实例名的联接是 服务器名称/实例名称
3、没有安装上数据库服务
如果你的客户端和数据库服务器是在同一台机器上:
1、可能是数据库服务没有启动
2、可能是有实例名,你没有写上实例名,有实例名的联接是 服务器名称/实例名称
3、没有安装上数据库服务
如果客户端和服务器不是在同一台机器上,就是远程联接:
1、看一下网络通不通,可以ping一下
2、可能是数据库服务没有启动
2、可能是有实例名,你没有写上实例名,有实例名的联接是 服务器名称/实例名称
3、没有安装上数据库服务
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询