mysql 密码大小写_MySQL数据库加密和解密~认证登陆密码(mysql.user)和MySQL不区分大小写...

MySQL数据库认证密码有两种方式:

1:MySQL 4.1版本之前是MySQL323加密

2:MySQL 4.1和之后的版本都是MySQLSHA1加密

还有函数:AES_ENCRYPT()加密函数和AES_DECRYPT()解密函数和MD5()加密。

MySQL数据库中自带old_password(str)和password(str)函数,前者是MySQL323加密,后者是MySQLSHA1方式加密;

MYSQL323加密中生成的是16位字符串,而在MySQLSHA1中生存的是41位字符串,其中*是不加入实际的密码运算中,就是说MySQLSHA1加密的密码的实际位数是40位;

MYSQL323对应于old_password(str)函数

MYSQLSHA1对应于password(str)函数

注:AES_ENCRYPT()加密函数和AES_DECRYPT()解密函数都需要一个“key”来协助加密。

eg:select aes_encrypt('kaka123','key');

select aes_decrypt(aes_encrypt('kaka123','key'),'key');

1.MYSQL323对应于old_password(str)函数加密:

mysql> select old_password('kaka123');

+-------------------------+

| old_password('kaka123') |

+-------------------------+

| 2ee53a20184c9267 |

+-------------------------+

1 row in set, 1 warning (0.00 sec)

2.MYSQLSHA1对应于password(str)函数加密:

mysql> select password('kaka123');

+-------------------------------------------+

| password('kaka123') |

+-------------------------------------------+

| *90B3D884FB6092549F244125549B77C000A0F9C6 |

+-------------------------------------------+

1 row in set (0.00 sec)

3.MYSQL MD5()加密:

mysql> select md5('kaka123');

+----------------------------------+

| md5('kaka123') |

+----------------------------------+

| 5d052f1e32af4e4ac2544a5fc2a9b992 |

+----------------------------------+

1 row in set (0.00 sec)

4.AES_ENCRYPT()加密函数

mysql> select aes_encrypt('kaka123','key');

+------------------------------+

| aes_encrypt('kaka123','key') |

+------------------------------+

| D#jA

|

+------------------------------+

1 row in set (0.00 sec)

5.AES_DECRYPT()解密函数

mysql> select aes_decrypt(aes_encrypt('kaka123','key'),'key');

+-------------------------------------------------+

| aes_decrypt(aes_encrypt('kaka123','key'),'key') |

+-------------------------------------------------+

| kaka123 |

+-------------------------------------------------+

1 row in set (0.00 sec)

4.AES_ENCRYPT()加密函数

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

+----------------+------+-------------------------------------------+

| host | user | password |

+----------------+------+-------------------------------------------+

| localhost | root | *71ABCA8B06D46066CEF8062A75256E66243D0FC8 |

| tony\_ts\_tian | root | *71ABCA8B06D46066CEF8062A75256E66243D0FC8 |

| 127.0.0.1 | root | *71ABCA8B06D46066CEF8062A75256E66243D0FC8 |

| ::1 | root | *71ABCA8B06D46066CEF8062A75256E66243D0FC8 |

| % | root | *71ABCA8B06D46066CEF8062A75256E66243D0FC8 |

| % | kaka | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |

+----------------+------+-------------------------------------------+

6 rows in set (0.00 sec)

mysql> update mysql.user set password=AES_ENCRYPT("kaka123",'key') where host='%' and user='kaka';

Query OK, 1 row affected (0.00 sec)

Rows matched: 1 Changed: 1 Warnings: 0

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

+----------------+------+-------------------------------------------+

| host | user | password |

+----------------+------+-------------------------------------------+

| localhost | root | *71ABCA8B06D46066CEF8062A75256E66243D0FC8 |

| tony\_ts\_tian | root | *71ABCA8B06D46066CEF8062A75256E66243D0FC8 |

| 127.0.0.1 | root | *71ABCA8B06D46066CEF8062A75256E66243D0FC8 |

| ::1 | root | *71ABCA8B06D46066CEF8062A75256E66243D0FC8 |

| % | root | *71ABCA8B06D46066CEF8062A75256E66243D0FC8 |

| % | kaka | œDŸ#jAÂ

| ¯Ll

+----------------+------+-------------------------------------------+

6 rows in set (0.00 sec)

5.AES_DECRYPT()解密函数

mysql> select host,user,AES_DECRYPT(password,'key') from mysql.user;

