如何安全地安装
这将总是棘手的。
在执行任何操作之前,请阅读5.5 / 5.6兼容性页面。介意1与2之间的差异很大:
从MySQL 5.6.6开始,一些MySQL Server参数的默认值与以前的版本不同。这些更改的动机是提供更好的开箱即用性能,并减少数据库管理员手动更改设置的需求。随着我们获得反馈,这些更改可能会在将来的版本中进行修订。
最大的变化之一是5.5使用1个大文件作为事务日志,而5.6使用几个:
因此,如果要升级现有的MySQL安装,还没有从以前的默认值更改这些参数的值,并且需要考虑向后兼容性,则可能需要将这些参数显式设置为以前的默认值。例如,将这些行放在服务器选项文件中:
[mysqld]
innodb_file_per_table=0
innodb_checksum_algorithm=INNODB
binlog_checksum=NONE
如果您使用复制,请注意链接的这一部分:
要升级用于复制的服务器,请先升级从属服务器,然后再升级主服务器。假设主机和从机之间都使用相同的explicit_defaults_for_timestamp值,则复制应该可以进行:
放下从属服务器,升级它们,为它们配置所需的explicit_defaults_for_timestamp值,然后再备份它们。
从属服务器将从从主控服务器接收到的二进制日志的格式中识别出该主控服务器较旧(在引入explicit_defaults_for_timestamp之前),并且对来自主控服务器的TIMESTAMP列进行的操作均使用旧的TIMESTAMP行为。
断开主机,升级它,并使用与从服务器相同的explicit_defaults_for_timestamp值对其进行配置,然后将其备份。
如果这是生产服务器,建议您先在测试计算机上尝试。从5.5到5.6的过渡相当困难,因此选择安装另一台装有5.6的计算机,并使用mysldump创建备份并将其加载到该计算机上的数据库中。请注意,如果您有大型数据库,这会花费很长时间(由于重新创建了innodb事务文件)。
通用方法:
- 使用mysqldump创建数据库(用户,trable结构和表数据)和配置文件(可能是/etc/mysql/my.cnf)的备份
- 删除5.5。除去5.5之后,检查innodb事务文件(ibdata1,ib_logfile0和ib_logfile1)是否消失。由于5.6使用更好的交易版本,因此我想您也将使用此版本...
- 安装5.6
- 更改新的配置文件,并添加5.5所做的更改(请注意上面的链接,并检查是否有任何更改无效)。
- 将您的备份上传到5.6(首先是用户)。请注意,这将花费一些时间,因为它将重新创建新的事务文件。
在命令中(进行备份后):
sudo apt-get remove mysql-server
sudo apt-get autoremove
sudo apt-get install mysql-client-5.6 mysql-client-core-5.6
sudo apt-get install mysql-server-5.6
sudo apt-get remove mysql-server;sudo apt-get autoremove;sudo apt-get install mysql-client-5.6 mysql-client-core-5.6;sudo apt-get install mysql-server-5.6