千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

当前位置:首页  >  技术干货  > 为什么mysql从8.0.0版本开始,zip方式安装就不支持32位了?

为什么mysql从8.0.0版本开始,zip方式安装就不支持32位了?

来源:千锋教育
发布人:xqq
时间: 2023-10-13 15:32:31 1697182351

一、为什么mysql从8.0.0版本开始,zip方式安装就不支持32位

目前mysql支持win32的版本最新只到5.7.33,具体如下图,打开下载页面之后点击红框里的Looking for previous GA versions。然后你会看到弹出一个新的下拉框,这里选择x86,32-bit。得出结论,最新的32bit支持版本。

MySQL 8.0 是一个里程碑式的版本,引入了大量新特性,如性能优化、安全性改进和改进的用户体验等,可以更好地支持企业级应用程序的需求。同时,MySQL 8.0 还支持多线程、并行查询和外部键等新功能,可以更好地支持高并发访问,提高应用程序的性能。

1、用户创建于授权

MySQL 8.0 创建用户和用户授权命令需要分开执行,MySQL 5.7之前直接直接使用 grant 命令实现两步操作。

scss

复制代码

[5.7.37-log]>grant all privileges on *.* to hunter@’%’ identified by ‘123456’;

Query OK, 0 rows affected, 1 warning (0.00 sec)

scss

复制代码

[8.0.27]>grant all privileges on *.* to hunter@’%’ identified by ‘123456’;

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘identified by ‘123456” at line 1

[8.0.27]>create user hunter@’%’ identified by ‘123456’;

Query OK, 0 rows affected (0.03 sec)

[8.0.27]>grant all privileges on *.* to hunter@’%’;

Query OK, 0 rows affected (0.02 sec)

[8.0.27]>flush privileges;

Query OK, 0 rows affected (0.01 se

2、认证插件更新

MySQL 5.7 的插件为:mysql_native_password

MySQL 8.0 认证插件更新为:caching_sha2_password

插件升级后,破解密码难度增大,安全性大大增强,但是,在远程访问时,需要指定目标服务器mysql的RSA公钥,否则,使用明文密码进行访问,会报错。可以想象到,在远程管理大量的服务器时,这明显会降低办事效率,所以目前还是建议使用mysql_native_password插件。

远程明文访问报错信息:Authentication plugin ‘caching_sha2_password’ reported error: Authentication requires secure connection

sql

复制代码

[5.7.37-log]>show variables like ‘default_authentication_plugin’;

+——————————-+———————–+

| Variable_name                 | Value                 |

+——————————-+———————–+

| default_authentication_plugin | mysql_native_password |

+——————————-+———————–+

1 row in set (0.00 sec)

[5.7.37-log]>select user,host,plugin from mysql.user;

+—————+———–+———————–+

| user          | host      | plugin                |

+—————+———–+———————–+

| root          | localhost | mysql_native_password |

| mysql.session | localhost | mysql_native_password |

| mysql.sys     | localhost | mysql_native_password |

| hunter        | %         | mysql_native_password |

+—————+———–+———————–+

4 rows in set (0.00 sec)

sql

复制代码

[8.0.27]>show variables like ‘default_authentication_plugin’;

+——————————-+———————–+

| Variable_name                 | Value                 |

+——————————-+———————–+

| default_authentication_plugin | caching_sha2_password |

+——————————-+———————–+

1 row in set (0.03 sec)

–指定插件

[8.0.27]>create user test_user@’%’ identified with mysql_native_password by ‘123456’;

Query OK, 0 rows affected (0.02 sec)

[8.0.27]>select user,host,plugin from mysql.user;

+——————+———–+———————–+

| user             | host      | plugin                |

+——————+———–+———————–+

| hunter           | %         | caching_sha2_password |

| test_user        | %         | mysql_native_password |

| mysql.infoschema | localhost | caching_sha2_password |

| mysql.session    | localhost | caching_sha2_password |

| mysql.sys        | localhost | caching_sha2_password |

| root             | localhost | caching_sha2_password |

+——————+———–+———————–+

6 rows in set (0.00 sec

3、密码重用策略

新增3个参数用于控制密码重复使用策略

password_history:限制修改的密码必须是多少次内不重复,修改的密码信息会记录在mysql.password_history中,修改密码时会与表中的信息对比,默认值为0,即不限制。

延伸阅读:

二、Django 是什么

Django 是一个高级的 Python 网络框架,可以快速开发安全和可维护的网站。由经验丰富的开发者构建,Django 负责处理网站开发中麻烦的部分,因此你可以专注于编写应用程序,而无需重新开发。 它是免费和开源的,有活跃繁荣的社区,丰富的文档,以及很多免费和付费的解决方案。

Django 可以使你的应用具有以下优点:

完备性

Django 遵循“功能完备”的理念,提供开发人员可能想要“开箱即用”的几乎所有功能。因为你需要的一切都是一个”产品“的一部分,它们都可以无缝结合在一起,遵循一致性设计原则,并且具有广泛和最新的文档。

通用性

Django 可以(并已经)用于构建几乎任何类型的网站—从内容管理系统和维基,到社交网络和新闻网站。它可以与任何客户端框架一起工作,并且可以提供几乎任何格式(包括 HTML,Rss 源,JSON,XML 等)的内容。你正在阅读的网站就是基于 Django。

在内部,尽管它为几乎所有可能需要的功能(例如几个流行的数据库,模版引擎等)提供了选择,但是如果需要,它也可以扩展到使用其他组件。

安全性

Django 帮助开发人员通过提供一个被设计为“做正确的事情”来自动保护网站的框架来避免许多常见的安全错误。例如,Django 提供了一种安全的方式来管理用户账户和密码,避免了常见的错误,比如将 session 放在 cookie 中这种易受攻击的做法(取而代之的是 cookies 只包含一个密钥,实际数据存储在数据库中)或直接存储密码而不是密码哈希。

密码哈希是通过密码散列函数发送密码而创建的固定长度值。Django 能通过运行哈希函数来检查输入的密码 – 就是 – 将输出的哈希值与存储的哈希值进行比较是否正确。然而由于功能的“单向”性质,即时存储的哈希值受到威胁,攻击者也难以解决原始密码。(但其实有彩虹表 – 译者观点)

默认情况下,Django 可以防范许多漏洞,包括 SQL 注入,跨站点脚本,跨站点请求伪造和点击劫持。

声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。
10年以上业内强师集结,手把手带你蜕变精英
请您保持通讯畅通,专属学习老师24小时内将与您1V1沟通
免费领取
今日已有369人领取成功
刘同学 138****2860 刚刚成功领取
王同学 131****2015 刚刚成功领取
张同学 133****4652 刚刚成功领取
李同学 135****8607 刚刚成功领取
杨同学 132****5667 刚刚成功领取
岳同学 134****6652 刚刚成功领取
梁同学 157****2950 刚刚成功领取
刘同学 189****1015 刚刚成功领取
张同学 155****4678 刚刚成功领取
邹同学 139****2907 刚刚成功领取
董同学 138****2867 刚刚成功领取
周同学 136****3602 刚刚成功领取
相关推荐HOT