淘小兔

MySQL 8.0.20是一个非常专业的数据库管理系统,最重要的是开源的,开发人员是瑞典的MySQL AB公司,知名度很高,被一般的网站开发人员和数据库开发人员使用,现在,MySQL 8.0被广泛应用于互联网上的中小网站,该版本具有小型、读取和保存快、总拥有成本低的特征,此外,它完全脱离了MylSAM存储引擎,许多中小型网站选择MySQL作为网站的数据库,以降低网站的总拥有成本,提高了扫描性能,并分享了显着的改进和高速性能。
738a5a3dea0851adf31760bb97e012dc

安装教程

知识兔

mysql8.0.20安装教程

mysql安装教程

1、浏览器搜索mysql下载安装

mysql8.0.20下载教程

2、登录或者不登录下载

mysql8.0.20下载教程

3、下载的是一个压缩包,直接解压缩,无需安装

mysql安装配置教程

4、新建my.ini文件,内容如下

Fb874a8cfe07227c1b8353b05916ead4

关于sql_mode,像下面这个报错,就是因为group by字段必须完全显示在查询列里,所以去掉这个模式,就不在报错了。

Caused by: java.sql.SQLSyntaxErrorException: Expression #13 of SELECT list is not in GROUP BY clause and contains nonaggregated column ...........which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by

815a453b8f75dee272fdf276878302c0

5、接着安装,配置mysql目录进系统环境变量path,可不配置,但是配置了就可以直接在dos界面敲mysql。

5ee5454fe12307fd9133c1a4de2400ce

6、电脑用管理员命令模式进入mysql/bin目录,进行mysql初始化安装

进入后,如需要切换盘符,直接d:,即可切换,然后cd mysql目录/bin ,进入bin目录

mysql安装教程

然后输入:1)、mysqld --initialize --console,该命令会初始化my.ini文件,构建data目录以及其他设置。用鼠标选中下面的密码,按ctrl+c复制。 这里注意,如果后续my.ini文件有修改,而重启mysql后不生效,需要删除data目录,删除mysql服务,命令sc delete 服务名,然后重新执行该命令

5c889019549d420e69b197147b7a7dc6

2)、输入:mysqld --install

131260d57b0693560fdfc1264bedee5c

3)、输入:net start mysql 如果本地已经安装过mysql,这里的服务名可以自己修改,如mysql8,但我这边测试,本地已存在mysql5.5的情况下,安装mysql8,读取到的密码还是mysql5.5的登录密码,后删除mysql5.5,正常安装mysql8.

6、登录、修改密码

win+R,进入命令行模式,输入:mysql -u root -p,如果前面没有加入path,这里需要进入mysql bin目录

输入步骤5里复制的密码,进入mysql

执行:alter user root@localhost identified by 'root'; enter键后成功改密码为root,这里sql语句后面的分号不要丢。

软件特点

知识兔

1. 性能:MySQL 8.0 的速度要比 MySQL 5.7 快 2 倍。MySQL 8.0 在以下方面带来了更好的性能:读/写工作负载、IO 密集型工作负载、以及高竞争("hot spot"热点竞争问题)工作负载。

2. NoSQL:MySQL 从 5.7 版本开始分享 NoSQL 存储功能,目前在 8.0 版本中这部分功能也得到了更大的改进。该项功能消除了对独立的 NoSQL 文档数据库的需求,而 MySQL 文档存储也为 schema-less 模式的 JSON 文档分享了多文档事务支持和完整的 ACID 合规性。

3. 窗口函数(Window Functions):从 MySQL 8.0 开始,新增了一个叫窗口函数的概念,它可以用来实现若干新的查询方式。窗口函数与 SUM()、COUNT() 这种集合函数类似,但它不会将多行查询结果合并为一行,而是将结果放回多行当中。即窗口函数不需要 GROUP BY。

