如何在 MySQL 数据库中安全地存储用户名和密码?
mysqlmysqli database更新于 2024/12/28 11:56:17
要将用户名和密码安全地存储在 MySQL 数据库中,我们可以使用 MD5()。
让我们看一个例子。首先,我们将创建一个表。CREATE 命令用于创建表。
mysql> create table UserNameAndPasswordDemo - > ( - > U_Id int(10) unsigned NOT NULL AUTO_INCREMENT, - > UserId varchar(255) DEFAULT NULL, - > UserPassword varchar(255) DEFAULT NULL, - > primary key(U_Id), - > UNIQUE KEY `UserId` (`UserId`) - > ); Query OK, 0 rows affected (0.61 sec)
使用 MD5() 插入记录并安全存储密码。
mysql> INSERT INTO UserNameAndPasswordDemo(UserId, UserPassword) VALUES ('John@gg.com', MD5('john123'));
Query OK, 1 row affected (0.17 sec)
mysql> INSERT INTO UserNameAndPasswordDemo(UserId, UserPassword) VALUES (MD5('Carol@gg.com'), MD5('123Carol'));
Query OK, 1 row affected (0.14 sec)
现在,我们将执行 SELECT 语句以显示记录,包括 MD5 中的密码。这里我们只显示 UserId 为 'John@gg.com' 的记录。
mysql> SELECT *from UserNameAndPasswordDemo where UserId='John@gg.com';
以下是输出。
+------+-------------+----------------------------------+ | U_Id | UserId | UserPassword | +------+-------------+----------------------------------+ | 1 | John@gg.com | 6e0b7076126a29d5dfcbd54835387b7b | +------+-------------+----------------------------------+ 1 row in set (0.00 sec)
显示所有记录。
mysql> SELECT *from UserNameAndPasswordDemo;
以下是我们使用 MD5 保存的用户名和密码的输出 −
+------+----------------------------------+----------------------------------+ | U_Id | UserId | UserPassword | +------+----------------------------------+----------------------------------+ | 1 | John@gg.com | 6e0b7076126a29d5dfcbd54835387b7b | | 2 | 5f565a3d794f85e5db4f3bb7b5811a25 | f1d2fb85f7d6ce7428b9b3fd569be42b | +------+----------------------------------+----------------------------------+ 2 rows in set (0.00 sec)
相关文章
有用资源
mysql 参考教程 - 该教程包含有关 mysql 的更多信息:https://www.cainiaomax.com/mysql/

