Home >Database >Mysql Tutorial >MySQL 8.0.0 development milestone version released!_MySQL

MySQL 8.0.0 development milestone version released!_MySQL

WBOY
WBOYOriginal
2016-10-09 08:33:421257browse

The MySQL development team announced the release of MySQL 8.0.0 development milestone version (DMR) on the 12th! Some people may be surprised why MySQL jumped from 5.x to 8.0. In fact, the MySQL 5.x series has continued for many years, starting from 5.1 before being acquired by Oracle, and has remained at 5.x since the acquisition, such as 5.5, 5.6, 5.7 and so on. In fact, if you follow the original release rhythm, you can think of 5.6.x as 6.x and 5.7.x as 7.x. Therefore, we just changed the version naming method.

 However, the MySQL 8.0.0 development version released this time still has many highlights.

MySQL 8.0.0 Highlights

Transactional data dictionary, completely separated from the MyISAM storage engine

Really put the data dictionary into some tables in InnoDB, and no longer need FRM, TRG, and PAR files! Information Schema now appears as a view of the data dictionary tables. In principle, there is no need for the MyISAM data table type at all, and all system tables can be placed in InnoDB.

SQL Role

A role is a collection of permissions. You can create roles, grant and remove roles to a user. This is convenient for permission management.

utf8mb4 character set will become the default character set and support Unicode 9

The default character set will be changed from latin1 to utf8mb4, and the default collation will be changed from latin1_swedish_ci to utf8mb4_800_ci_ai.

Invisible index

Some indexes can be made invisible so that the SQL optimizer won't use it, but it will continue to be updated in the background. Visibility can be restored at any time when needed.

Bit operations can be performed on binary data

Not only can you perform bit operations on BIGINT, but also supports bit operations on [VAR]BINARY/[TINYMEDIUMLONG]BLOB starting from 8.0.

Improved operation with IPv6 and UUID

INET6_ATON () and INET6_NTOA () can now perform bit operations, because INET6_ATON () now returns the VARBINARY (16) data type (128 bits). UUID operations have been improved with the introduction of three new functions UUID_TO_BIN (), BIN_TO_UUID () and IS_UUID (). MySQL does not have special IPv6 and UUID data types, but is stored in the VARBINARY (16) data type.

Persistent global variables

You can use SET PERSIST to set persistent global variables, which will be retained even if restarted.

Improvements of performance database Performance Schema

For example, more than 100 indexes have been added to the performance database to enable faster retrieval.

Refactor SQL parser

Continuous and gradual improvement of SQL analyzer. The old parser had severe limitations due to its syntactic complexity and top-down parsing approach, making it difficult to maintain and extend.

Cost Model

InnoDB buffers can now estimate how many tables and indexes are in the main memory cache, which allows the optimizer to know whether the data can be stored in memory or must be stored on disk when choosing an access method.

Histograms

By using histograms, users or DBAs can make statistics on data distribution, which can be used in query optimization to find optimized query solutions.

Improve scanning performance

Improved the performance of InnoDB range queries, which can improve the performance of full table queries and range queries by 5-20%.

Reconstruct BLOB

Refactoring BLOB speeds up fragment read/update operations, which can speed up JSON data operations.

Persistent self-increasing value

InnoDB will persist the maximum value of the auto-increment sequence to the redo log. This improvement also fixes a very old bug #199.

Temporary table

Remove support for compressed temporary tables and store temporary table metadata in memory.

For more important improvements and details, please refer to the MySQL 8.0.0 release announcements [1] and [2].

Download

 At present, 8.0.0 is still a development version. If you want to experience and test the latest features, you can download the installation packages for each platform from dev.mysql.com[3]. However, the MySQL software package is getting larger and larger, and the binary package on the Linux platform is nearly 1 GB. If used in a production environment, please continue to use the 5.7 series before 8.0 enters the stable version. The latest version is the 5.7.15 GA version - which is only more than 600 M.

 The latest source code is on GitHub. Interested friends can check it out. Many of them are contributions from Chinese people.

[1]: http://dev.mysql.com/doc/relnotes/mysql/8.0/en/

[2]: http://mysqlserverteam.com/the-mysql-8-0-0-milestone-release-is-available/

[3]: http://dev.mysql.com/downloads/mysql/

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn