ip、端口 连接失败问题常见原因

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ip、端口 连接失败问题常见原因相关的知识,希望对你有一定的参考价值。

参考技术A

liunx 7:

    1、暂时:        

            开启: service iptables start

            关闭: service iptables stop

     2、永久:

            开启: chkconfig iptables on

            关闭: chkconfig iptables off

linux 6.8:

            # vi /etc/selinux/config

            //设置SELINUX=disabled

            # systemctl stop firewalld  临时关闭防火墙

            # systemctl disable firewalld 停止并禁用开机启动

        

        win+R -----> cmd 

        查看全部端口: netstat -ano

        查看指定端口:netstat -ano | findstr 端口号

         结束进程:tasklist | findstr 端口号

          结果是:svchost.exe

    没办法,打电话问问

SQLServer异常;与主机 localhost、端口 1433 的 TCP/IP 连接失败

【中文标题】SQLServer异常;与主机 localhost、端口 1433 的 TCP/IP 连接失败【英文标题】:SQLServerException; The TCP/IP connection to the host localhost, port 1433 has failed 【发布时间】:2016-08-09 20:20:17 【问题描述】:

使用这个连接字符串

jdbc:sqlserver://localhost\\SQLEXPRESS:1433;database=mydb;user=username;password=psw

我收到以下错误,我无法弄清楚如何解决它:

com.microsoft.sqlserver.jdbc.SQLServerException:与主机 localhost 的 TCP/IP 连接失败,端口 1433。错误:“连接被拒绝:连接。验证连接属性,检查 SQL Server 实例是否正在主机上运行并在端口接受 TCP/IP 连接,并且没有防火墙阻止与端口的 TCP 连接。

我查看了注册表HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\<Instance Name>\MSSQLServer\SuperSocketNetLib\Tcp,设置了端口,并且禁用了防火墙,实例正在运行并且用户确实具有master默认访问权限!,那么到底出了什么问题?

【问题讨论】:

你的连接字符串看起来不错.. 但只要试试这个方法看看jdbc:sqlserver://localhost;instanceName=SQLEXPRESS;database=mydb;user=username;password=psw' 刚刚试过,得到:com.microsoft.sqlserver.jdbc.SQLServerException: Cannot open database "mydb" requested by the login. The login failed. 数据库mydb 存在吗?具有给定的用户名和密码权限? @JAG 感谢您让我考虑它,我没有更改数据库,但用户,使用 sa 及其密码可以正常工作,我不知道当时出了什么问题? ! 那么,除了sa 之外,我怎样才能在此数据库上授予另一个登录权限?请立即为整个问题提供答案,@JAG,谢谢。 【参考方案1】:

试试这个连接字符串

jdbc:sqlserver://localhost;instanceName=SQLEXPRESS;database=mydb;user=username;‌​password=psw'

并确保你有这个

instanceName = SQLEXPRESS;
database = mydb;  -- database mydb should exists
user = userName;‌ -- user should exits and have permission to mydb
​password = userPassword

创建新用户

USE [master]
GO
CREATE LOGIN [userName] WITH PASSWORD=N'userPassword', 
             DEFAULT_DATABASE=[YourDB], CHECK_EXPIRATION=OFF,CHECK_POLICY=OFF

授予对YourDB的访问权限

GO
USE [YourDB] -- in your case its mydb
GO
CREATE USER [userName] FOR LOGIN [userName] WITH DEFAULT_SCHEMA=[dbo]
GO

【讨论】:

谢谢,我创建了一个具有正确权限的新用户。【参考方案2】:

转到 SQL Server 配置管理器 -->> SQLEXPRESS 协议 在右侧选项卡中更改 TCP/IP 的属性 1-启用协议 2- 在 IP 地址:确保所有 TCP 端口都是 1433 3- 申请 -->> 好的 4- 重启 SQL Server

希望一切顺利

【讨论】:

【参考方案3】:

尝试省略端口号,或使用逗号代替冒号。

jdbc:sqlserver://localhost\\SQLEXPRESS;database=mydb;user=username;password=psw

jdbc:sqlserver://localhost\\SQLEXPRESS,1433;database=mydb;user=username;password=psw

【讨论】:

以上是关于ip、端口 连接失败问题常见原因的主要内容,如果未能解决你的问题,请参考以下文章

TCP/IP协议连接失败是为啥?

plsql可以连接上,历史ip 端口都是对的,但是weblogic创建数据源连接失败是啥原因呢?

JDBC 通过端口 1433 连接到主机 localshost 的 TCP/IP 连接失败。错误:“null。

java连接mysql报tcp/ip连接失败是啥原因?

连接数据库失败,SQLSTATE=08001怎么解决?

Java JDBC连接SQL Server2005错误:通过端口 1433 连接到主机 localhost 的 TCP/IP 连接失败