4. 隐藏索引:在 MySQL 8.0 中,索引可以被“隐藏”和“显示”。当对索引进行隐藏时,它不会被查询优化器所使用。我们可以使用这个特性用于性能调试,例如我们先隐藏一个索引,然后观察其对数据库的影响。如果数据库性能有所下降,说明这个索引是有用的,然后将其“恢复显示”即可;如果数据库性能看不出变化,说明这个索引是多余的,可以考虑删掉。

5. 降序索引:MySQL 8.0 为索引分享按降序方式进行排序的支持,在这种索引中的值也会按降序的方式进行排序。

6. 通用表表达式(Common Table Expressions CTE):在复杂的查询中使用嵌入式表时,使用 CTE 使得查询语句更清晰。

7. UTF-8 编码:从 MySQL 8 开始,使用 utf8mb4 作为 MySQL 的默认字符集。

8. JSON:MySQL 8 大幅改进了对 JSON 的支持,添加了基于路径查询参数从 JSON 字段中抽取数据的 JSON_EXTRACT() 函数,以及用于将数据分别组合到 JSON 数组和对象中的 JSON_ARRAYAGG() 和 JSON_OBJECTAGG() 聚合函数。

9. 可靠性:InnoDB 现在支持表 DDL 的原子性,也就是 InnoDB 表上的 DDL 也可以实现事务完整性了,要么失败回滚,要么成功提交,不至于出现 DDL 时部分成功的问题,此外还支持 crash-safe 特性,元数据存储在单个事务数据字典中。

10. 高可用性(High Availability):InnoDB 集群为您的数据库分享集成的原生 HA 解决方案。

11. 安全性:对 OpenSSL 的改进、新的默认身份验证、SQL 角色、密码强度、授权。

支持功能

知识兔

1、使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性

2、支持AIX、BSDi、FreeBSD、HP-UX、Linux、Mac OS、Novell Netware、NetBSD、OpenBSD、OS/2 Wrap、Solaris、SunOS、Windows等多种操作系统

3、为多种编程语言分享了API。这些编程语言包括C、C++、C#、Delphi、Eiffel、Java、Perl、PHP、Python、Ruby和Tcl等

4、支持多线程,充分利用CPU资源,支持多用户

5、优化的SQL查询算法,有效地提高查询速度

6、既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中

7、分享多语言支持,常见的编码如中文的GB 2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名

8、分享TCP/IP、ODBC和JDBC等多种数据库连接途径

9、分享用于管理、检查、优化数据库操作的管理工具

10、可以处理拥有上千万条记录的大型数据库

更新日志

知识兔

1、事务住数据字典,完全脱离了MylSAM存储引擎,真正将数据字典放到了1nnoOB中的一些表中,夕J长下再需要FRM、TRG、pAR文件啦!InfrmationSchema现在以数据字典表的一个视图出现。原则上可以完全不需要MylSAM数据表类型了,所有的系统表都可以放到Inn0OB之中

2、SQL角色:角色是一系列叹限的集台。可以创建角色,给莫个用户授子和去除角色。这对于权限管理很方便uttsmb4字芍集将成为默认字符集,并支持Unicode 9默认字符集将从1atinl改为uttsmb4,默认走序collatlon将从latlnl_swedish_ci改为utf8mb4_800_ci_ai

3、不可见的索引:可以将一些索引设置为不可见,这样SOL优化器就不会用到它,但是它会继续在后台板纷寺更新。当有需要时,可以随时恢复可见

4、对二进制数据可以进行位操作:不仅仅可以对BIGIN下进行位操作,从8.0开始也支持对[VAR]BINARY/[TINY|MEDIUM|LONG]BLOB进行位操作了

5、持续性的全球变量:lnnoDB缓冲区现在可以估算主内存缓存区中的有多少表和索引,这可以让优化器选择访问方式时知道数据是否可以存储在阵存中环旱必须存储到磁盘上

下载仅供下载体验和测试学习,不得商用和正当使用。

下载体验

请输入密码查看内容!

如何获取密码?

 

点击下载