1、概述通常,从一个发布版本升级到另一个版本时,我们建议按照顺序来升级版本。例如,想要升级 MySQL 3.23 时,先升级到 MySQL 4.0,而不是直接升级到 MySQL 4.1 或 MySQL 5.0。 以下是在升级 MySQL 时需要注意的事项: 仔细阅读一下升级的目标版本的新特性和改变的特性,以及2个版本之间的不同特性 升级前一定要备份所有的数据 如果是在Windows平台上升级MySQL,请阅读附录 "在Windows平台上升级MySQL" 有些不同版本间的升级可能会涉及对授权表的修改,请尤其注意这个问题,详情请阅读附录 "升级授权表" ◆如果正在运行着同步,请阅读附录 "升级同步" ◆如果之前运行着MySQL-Max发布版本,想要升级到非MySQL-Max发布版本时,就需要从 mysqld_safe 去掉启动 mysqld-max 服务器的参数 在同一个发布系列版本的MySQL间,可以随意拷贝格式文件和数据文件。如果在MySQL运行过程中改变了字符集,就需要对每个MyISAM表执行 "myisamchk -r -q --set-character-set=charset" 命令修复一下。否则的话,索引的排序可能不正确,因为修改了字符集,就可能会改变索引的顺序。 通常情况下,升级到新版本不需要修改任何数据表。请检查MySQL发布事项中提到的升级需要注意的地方,如果发现不能直接升级的话,就先用 mysqldump 将数据导出来,然后再导回去。 如果担心升级失败,就先把旧版本的MySQL改个名字备份起来,以备所需。 同时,升级完之后可能还需要重新编译跟MySQL相关的程序,因为新版本的头文件和库文件可能有改变了。 如果升级后发生问题了,请先检查是否使用了旧的my.cnf配置文件,可以通过执行命令 "mysqld --print-defaults" 来打印出各种配置信息来确认。 升级的时候最好也升级类似Perl的 DBD::mysql 模块,同样,对PHP和Python而言也是一样。 2、从 MySQL 5.0 升级到 MySQL 5.1 从 5.0 升级到 5.1 的时候,必须要升级授权表。否则,可能某些存储过程无法运行。详情请看附录 "mysql_update MySQL升级时检查数据表"。 以下是从 5.0 升级到 5.1 需要注意的事项: 检查所有的变化,尤其注意那些标志为 "不兼容的变化" 的部分。详情请看附录 "mysql_update MySQL升级时检查数据表" ◆可能某些发布版本会改变授权表的机制
我们提供的服务有:网站设计、成都网站设计、微信公众号开发、网站优化、网站认证、东风ssl等。为上千余家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的东风网站制作公司
/etc/yum.repos.d/MariaDB.repo
1 升级必须是逐步递增升级, 不能跨版本升级
2 升级后必须使用升级命令 mysql_upgrade
3 升级重启后查看日志文件, 是否有错误提示, 必须修复后才可进行下一步升级
1、升级是一件风险极高的任务,备份重于一切。
2、了解新版本变更的信息(哪些不再兼容,不再支持哪些功能)。
1、确认新版本是否有重大变更
2、注意 SQL mode 的变化,比如:MySQL5.7发生了SQL mode的变化,对不再支持的SQL mode,部分SQL会跑不通,可以清空SQL mode,跑完之后在设置SQL mode。
3、升级成功后,确认业务SQL是否可以跑通,程序层是否都正常。
4、在升级完成之后,一定要在测试时使用和线上版本相同的程序,测试是否存在问题。
5、存储引擎的变化,比如:在未来的5.8版本,不再支持myisam 引擎。
6、注意字符集的乱码问题。
7、升级过程中多次启动建议加上 --skip-grant-tables和--skip-networking 参数,来保证没有任何的应用连接,让升级过程更加安全。
我的版本是5.7.30 升级到5.7.33
1.停服务,服务列表去找,如果有环境变量换成新的路径
2.将新的mysql解压到你想安装的路径下(与原路径相同就好)
3.将旧版本下的data文件和my.ini文件copy至新版路径下, 注意修改ini文件basedir和datadir
4.cd到新版的bin目录下,并执行如下命令
5.启动MYSQL57服务
升级mysql:mysql_upgrade -uroot -p 并输入密码
移除MySQL服务,可以不做
cd 到5.7.30的bin目录下,并执行如下命令
mysqld --remove mysql5.7