MySQL修改密码和加密
2016-01-16 11:23
513 查看
1,给密码加密
范例:用户名是hw;密码是root,不想别人在数据库中看到密码root的明文:insert into hw values(null,'hw',PASSWORD('root'));
那么别人在数据库中select看到的结果就是:
——-|—————————|———————-
id | name | password2 |
---|---|---|
1 | hw | *A0B30B8D9F3C3595594C253D96748149629A9407 |
那么在Web中如何验证加密后的密码呢?
使用的SQL语句是:
“select count(*)from hw where hw.name =? and hw.password2=PASSWORD(?)”
具体的验证代码如下:
public boolean getByName(String name,String password){ BigInteger pass=(BigInteger )this.sessionFactory.getCurrentSession(). createSQLQuery("select count(*)from hw where hw.name =? and hw.password2=PASSWORD(?)"). setParameter(0, name).setParameter(1, password).uniqueResult(); if(0==pass.intValue())return false; return true; }
2,修改MySQL密码
有两种方式修改MySQL密码方式一
mysql> update mysql.user set password=PASSWORD('root') where user='root'; mysql> flush privileges;
方式二
运行cmd进入命令行窗口,然后输入:
mysqladmin -uroot -proot password 1234 (把密码从root改为1234) mysqladmin -uroot -phw password root (把密码从hw改为root)
3,创建新用户
mysql> grant all on *.* to dbuser@localhost identified by ‘1234’ with grant option;
@ 后面跟ip,表示允许登录的ip,%表示允许任何ip访问
相关文章推荐
- MySQL中的integer 数据类型
- MySQL存储过程
- Android之获取手机上的图片和视频缩略图thumbnails
- mysql中int、bigint、smallint 和 tinyint的区别与长度
- mysql load data 导出、导入 csv
- source命令执行SQL脚本文件
- MySQL创建用户及权限控制
- MySQL管理数据表
- linux下mysql添加用户
- mysql procedure
- mysql触发器
- 数据库链接字符串查询网站
- MySQL 备份和恢复策略
- mac下安装mysql(转载)
- mysql 修改编码 Linux/Mac/Unix/通用(杜绝修改后无法启动的情况!)
- MySQL数据的导出、导入(mysql内部命令:mysqldump、mysql)
- mysql数据行转列
- Linux下修改MySQL编码的方法