至于为什么加密,主要防止一些过多人知道数据库密码,可能造成公司的损失,同时也避免一些潜在的危害,因此,数据库密码最好还是只有几个人知道,太多人知道的话,影响不好。

最近删库的事情,太多了,个人觉得一个专业的DBA或者是优秀的管理是可以避免此类现象的发生。

请严格按照如下步骤走,这样会减少不必要的报错。

步骤一:

java -cp C:\Users\test\.m2\repository\com\alibaba\druid\1.0.18\druid-1.0.18.jar com.alibaba.druid.filter.config.ConfigTools test1234

输出结果如下:
privateKey:MIIBUwIBADANBgkqhkiG9w0BAQEFAASCAT0wggE5AgEAAkEA0nT/i1VshEcfOh+OvN1SxcWJTKz1tD2kdvpzD1LYX6ybQ3d7AXl2R51GW1V7Il/j/Y0rhuskijMQ9+XuMRKKiwIDAQABAkAJ7eMwm7Mm+oQKpfqCBp8lHZDAwVhGTLI5us865dm3icM81HWdgS27nvSt9Rg83YJCxFmyeEN7RrAhC1V5VTJBAiEA/XL1JfX8EB4JmQU+bup5UEKzv2uxGvDmVfrD5pmH4dMCIQDUk0QzGilX2wflOsle2bOl6/qAZ+XBxX9zJT/1Um+JaQIgDvxUGGmB/OX5xU11EpPUlnVLMX9JmoEx7VWFbcYYLbcCIA6W9O1U9FV1UPtop319D5lpss2xU9GSzoaGnfcma0VRAiB5eYr6QgRPFWsYc1a+ZNu1f8cClK60ijVy7ohcJH1R4w==
publicKey:MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBANJ0/4tVbIRHHzofjrzdUsXFiUys9bQ9pHb6cw9S2F+sm0N3ewF5dkedRltVeyJf4/2NK4brJIozEPfl7jESiosCAwEAAQ==
password:Fanpc9x6AfcsQs16mwxwQPG36aq+PBnzKKJlmpQXyJ+PGlIAU5it1vrZqXSdpV5mb+U1z6K+aw+khUQhdVf1uQ==

步骤二:
jdbc.properties配置
validationQuery=SELECT 1
jdbc_url=jdbc:mysql://www.yctech.com/test?useUnicode=true&characterEncoding=utf8&useSSL=false
jdbc_username=test
jdbc_password=Fanpc9x6AfcsQs16mwxwQPG36aq+PBnzKKJlmpQXyJ+PGlIAU5it1vrZqXSdpV5mb+U1z6K+aw+khUQhdVf1uQ==
jdbc_mysql_publicKey=MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBANJ0/4tVbIRHHzofjrzdUsXFiUys9bQ9pHb6cw9S2F+sm0N3ewF5dkedRltVeyJf4/2NK4brJIozEPfl7jESiosCAwEAAQ==

步骤三:

请严格按照如下配置,不然可能会出现失败,比如密码错误之类的。

数据源配置:

<!-- 配置数据源 -->
<bean name="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close">
<property name="url" value="${jdbc_url}"/>
<property name="username" value="${jdbc_username}"/>
<property name="password" value="${jdbc_password}"/> <!-- 监控数据库 -->
<property name="filters" value="config"/> <!-- 初始化连接大小 -->
<property name="initialSize" value="0"/>
<!-- 连接池最大使用连接数量 -->
<property name="maxActive" value="20"/>
<!-- 连接池最大空闲 -->
<property name="maxIdle" value="20"/>
<!-- 连接池最小空闲 -->
<property name="minIdle" value="0"/>
<!-- 获取连接最大等待时间 -->
<property name="maxWait" value="60000"/> <property name="validationQuery" value="${validationQuery}"/>
<property name="testOnBorrow" value="false"/>
<property name="testOnReturn" value="false"/>
<property name="testWhileIdle" value="true"/> <!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 -->
<property name="timeBetweenEvictionRunsMillis" value="60000"/>
<!-- 配置一个连接在池中最小生存的时间,单位是毫秒 -->
<property name="minEvictableIdleTimeMillis" value="25200000"/> <!-- 打开removeAbandoned功能 -->
<property name="removeAbandoned" value="true"/>
<!-- 1800秒,也就是30分钟 -->
<property name="removeAbandonedTimeout" value="1800"/>
<!-- 关闭abanded连接时输出错误日志 -->
<property name="logAbandoned" value="true"/>
<property name="connectionProperties" value="config.decrypt=true;config.decrypt.key=${jdbc_mysql_publicKey}" />
</bean>

