问题背景:自己在本机的mysql8瘫痪了,将Oracle中的数据迁移到mysql之后,配置好javaweb工程和虚拟机上的远程Mysql连接的文件之后:遇见了无法访问的问题

具体的配置:

datasource.properties

#oracle database settings
jdbc.type=mysql
#jdbc.driver=com.mysql.cj.jdbc.Driver
jdbc.driver=com.mysql.jdbc.Driver #ce shi huan jing
#mysql8(benji)
#jdbc.url=jdbc:mysql://localhost:3306/bigdata?characterEncoding=utf-8&serverTimezone=UTC
#mysql远程
jdbc.url=jdbc:mysql://192.168.27.4:3306/bigdata
jdbc.username=root
#加密过的远程的mysql密码
jdbc.password=EzqtjrkIcbBfOgBDYYYN4bPkhQY9LfT032e3cJ9P/kBwIoBlYyyjxTYXn6NFjce228RLAwrIEQOmiLcD+lyeMQ==

遇见的第一个问题:

........
caused by: java.sql.SQLException: Access denied for user 'root'@'LAPTOP-SUMF6MPE' (using password: YES)

小小补充,有时需要去更改密码的时候的注意点自己在用cmd登录mysql的时候’,在里面更改密码的时候要注意到如果密码中或者用户名中含有特殊的字符的话:要会转义,否则如果不转义的话,如设置密码为apiwok#123,只是写成下面的样子了,那之后再以设置的密码登录就可能会登不上,因为没有转义,实际上可能设置的密码和自己想想的不一样

mysql> update user set authentication_string='api_work#1234' where user='root' a
nd host='localhost';
Query OK, row affected (0.01 sec)
Rows matched: Changed: Warnings:

遇见的问题二以及注意点:

2‘对于javaweb工程’连接mysql的时候遇见的注意点:

1)如果设置完毕和mysql数据库连接的proties之后,再去连接的时候控制台报错

报错信息如下:

........
caused by: java.sql.SQLException: Access denied for user 'root'@'LAPTOP-SUMF6MPE' (using password: YES)

这是因为权限不够,因为mysql一般默认的是只能是本机等,其他的无法登录,所以要进行授权

具体的授权发方法

mysql授权GRANT ALL PRIVILEGES:作用就是可以以root身份去从任何的机子上去登录某一台机子上的mysql中的数据库

SELECT * FROM mysql.user WHERE USER='root';

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'api_work#1234' WITH GRANT OPTION;

FLUSH PRIVILEGES;

注意语句中的root是身份,后面by之后的才是密码

授权方法的连接:https://jingyan.baidu.com/article/455a9950a4fea0a16727787e.html?_t_t_t=0.6624952771235257    里面的方法二是我使用完成的,亲测有效!!!!

授权成功之后就可以成功在protites文件配置正确的情况下去以root的身份去连接上远程的mysql库了

遇见的问题三

javaweb工程和和不同的mysql链接的时候需要的驱动的版本也会是不一样如果是用的是maven管理的话,可以直接在pom中直接更改msyql的驱动的版本就好

对于Mysql8的数据源的话:需要的是mysql和java交互链接的驱动版可以是8.0.11‘

如果是是数据源是Mysql5的话。需要的驱动依赖可以是5.0.13版的

遇见的问题四:

注意eclipse中的配置项目所用的jdk的版本的时候选择的是自己安装的jdk,而不是选择到jre的那层目录,如果选错为jre了,那就会出现错误:

java之java.lang.UnsupportedClassVersionError:com/mysql/jdbc/Driver : Unsupported major.minor version 52.0

问题解释:jdk版本和mysql驱动版本不兼容,比如:jdk1.7与mysql-connector-java-5.xxx兼容,但与mysql-connector-java-6.xxx及以上不兼容,所以要注意问题三

 

