请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

项目部署到阿里云链接不上数据库

https://img1.sycdn.imooc.com//szimg/5b2bc94500013b3416790568.jpg

https://img1.sycdn.imooc.com//szimg/5b2bc9450001c7c412230272.jpg

https://img1.sycdn.imooc.com//szimg/5b2bc9450001157808760799.jpg

上面给的数据库的username 和 password都是正确的,线上linux可以使用这个用户名链接MySQL,程序在本地跑没有任何的问题,就是线上总是这个问题。还有一个异常

Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Communications link failure

这是pom中的依赖:


<dependency>
 <groupId>mysql</groupId>
 <artifactId>mysql-connector-java</artifactId>
 <version>5.1.6</version>
</dependency>

到底哪里有问题???????????????????

正在回答 回答被采纳积分+3

1回答

polo哦 2018-06-23 13:14:01

你先试试navicat能不能连接上先,不能就是防火强的问题或者权限的问题,如果能连上就是你配置文件的锅


1、安装mysql环境

2、使用root用户登录  mysql -uroot -p

3、赋权限给某个用户权限

GRANT ALL PRIVILEGES ON *.* TO 用户名@'%' IDENTIFIED BY '数据库密码' WITH GRANT OPTION;

4、mysql> commit;

5、mysql> flush privileges; 

6、mysql> exit;

再重启数据库 service mysqld restart

7、开放3306端口


1 回复 有任何疑惑可以回复我~
  • 提问者 慕盖茨1364648 #1
    用workbench测试,连接不上阿里云的mysql,可是我3306都开启了啊?到底是哪里的问题?
    
    回复 有任何疑惑可以回复我~ 2018-06-23 13:48:22
  • 提问者 慕盖茨1364648 #2
    谢谢?,好了。原因就是root用户他只针对指定的两个ip。其他的ip是连接不上的。
    回复 有任何疑惑可以回复我~ 2018-06-23 14:05:44
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信