Druid加密的更多相关文章

  1. 数据库,使用Druid 加密数据库密码

    首先我们得下载一个druid-1.0.16.jar的包 其次键入命令 java -cp druid-1.0.16.jar com.alibaba.druid.filter.config.ConfigT ...

  2. SpringBoot使用Druid数据库加密链接完整方案

    网上的坑 springboot 使用 Druid 数据库加密链接方案,不建议采用网上的一篇文章<springboot 结合 Druid 加密数据库密码遇到的坑!>介绍的方式来进行加密链接实 ...

  3. SpringBoot之加密

    最近利用闲暇时间写了一个博客系统,主要参考wordpress,主要目的是为了提高自己的技术能力.写代码写了两年多,联系到之前在学校的时候写过的一个博客系统,发现工作中开发的系统,技术上基本一致,业务逻 ...

  4. Druid连接池(四)

    十七.Druid加密 运维和DBA都不希望把密码明文直接写在配置文件中,Druid提供了数据库密码加密的功能. ConfigFilter的作用包括: 从配置文件中读取配置 从远程http文件中读取配置 ...

  5. Druid 数据库用户密码加密 代码实现

    druid-1.0.16.jar 阿里巴巴的开源数据连接池 jar包 明文密码+私钥(privateKey)加密=加密密码 加密密码+公钥(publicKey)解密=明文密码 程序代码如下: pack ...

  6. mysql 利用druid 为访问密码加密

    在原来数据库配置文件jdbc.properties 文件中增加几行加密文件 jdbc.username=rootjdbc.password=KqYkfcQkQOdOpCnaokLfb9Kbzdf+NG ...

  7. alibaba/druid 下的 密码加密

    使用ConfigFilter cliangch edited this page on 3 Feb · 12 revisions ConfigFilter的作用包括: 从配置文件中读取配置 从远程ht ...

  8. Druid密码加密

    pom里引用: <dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring ...

  9. Druid数据源对数据库访问密码加密好麻烦

    开发中,druid数据源对数据库密码进行了加密,每次切换数据库或者修改密码后,感觉很麻烦. 解决办法: 1.用工具类中的Java代码进行加解密. 需要用到com.alibaba.druid.filte ...

随机推荐

  1. 深入理解JVM——对象

    对象的创建 虚拟机遇到一条new指令时,首先检查指令的参数能否在常量池中定位到一个类的符号引用,并且检查这个符号引用代表的类是否已经被加载.解析和初始化过.如果没有,必须先执行相应的类加载过程. 接下 ...

  2. sublime3安装ctags追踪插件

    sublime3经常要用到函数追踪插件,怎做的?下面看安装步骤: 1.安装package control 按快捷键 ctrl+shift+p 2.安装搜索 ctags插件 3.下载ctags可执行程序 ...

  3. 洛谷P4555 [国家集训队]最长双回文串(manacher 线段树)

    题意 题目链接 Sol 我的做法比较naive..首先manacher预处理出以每个位置为中心的回文串的长度.然后枚举一个中间位置,现在要考虑的就是能覆盖到i - 1的回文串中 中心最靠左的,和能覆盖 ...

  4. 我的Java之旅 第七课 JAVA WEB 会话管理

    1.隐藏域       隐藏域其实不是Servlet/JSP的会话管理机制的内容,但它能实现简单的页面状态记录的效果. 2.Cookie    Cookie类    setMaxAge() 设置有效期 ...

  5. spring使用BeanPostProcesor实现AOP源码分析

    源码 AbstractApplicationContext#public void refresh() throws BeansException, IllegalStateException { f ...

  6. React 表单与事件

    一个简单是实例 在实例中我们设置了输入框 input 值value = {this.state.data}.在输入框值发生变化时我们可以更新 state.我们可以使用 onChange 事件来监听 i ...

  7. Django学习---快速搭建搜索引擎(haystack + whoosh + jieba)

    Django下的搜索引擎(haystack + whoosh + jieba) 软件安装 haystack是django的开源搜索框架,该框架支持Solr,Elasticsearch,Whoosh, ...

  8. Linux 小知识翻译 - 「RAID」

    最近术语「RAID」变得比较有名.「RAID」是指将多个HDD组合起来使用,从而提高存储可靠性的一种技术. 那么,关于 RAID 中的 「RAID 0」「RAID 1」「RAID 5」等各种「RAID ...

  9. Lua基础之MetaTable(6)

    Lua基础之MetaTable(6) 转载地址:http://nova-fusion.com/2011/06/30/lua-metatables-tutorial/ 关于MetaTable的补充:ht ...

  10. Java用户名登录学生信息管理系统并对其进行增删改查操作

    package zzzzzzzz; import java.io.*;//作者:凯鲁嘎吉 - 博客园//http://www.cnblogs.com/kailugaji/ public class T ...