- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我在 x86_64 Linux 服务器上编译并安装了 mysql-5.1.59。
首先我在 cli 中设置 root 密码并登录:
$ bin/mysqladmin -uroot password 'somepass'
$ bin/mysql -uroot -p 'somepass'
mysql>
登录成功!
然后我使用SQL语句创建了一个用户:
mysql> grant all privileges on mydb.* to 'myuser'@'localhost' identified by 'somepass';
mysql> flush privileges;
密码与root完全相同。
但是我查询后:
mysql> select host,user,password from mysql.user;
我注意到两个帐户的密码值不相同。我尝试使用 myuser 登录 mysql 但失败。
顺便说一句,如果我这样更改 root 密码:
mysql> update mysql.user set password=PASSWORD('somepass') where user='root';
mysql> flush privileges;
然后我就无法再用root登录mysql了:
$ bin/mysql -uroot -p
Enter password:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
这在我的其他服务器上从未发生过。看来这个问题与操作系统有关。哈希值之间怎么可能不同呢?谢谢!
最佳答案
虽然 MySQL 文档在这方面有点稀疏,但我认为它对密码进行了加盐处理。
为了安全起见,通常在对密码进行哈希处理之前将一个称为“盐”的随机值添加到密码中。使用盐,相同密码的结果哈希值非常不同。
来自维基百科:
The benefit provided by using a salted password is making a lookup table assisted dictionary attack against the stored values impractical, provided the salt is large enough. That is, an attacker would not be able to create a precomputed lookup table (i.e. a rainbow table) of hashed values (password + salt), because it would take too much space. A simple dictionary attack is still very possible, although much slower since it cannot be precomputed.
关于mysql - mysqladmin 和 password() 函数之间的哈希值不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8075670/
使用 MySQLAdmin。从 Windows 服务器移动数据并尝试替换 url 中的大小写,但未找到匹配项。需要斜杠,因为我不想替换除网址(在帖子表中)之外的任何内容中的文本。我认为 %20 是问题
即使密码失败,Mysqladmin ping 也会返回 0,而 mysqlclient 则不会。这是 Mysqladmin 开发人员的错误吗?我不明白为什么 Mysqladmin 要求输入登录名/密码
我必须从 bash 脚本创建一个数据库,它可以工作,但我想知道是否可以在脚本上引入用户密码 #!/bin/bash pass ='root' mysql -u root -p$p
我是 Docker 业务的新手。我设置了 nginx、php 和 mysql docker - 现在我想查看 mysql 数据库。是否有 mysqladmin 功能或其他功能,这样我就不必从一开始就编
所以我正在配置我的数据库。 我发现这两本指南有很多我需要使用的命令。 http://www.tecmint.com/mysql-backup-and-restore-commands-for-data
我的问题: C:\Users\Dom>C:/xampp/mysql/bin/mysqladmin -uroot status; C:/xampp/mysql/bin/mysqladmin: 未
我正在尝试在 mysql admin 中创建存储过程。我在 POWWEB.com 中托管一个网站。为此,我试图在 mysqladmin 中创建存储过程。 Mysql版本是5.0.45。我只用一行代码就
今天(2015-05-02)我通过apt-get update升级了我的Linux系统 apt-get upgrade 而 mysql、mysqladmin 和更多软件包 已更新。 mysql-ser
今天(2015-05-02)我通过apt-get update升级了我的Linux系统 apt-get upgrade 而 mysql、mysqladmin 和更多软件包 已更新。 mysql-ser
我经历过这里列出的类似案例,但似乎没有用。 我使用 MySQL Workbench 与托管在另一台服务器上的数据库建立连接。尝试了几次,无法连接,然后出现此错误。我很困惑我什至应该在哪里做这个冲洗。上
已结束。此问题不符合 Stack Overflow guidelines .它目前不接受答案。 这个问题似乎与 a specific programming problem, a software a
我在 x86_64 Linux 服务器上编译并安装了 mysql-5.1.59。 首先我在 cli 中设置 root 密码并登录: $ bin/mysqladmin -uroot password '
我正在尝试将此作为 EC2 实例上的启动脚本(以 root 身份运行)的一部分 # mysqladmin -u root password mygreatnewpassword 为了调试它,我将整个命
我试图连接到远程 mysql 服务器,但由于通过我的主机 IP 地址的连接被阻止,我无法连接到它。 这是我遇到的异常java.sql.SQLException:数据源拒绝建立连接,来自服务器的消息:“
努力奔跑 mysqladmin flush-hosts 为了解除阻塞但是收到此错误: error: 'Access denied for user 'root'@'localhost' (using
在 shell 中,我可以使用以下命令更改 MySQL 密码: mysqladmin -root 密码NewPassword 是否也可以使用 mysqladmin 更改我的 MySQL 用户名? 最佳
我有一个托管帐户,在数据库部分我有“MySQL® 数据库”,“MySQL® 数据库向导”、“phpMyAdmin”和“远程 MySQL”选项 我得到的错误是 Database ErrorHost 'a
我觉得这应该很简单,但我不知道在使用“mysqladmin create”创建数据库时如何设置字符集。我认为这会起作用 mysqladmin -u root db_name --character-s
我目前使用以下内容,但它总是提示我手动输入密码。启动可执行文件时有什么方法可以在命令行中传入? mysqladmin processlist -u root -p 最佳答案 刚刚找到答案.... my
我正在为我的 Web 应用程序使用 Windows 服务器。实际上日志文件太重了,我想重置那个文件。我已经启动控制台来刷新 mysql 文档上所写的日志。当我键入此 mysqladmin flush-
我是一名优秀的程序员,十分优秀!