之前一直使用 SQL Server 作为主数据库而不是 MySQL ,原因之一是单机 SQL Server 性能比 MySQL 强很多,另一个原因是之前客户的系统管理员大多只有 SQL Server 的维护经验。但 MySQL 8.0 正式发布之后,研发团队都嗨翻了,毕竟 MySQL 相比 SQL Sever 也有很多优势(轻便小巧、跨平台等),新版本的 MySQL8.0 性能竟然提升了 2 倍。并且将 UTF8-MB4 作为默认的字符编码(避免手机发送的 Emoji 表情发生乱码情况),所以我们决定尝试将开发环境从目前的 SQL Server 迁移到 MySQL 8.0 上面。

以 Windows10 环境为例大致简述如下:

1、MySQL 之前的版本需要用到 .NET FrameWork 4.0,而 MySQL 8.0 使用的是 .Net FrameWork 4.5.2;
2、MySQL 8.0 安装后默认的加密方式为 caching_sha2_password,所以旧程序连接到 MySQL 时会出现相应的错误,将连接动态库(MySql.Data.dll)更新到最新版本即可;
3、使用 DB2DB 工具将数据从 SQL Server 迁移到 MySQL 8.0 上面。使用该工具的好处是可以将主流类型的数据库(如:SQL Sever、SQLite、MySQL、 PostgresSQL……)迁移到 MySQL 8.0 上面,以后也可以从 MySQL 8.0 迁移回主流类型数据库,避免了 MySQL 8.0 官方所说的不能向下降级的问题。