+----------------+------+-----------------------------+

| host | user | AES_DECRYPT(password,'key') |

+----------------+------+-----------------------------+

| localhost | root | NULL |

| tony\_ts\_tian | root | NULL |

| 127.0.0.1 | root | NULL |

| ::1 | root | NULL |

| % | root | NULL |

| % | kaka | kaka123 |

+----------------+------+-----------------------------+

6 rows in set (0.00 sec)

mysql不区分大小写:

修改MySql Server安装目录下的 my.ini 或my.conf文件

在mysqld节下加入下面一行

lower_case_table_names=0

(0:大小写敏感;1:大小写不敏感)最后重启一下MySql服务即可。

修改对于新建的表,老表无效

#解决mysql字段不区分大小写:

CREATE TABLE `user`(

`id` BIGINT NOT NULL AUTO_INCREMENT COMMENT'用户登录表主键id',

`uname` VARCHAR(35) NOT NULL COMMENT'用户登录名',

`upass` VARCHAR(32) NOT NULL COMMENT'用户登录密码',

`ustatus` VARCHAR(2) NOT NULL DEFAULT '0' COMMENT'用户登录状态,0为正常,1为锁定',

UNIQUE (`uname`),

PRIMARY KEY(`id`)

)ENGINE = INNODB COLLATE=utf8_bin COMMENT='用户登录表';

注:COLLATE=utf8_bin

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/530885.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

三星手机 java_如何在三星手机上安装Java ME应用程序?

我的手机应该可以运行:JavaTM:MIDP 2.0,基于CLDC 1.1的应用程序.但是,无论我尝试在其上安装哪个应用程序,我都会收到错误:已下载的JAR无效我已经尝试在Netbeans上构建Java ME项目,使用指定的MIDP 2.0和CLDC 1.1.这些应用程序很简单,使用Netbe…

openshift 3 mysql_最新OpenShift免费空间申请与使用教程-1G内存1G空间支持PHP和MysqL

一、OpenShift空间申请使用前必备工具1、OpenShift官网:1、官方网站:https://www.openshift.com/2、OpenShift V3:https://manage.openshift.com/2、Github账号(或者其他的git仓库也可以..)。注册git仓库是为了方便的实现代码的同步&#xff…

python 简单web音频_Python Twisted web服务器音频fi

我尝试用python中的twisted创建一个简单的web服务器。不过,我无法提供m4a音频文件。在在当前程序中,当我加载http://localhost:8880/mp3.html时,它可以正常工作。它显示音频播放器和mp3播放。此外,程序同时打印“/mp3.html”和/测…

cpython教程_python高性能扩展工具-cython教程1快速入门

Cython不仅仅是一种编程语言。它的起源可以追溯到SAGE数学软件包,它用于提高数学计算性能,例如涉及矩阵的计算。更一般地说,我倾向于将Cython视为SWIG的替代品,为本机代码生成非常好的Python绑定。SWIG是最早和最好之一&#xff0…

golang mysql封装_golang如何封装路由

