本地可以连接数据库,远程连接mysql不成功

在Ubuntu16.04系统中,遇到远程连接MySQL服务器失败的问题,错误显示为ERROR 2003。解决步骤包括:检查3306端口是否绑定到本地IP,修改my.cnf配置文件解除IP限制,重启MySQL服务。如果出现ERROR 1130,需要检查并修改MySQL用户host权限,将其设置为允许所有主机访问,并重启MySQL以应用更改。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

版本:Ubuntu16.04


一、使用xshell成功连接Linux服务器,然后命令行执行mysql本地连接命令,可以成功登录mysql数据库,但是使用mysql workbench连接不成功,出现错误:ERROR 2003:Can’t connect to MySQL server on ‘xxxx’<10061>
1、查看3306端口是否被占用netstat -apn|grep 3306:查询结果如下图所示
这里写图片描述
注意红色字体3306的地方,这说明3306被绑定到了本地ip127.0.0.1
2、检查修改my.cnf的配置

vim /etc/mysql/mysql.conf.d/mysqld.cnf

配置绑定ip地址,将bind-address = 127.0.0.1修改为bind-address = 0.0.0.0或注销,保存后退出(若没有修改权限,则赋予该文件修改权限chmod u+w /etc/mysql/mysql.conf.d/mysqld.cnf
重启mysql

/etc/init
### 本地 Tomcat 连接 MySQL 失败的解决方案 #### 配置 JDBC 数据库连接池 确保 `context.xml` 或 `web.xml` 文件中的数据库连接配置正确无误。通常情况下,这些文件位于项目的 `META-INF` 或 `WEB-INF` 目录下。对于 MySQL连接字符串应类似于: ```xml <Resource name="jdbc/MyDB" auth="Container" type="javax.sql.DataSource" maxTotal="100" maxIdle="30" maxWaitMillis="10000" username="dbuser" password="dbpass" driverClassName="com.mysql.cj.jdbc.Driver" url="jdbc:mysql://localhost:3306/mydatabase?useSSL=false&serverTimezone=UTC"/> ``` 注意 URL 参数中包含了 `useSSL=false` 和 `serverTimezone=UTC` 来防止 SSL 认证问题以及时间差异引发的问题[^3]。 #### 检查驱动程序兼容性 确认使用的 MySQL Connector/J 版本与 MySQL 数据库版本相匹配,并将其放置于 `$CATALINA_HOME/lib` 目录内以便让 Tomcat 能够加载此 JAR 文件作为类路径的一部分[^4]。 #### 设置正确的权限 如果应用程序尝试从外部访问 MySQL,则需授予相应的用户足够的权限来执行所需的操作。可以通过运行 SQL 命令给定特定 IP 地址范围内的客户端授予权限: ```sql GRANT ALL PRIVILEGES ON database_name.* TO 'username'@'%' IDENTIFIED BY 'password'; FLUSH PRIVILEGES; ``` 这会使得任何地方都可以通过指定用户名和密码连接到该数据库实例[^5]。 #### 日志分析 当遇到连接失败的情况时,应该仔细审查 Tomcat 应用服务器的日志文件 (`$CATALINA_BASE/logs/catalina.out`) 及 Web 应用自身的日志记录,寻找有关异常堆栈跟踪的信息,从而定位具体原因并采取相应措施加以修复[^2]。 #### 测试连接稳定性 有时长时间未活动可能导致现有连接被防火墙或其他安全设备切断。为了保持持久性的连接,在应用程序级别设置心跳检测机制或调整 MySQL 的超时参数可以帮助维持稳定的通信链路。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值