linux下程序JDBC连接不到mysql数据库

  今天在linux下部署一个 JavaEE项目的时候总是连接不到Mysql数据库,检查之后发现连接池的配置确定是对的,进入linux服务器之后以mysql -uname -ppassword连接总是报Access denied for user ‘root‘@‘localhost‘ (using password: YES”),最终解决掉这个问题之后还是连接不上(参考:http://www.cnblogs.com/qlqwjy/p/8315802.html)。

  解决掉之后通过在本地的sqlyog连接都报错,可是在linux服务器上可以运行,用下面语句授权之后还是连接不上,并且Java程序也是连接不上

授权:

  mysql> grant all privileges on *.* to ‘root‘@‘%‘ identified by ‘admin‘;  

mysql> grant all privileges on *.* to ‘root‘@‘localhost‘ identified by ‘admin‘;  

mysql> flush privileges;  

 查看登录用户信息:

mysql> select user,host,password  from mysql.user;

此时用service myqld stop发现不起作用,也就是关不掉mysql服务,用service mysqld start启动报错:

Starting mysqld (via systemctl):  Job for mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service" and "journalctl -xe" for details.

最终通过查看mysql的错误日志发现mysql服务一直开启着:

mysql> show variables like ‘error_log‘;
Empty set (0.00 sec)

mysql> show variables like ‘log_error‘;
+---------------+---------------------+
| Variable_name | Value               |
+---------------+---------------------+
| log_error     | /var/log/mysqld.log |
+---------------+---------------------+
1 row in set (0.00 sec)

mysql> quit
Bye
[[email protected] logs]# cat /var/log/mysqld.log

错误日志:

180119 10:01:35 mysqld_safe Logging to ‘/var/log/mysqld.log‘.
180119 10:01:35 mysqld_safe A mysqld process already exists
180119 10:01:37 mysqld_safe Logging to ‘/var/log/mysqld.log‘.
180119 10:01:37 mysqld_safe A mysqld process already exists
180119 10:01:38 mysqld_safe Logging to ‘/var/log/mysqld.log‘.
180119 10:01:38 mysqld_safe A mysqld process already exists

解决办法:最后是通过查看mysql相关的pid然后杀死进程之后重新启动mysql解决的:

[[email protected] logs]# ps -ef|grep mysql
mysql    24359     1  0 10:31 ?        00:00:00 /bin/sh /usr/bin/mysqld_safe --basedir=/usr
mysql    24541 24359  0 10:31 ?        00:00:01 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --log-error=/var/log/mysqld.log --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/lib/mysql/mysql.sock
root     25420 25023  0 11:17 pts/2    00:00:00 grep --color=auto mysql
[[email protected] logs]# kill -9 24541
[[email protected] logs]# kill -9 24359

通过上面命令查看到mysql相关的进程id之后杀掉进程,重启mysql服务发现一切正常。

[[email protected] logs]# service mysqld start

原文地址:https://www.cnblogs.com/qlqwjy/p/8316007.html

时间: 2024-08-03 13:03:26

linux下程序JDBC连接不到mysql数据库的相关文章

Linux下通过JDBC连接Oracle,SqlServer和PostgreSQL

今天正好需要统计三个网站栏目信息更新情况,而这三个网站的后台采用了不同的数据库管理系统.初步想法是通过建立一个小的Tomcat webapp,进而通过JDBC访问这三个后台数据库,并根据返回的数据生成报表. 1 开发环境 数据库管理系统:一个是SqlServer 2000,另一个是Oracle 9i,再一个是PostgreSQL9.1 Tomcat执行平台:CentOSx64 + JDK7.0x64 (全64位环境) 2 JDBC驱动的选择 2.1 Oracle9i Oracle官方提供了ojd

JDBC连接最新版Mysql数据库url设置

String url="jdbc:mysql://127.0.0.1:3306/northwind?serverTimezone=UTC"; 需要在连接后面加个时区参数?serverTimezone=UTC 原文地址:https://www.cnblogs.com/max-hou/p/10706032.html

linux下的静态连接库和动态链接库

对linux的静态连接库和动态链接库分不清楚,在看了一篇博文后,现在想做个自己的总结,以加深印象: 1.库的基本概念: 库是可执行代码的二进制形式,其可以被调入操作系统调入内存进行执行. 在window和linux系统,都存在各自的库,但是两种系统的库并不能兼容,因为它们的编译器,连接器,汇编器都是不相同的. 在windows下,静态连接库的后缀是.lib;动态链接库的后缀是.dll 在linux系统下,静态链接库的后缀是.a;动态链接库的后缀是.so 2.静态连接库和动态链接库的命名: 静态连

Linux下的动态连接库及其实现机制

Linux与Windows的动态连接库概念相似,但是实现机制不同.它引入了GOT表和PLT表的概念,综合使用了多种重定位项,实现了"浮动代码",达到了更好的共享性能.本文对这些技术逐一进行了详细讨论. 本文着重讨论x86体系结构,这是因为 (1)运行Linux的各种体系结构中,以x86最为普及: (2)该体系结构上的Windows操作系统广为人知,由此可以较容易的理解Linux的类似概念: 下表列出了Windows与Linux的近义词,文中将不加以区分: Windows Linux 动

Linux下基于源码方式安装MySQL 5.6

MySQL为开源数据库,因此可以基于源码实现安装.基于源码安装有更多的灵活性.也就是说我们可以针对自己的硬件平台选用合适的编译器来优化编译后的二进制代码,根据不同的软件平台环境调整相关的编译参数,选择自身需要选择不同的安装组件,设定需要的字符集等等一些可以根据特定应用场景所作的各种调整.本文描述了如何在源码方式下安装MySQL. 1.安装环境及介质#安装环境SZDB:~ # cat /etc/issueWelcome to SUSE Linux Enterprise Server 10 SP3

JDBC远程从一个MySql数据库中的一张表里面读出数据(这个数据库需要用SSH隧道连接,大约8W条数据),然后分别插入到另一个数据库中的两张表里

package com.eeepay.lzj.db; import java.sql.Connection; import java.sql.Date; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import com.jcraft.jsch.JSch; import com.jcraft.jsc

linux下程序运行时间

如何计算程序运行时间,呵呵,一大堆复杂的程序, 先来个简单的,qsort算法,数据吗?随机产生: 看见了吧,(当然,在数据量小的情况下,感觉不到差别,但是在数据量超大的情况下,就会有明显感觉了.) 60000000 vs 10000000 时间消耗有区别哦. [[email protected] ctest]# time ./33 hehe:60000000 ----------------------------------------before quick sort------------

LINUX下使用PHP连接MSSQL的方法

目录[-] 如何安装MSSQL.SO 如何安装PDO_LIB.SO 如何安装PDO_ODBC.SO 作者:Roban lee ([email protected]) LINUX下使用PHP连接MSSQL的方法有很多种,根据不同的环境,可以选择不同的方式,大致方法有以下几种: 使用MSSQL.SO扩展 使用PDO_LIB扩展 使用PDO_ODBC扩展 如何安装MSSQL.SO 1. MSSQL.SO 扩展依赖一个外部包,即 freeTDS, FreeTDS 官网: http://www.freet

Linux下通过ssh连接github

github每次pull/push代码时要求推送代码的用户是合法的,所以每次推送时候都要输入账号密码用以验证用户是否为合法用户,而ssh是一种安全的传输模式,可以代替用户的这一"输入账号密码"的行为来验证用户. github共支持2种操作方式 https 可以随意克隆github上的项目,而不管是谁的:在pull/push的时候是需要验证用户名和密码的 ssh 克隆者必须是拥者或管理员,且需要先添加 SSH key ,否则无法克隆.在pull/push的时候不再是验证用户名和密码,而是