将旧备份恢复到最新的 MySQL 版本

RPK*_*RPK 4 mysql backup

我们的旧数据库是 MySQL 5.1 服务器,已经有四年的历史了。如果我卸载 MySQL 5.1 Server 并安装最新版本并恢复备份,我会获得性能优势吗?我猜新版本发布说有很多性能优势。

Rol*_*DBA 5

恕我直言,当谈到 MySQL 5.5 时,你肯定会看到 InnoDB 的性能比过去的版本好得多,因为 InnoDB 缓冲池中的脏页不会停留那么长时间。那些脏页会被更稳健地刷新。

您还可以创建多个 InnoDB 缓冲池(参见innodb_buffer_pool_instancesinnodb_buffer_pool_size)。为了减少缓冲池之间的线程锁定,请确保将innodb_thread_concurrency设置为 0 以让 InnoDB 存储引擎决定如何最好地处理线程分配。

迁移到 MySQL 5.5 的注意事项

确保您 mysqldump 除 mysql 架构之外的所有数据库。有一种更清晰、更清晰的方法可以将用户授权从 MySQL 模式中迁移出来。事实上,有两种选择可以实现这一点:

选项 1:使用mk-show-grants

这会将所有 MySQL 授权转储为 SQL 语句,这完全可移植到任何 MySQL 5.x 实例。

选项 2:运行这些命令(我个人模拟 mk-show-grants 的作用)

mysql -hhostaddr -umyuserid -pmypassword --skip-column-names -A -e"SELECT CONCAT('SHOW GRANTS FOR ''',user,'''@''',host,''';') FROM mysql.user WHERE user<>''" | mysql -hhostaddr -umyuserid -pmypassword --skip-column-names -A | sed 's/$/;/g' > MySQLUserGrants.sql
Run Code Online (Sandbox Code Playgroud)