封装方式一、路由写在 main函数中,数据库初始连接放在 init() 函数中。、首先看 main.go一个初始化函数,初始化 dbfunc init() {db.Connect()}第二,路由func main() {// Configurerouter : gin.Default()// Set html render optionshtmlRende…

在java继承机制中 父类中的私有_Java中子类能继承父类的私有属性吗?

前段时间去听老师讲课的时候,老师告诉我子类是可以继承父类所有的属性和方法的。当时我是极其疑惑的,因为之前学校考试时这个考点我记得很清楚:子类只能继承父类的非私有属性和方法。老师给我的解释是这样的——先看下面一段代码/*** 定义父类…

堆栈关系java_从关键字说Java对象、引用、指针、堆栈的关系

前言:上一篇中我们介绍了new关键字 点击打开链接,new一个类,实际上就是调用该类的构造函数,返回该类的对象。如a new Animal();返回的对象赋给变量a。我们来分析一下内存分配的步骤,new一个类,实际上就创造…

java socket编程客户端_Java Socket编程 - 基于Socket实现HTTP下载客户端

没有借助任何第三方库,完全基于JAVA Socket实现一个最小化的HTTP文件下载客户端。完整的演示如何通过Socket实现下载文件的HTTP请求(request header)发送如何从Socket中接受HTTP响应(Response header, Response body)报文并解析与保存文件内容。如何通过SwingWork实…

java读c二进制文件_如何使用JAVA读取C / Matlab创建的二进制文件

小编典典正如我所猜测的那样,这是一个字节序问题,即您的二进制文件被写为低字节序的整数(可能是因为您使用的是Intel或类似的CPU)。但是,无论Java代码运行在哪个CPU上,它都在读取大端整数。为了显示该问题,以下代码将读…

java 通联支付接口_allinpay 通联支付接口实例

【实例简介】allinpay 支付的实例代码,这只是部分,需要其它的请联系我。 帮忙找【实例截图】【核心代码】201708081652114811└── unionorder_demo├── java│ └── uniondemo│ ├── WebContent│ │ ├── META-INF│ │ │ └…

java web tcp长连接超时时间_常用java web容器http长连接超时设置

1.http长连接相关知识http长连接对我们来说并不陌生,但长连接并不是永远不会关闭。对于HTTP长连接需要注意下面几点:keepalive_timeout指的是web服务器发送完最后一个响应报文后,开始计时,如果在keepalive_timeout指定的时间内还没…

java相遇问题_行程问题

行程问题 《行程问题》说课设计——现代教育信息技术与数学学科的整合福建省闽侯县尚干中心小学 林惠贞 邮编:350112 邮箱:zhenzi2277163.com众所周知,未来的教育,倡导开放式学习,把学习的地点扩展到社会、网络&…

jbutton 数组创建 java_java-将JButton数组添加到JPanel(按钮不可见)

我正在尝试使用Java创建一个简单的计算器.为此,我创建了一个JButton数组并将其添加到JPanel中.问题:按钮不可见.我还添加了一个JLabel和一个JButton进行测试,它们可以正确显示.编码:package test;import java.awt.BorderLayout;import javax.swing.*;pub…

jwt java 项目实例_JWT(JsonWebToken)+SpringMVC项目demo

【实例简介】JSON Web Token(JWT)是一个非常轻巧的规范。现在免费给大家分享一个JWT(JsonWebToken)SpringMVC项目的demo!【实例截图】【核心代码】jwt-demo└── jwt-demo├── pom.xml├── src│ └── main│ ├── java│ │ └── com│ │ └── hthl…

java写一个99到0_Java中一个普通的循环为何从10开始到99连续相乘会得到0?

【套装4本】java编程思想4第4版402.5元包邮(需用券)去购买 >这是一块非常简单的Java代码片段&#xff1a;public class HelloWorld{public static void main(String []args){int product 1;for (int i 10; i < 99; i) {product * i;}System.out.println(product);}}为什…

neo4j java查找_Spring-Boot使用neo4j-java-driver-- 查找两个节点之间关系的最短路径

一、Cypher数据create (小北:朋友圈{姓名:"小北", 喜欢的书类:"Poetry"}),(小菲:朋友圈{姓名:"小菲", 喜欢的书类:"Science Fiction"}),(小鹏:朋友圈{姓名:"小鹏", 喜欢的书类:"Music"}),(小颖:朋友圈{姓名:"…

java 返回两个集合_使用 java stream 获取两个集合之间的交集.差集

原始对象List hrProbationMainList new ArrayList();List hrProbationMains probationMainDao.findAll();获取交集对象stream 转换成流 (只有变成流才能操作)filter 封装判断条件(如果true 则收集到结果中,false则不收集)collect 收集结果返回到指定类型中//交集对象ListhrPro…

java重写重定向_JavaWeb请求转发与请求重定向理解

请求转发使用方法httpServletRequest.getRequestDispatcher("login.jsp").forward(httpServletRequest, servletresponse);此请求过程 完全是一次request对象 完成的。我们可以用 filter 截取用户的这次请求&#xff0c;然后利用这次请求 访问其它页面&#xff0c;当…

autojs调用java识字_autojs实现抽象类的继承

作者: 牙叔使用情景在java中, 抽象类必须继承才能使用, 那么在autojs中怎样实现继承抽象类呢?java中的实现创建一个抽象类package com.yashu;public abstract class Employee{ private String name; private String address; private int number; public abstract double com…

java wix_使用WIX升级MSI

我正在使用WIX创建一个MSI安装程序 . 一切都很好&#xff0c;我能够创建自己的产品并创造一切 .但是&#xff0c;当我想要创建升级时&#xff0c;它无法正常工作 .我使用了以下代码&#xff0c;其中$(var.ProductUpgradeCode)被定义并用作product元素中的upgrade-code .Minimum…