重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
1.先用SQLyog之类的图形化数据库管理工具把数据库内的所有东西备份出来。backup database as sql dump。注意要选structure and data (结构和数据)。导出sql文件后,确认一下sql文件无误。
创新互联公司是一家集网站建设,太湖企业网站建设,太湖品牌网站建设,网站定制,太湖网站建设报价,网络营销,网络优化,太湖网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。
2.系统中可能存在自带的MySQL,采用命令进行强制删除
rpm –qa|grep mysql
rpm -e mysql-5.1.61 --nodeps 强制删除mysql 不考虑依赖关系 (此处根据上一步查询到的结果)
3.安装mysql
rpm -ivh MySQL-server-community-5.1.61-0.rhel5.x86_64.rpm (包名根据实际情况)
4.在MySQL配置文件/etc/my.cnf中根据实际需要添加
lower_case_table_names=1
skip-name-resolve
event_scheduler=1
default-character-set=utf8
wait_timeout=31536000
interactive_timeout=31536000
5.启动服务
cd /etc/init.d
./mysql restart
或者service mysqld restart
6.登陆MySQL
/usr/local/mysql/bin/mysql -u root –p
7.新增用户,根据允许访问的地址和用户,可能需要多次执行。
GRANT ALL PRIVILEGES ON *.* TO 'user'@'192.168.1.1(你的ip)' IDENTIFIED BY 'password' WITH GRANT OPTION;
flush privileges;
8.
用SQLyog之类的图形化数据库管理工具把数据库备份出来的sql语句执行一遍
9.完成
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 参数,来保证没有任何的应用连接,让升级过程更加安全。
1. 下载 5.7.30 的 zip 包并解压到新的目录。
2. 安装 Visual C++ 2012/2013(或更多版本)。
3. 停应用,停止 5.6 实例(可以通过停服务来操作,停止服务前建议记录一下 GTID 或 binlog file 和 position 位置),删除服务。
4. 备份一份 5.6 实例的 datadir,包括 binlog(整个目录 copy 到别的目录存放)。
5. 拷贝 5.6 实例的 datadir 和 my.ini 到 5.7 实例 basedir 目录,调整并优化参数值(注意要确保路径一致,确认已开启 5.7 新特性相关参数,如增强半同步、MTS 等)。
6. 修改系统环境变量,把可执行路径指向 5.7 实例的 basedir/bin。
7. 启动 5.7 实例,创建服务并启动。
8. 验证服务端、客户端版本是否正确。
9. 确认无误后,执行 mysql_upgrade 升级数据字典(会升级系统库:mysql,ps,sys,没有会重建)。
10. 重启实例。
11. 再次校验 5.7 的参数,尽量保持与 5.6 的兼容,尤其要注意 sql_mode 的默认值对业务的影响。
12. 清理 5.6 实例的 basedir 和 datadir 目录(可选)。
13. 如果是主从环境,还要考虑 slave_net_timeout 参数默认值改变带来的影响(主库 error 日志中出现 “ER_RPL_ZOMBIE_ENCOUNTERED” 的报错)。
在 5.7.7 以前,该参数默认是 3600s,之后改为了 60s,需要重新执行 change master to 语句,并且显式指定 master_heartbeat_period=xx,因为从 5.7.4 开始,只有执行 reset slave 才能将其重置为默认值(slave_net_timeout 值的一半)。另外提一句,也是从 5.7.4 开始,执行 change master to 语句时,可以不用先停止复制线程了。
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升级时检查数据表" ◆可能某些发布版本会改变授权表的机制