问题总结:mysql和javaweb工程连接的过程中容易产生的问题的更多相关文章

  1. MySQL Fabric和MyBatis的整合过程中遇到的问题

    这是我昨天在整合MySQL Fabric和MyBatis时遇到的问题,花了大半天才解决的问题,解决的过程中在网上查找了很久,都没有找到解决的方案.现在记下来,希望能够帮助有同样问题的朋友.如果各位朋友 ...

  2. java中用activiti插件连接mysql数据库,自动建表过程中,在配置mysql架包路径“org.activiti.engine.ActivitiException: couldn't check if tables “

    java中用activiti插件连接mysql数据库,出现错误: org.activiti.engine.ActivitiException: couldn't check if tables are ...

  3. java连接mysql数据库8.0以上版本过程中遇到的坑

    来自:https://blog.csdn.net/u013276277/article/details/80255468 首先,我居然不能用navicat客户端连接上mysql8.0数据库报1251错 ...

  4. windows10下安装mysql-8.0.15-winx64以及连接服务器过程中遇到的一些问题

    一.下载安装配置mysql-8.0.15 1.官网(https://dev.mysql.com/downloads/mysql/)下载zip包 2.解包到我的D:\mysql目录下 3.为mysql配 ...

  5. 使用Java连接HBASE过程中问题总结

    本文是我个人在连接服务器的HBASE过程的一些问题总结. 一.用户和主机名的设置 1.1 报错:Insufficient permissions(user=Administartor) 原因:本地ho ...

  6. django连接Oracle过程中出现的问题

    开始时版本信息: python 3.6   +   ce_oracle 6 最终版本信息: python 3.5   + ce_oracle 5.2 ce_oracle版本问题 cx_Oracle-5 ...

  7. Windows连接Linux服务器中MySQL数据库-权限配置

    问题描述 在Windows系统中安装了监控MySQL数据库服务器性能的工具Spotlight on MySQL,利用Spotlight连接Linux服务器中的MySQL,进行相关配置如下:   点击& ...

  8. oracle表连接——处理连接过程中另外一张表没有相关数据不显示问题

    一个数据表基本上很难满足我们的查询要求,同时,将所有的数据都保存在一个表格中显然也不是一种好的数据库设计,为了避免数据的冗余,删除.更新异常,我们通常需要建立一张外键表,通过表连接,来获取我们自己想要 ...

  9. Windows系统安装MySQL详细教程和安装过程中问题汇总(命令安装),更新时间2021-12-8

    安装包下载 下载地址:https://dev.mysql.com/downloads/mysql/ 点击下载之后,可以选择注册Oracle账号,也可以跳过直接下载. 下载完成后,选择一个磁盘内放置并解 ...

随机推荐

  1. PAT (Advanced Level) Practice 1152 Google Recruitment (20 分)

    In July 2004, Google posted on a giant billboard along Highway 101 in Silicon Valley (shown in the p ...

  2. OCM 12c | OCM 12c Update | OCM 11g (Retiring Dec 31, 2019) | OCM 11g考试延期至2020.04.30

     OCM 全球考试安排时间表 View A Worldwide OCM Schedule Oracle Database 12c Certified Master Exam (OCM) OCM 12c ...

  3. WPF-命令-基础知识

    命令模型的主要元素: 1.命令 2.命令绑定:命令连接到相关的应用程序逻辑 3.命令源:命令源触发命令, 4.命令目标:应用程序逻辑. -------------------------------- ...

  4. 获取redis指定实例中所有的key

    需求:获取redis指定的实例中所有的key的名字. 千万不要使用keys *,可以使用scan命令的递归方式获取. 以下给出自己写的脚本,经过测试效果还可以. db_ip=5.5.5.101 db_ ...

  5. C语言 sizeof()用法介绍

    本文 转自https://www.cnblogs.com/huolong-blog/p/7587711.html   1.      定义 sizeof是一个操作符(operator). 其作用是返回 ...

  6. Go-结构体,结构体指针和方法

    https://cloud.tencent.com/developer/article/1482382 4.1.结构体 结构体:讲一个或多个变量组合到一起形成新的类型,这个类型就是结构体,结构体是值类 ...

  7. 百度的Ueditor在VS2015/VS2010中配置需注意的地方

    1.下载:https://ueditor.baidu.com/website/download.html#uedito 官网已无1.4.3的.net版本下载,不知道百度在搞什么,下载完整版和ASP版本 ...

  8. mysql 表中数据不存在则插入,否则更新数据

    在很多时候我们会操作数据库表,但是在向表中插入数据时,会遇到表中已经存在该id的数据或者没有该id的数据的情况,没有该id的数据的情况时直接插入就OK,遇到已经存在该id的数据的情况则更新该id的数据 ...

  9. Linux下用Bash语言实现简单排序的功能

    题目链接: 题目描述 利用指针,编写一个函数实现三个整数按由小到大的排序. 输入 三个整数 输出 由小到大输出成一行,每个数字后面跟一个空格 样例输入 2 3 1 样例输出 1 2 3 复习下Linu ...

  10. 2.Ubuntu安装 Docker

    平台支持 Docker CE 支持多种平台,如下表所示 桌面 平台 架构 Docker Desktop for Mac (macOS) X64 Docker Desktop for Windows ( ...