content_image/764081.jpg
partitioned table using any other storage engine must be altered—either to convert it to InnoDB  or NDB , or to remove its partitioning— before  upgrading the server, else it cannot be used afterwards. 

For information about converting MyISAM  tables to InnoDB , see Section 15.6.1.5, “Converting Tables from MyISAM to InnoDB” . 

A table creation statement that would result in a partitioned table using a storage engine without such support fails with an error ( ER_CHECK_NOT_IMPLEMENTED ) in MySQL 8.0. If you import databases from a dump file created in MySQL 5.7 (or earlier) using mysqldump  into a MySQL 8.0 server, you must make sure that any statements creating partitioned tables do not also specify an unsupported storage engine, either by removing any references to partitioning, or by specifying the storage engine as InnoDB or allowing it to be set as InnoDB  by default. 

<img src='content_image/764081.jpg'>

Note 

The procedure given at Section 2.11.5, “Preparing Your Installation for Upgrade” , describes how to identify partitioned tables that must be altered before upgrading to MySQL 8.0. 

See Section 24.6.2, “Partitioning Limitations Relating to Storage Engines” , for further information. 

• Incompatible change : Several server error codes are not used and have been removed (for a list, see Features Removed in MySQL 8.0). Applications that test specifically for any of them should be updated. 

• Important change : The default character set has changed from latin1  to utf8mb4 . These system variables are affected: 

•The default value of the character_set_server  and character_set_database  system variables has changed from latin1  to utf8mb4 . 

•The default value of the collation_server  and collation_database  system variables has changed from latin1_swedish_ci  to utf8mb4_0900_ai_ci . 

As a result, the default character set and collation for new objects differ from previously unless an explicit character set and collation are specified. This includes databases and objects within them, such as tables, views, and stored programs. Assuming that the previous defaults were used, one way to preserve them is to start the server with these lines in the my.cnf  file: 

[mysqld] character_set_server=latin1 collation_server=latin1_swedish_ci 

In a replicated setting, when upgrading from MySQL 5.7 to 8.0, it is advisable to change the default character set back to the character set used in MySQL 5.7 before upgrading. After the upgrade is completed, the default character set can be changed to utf8mb4 . 

• Incompatible change : As of MySQL 8.0.11, it is prohibited to start the server with a lower_case_table_names  setting that is different from the setting used when the server was initialized. The restriction is necessary because collations used by various data dictionary table fields are based on the lower_case_table_names  setting that was defined when the server was initialized, and restarting the server with a different setting would introduce inconsistencies with respect to how identifiers are ordered and compared. 

## Server Changes 

•In MySQL 8.0.11, several deprecated features related to account management have been removed, such as use of the GRANT  statement to modify nonprivilege characteristics of user accounts, the 

