目录
[隐藏]

一直都用的lnmp,可惜安装包集成的环境都不是最新的,而且作者也好久没更新了,不过可喜的是作者有提供Nginx和PHP的一键升级脚本,但是MYSQL和PHPMYADMIN好像就没有了。

PHPMYADMIN的升级脚本也是我问朋友那要到的,也是一键升级,方便,哈哈。。脚本要的话到我下载页面去找吧。

然后最近因为要弄些东西就想把mysql也升级下吧。我就说一直觉得好像有什么没升级呢。原来就是我的数据库版本没有升,Google之:

LNMP集成环境已经提供了PHP和Nginx的升级脚本,即upgrade_php.sh和upgrade_nginx.sh。当我们需要升级 PHP或Nginx的时候,只需要执行这两个脚本然后根据提示输入要升级到的相应的PHP或Nginx的版本好就可以自动升级了。但是,到目前为止 LNMP最新版还没有提供Mysql的升级脚本。不过另有高人为LNMP提供了Mysql的升级脚本,目前该脚本源码放在google code上,项目地址:https://code.google.com/p/huiwei19。

废话不多说,下面介绍详细的升级步骤:

1,下载mysql升级脚本

执行以下命令下载升级脚本:

wget http://huiwei19.googlecode.com/files/upgrade_mysql.sh

下载完成后赋予该文件可执行权限:

chmod 755 upgrade_mysql.sh

2,安装cmake

由于mysql源码需要使用cmake工具编译,所以首先要检测你的环境是否安装了cmake,如果没有则需要安装cmake。(该升级脚本虽然会自动检测安装cmake,但是有时候安装会出错,我升级了几台VPS自动安装cmake都出错了,所以建议大家手动安装cmake

首先,下载cmake。可以在其官方网站(http://www.cmake.org)下载。

wget http://www.cmake.org/files/v2.8/cmake-2.8.10.2.tar.gz

然后执行

tar -zxvf cmake-2.8.10.2.tar.gz
cd cmake-2.8.10.2
./configure
gmake
make install

当cmake安装成功就可以升级mysql了。

3,升级MYSQL

升级有风险,大家在升级前一定要备份好数据库。这个升级脚本会自动把旧的数据库重命名为mysql.old。

升级mysql和升级php以及nginx一样,直接执行以下mysql升级脚本就会自动进入升级了,根据提示输入想要升级到的版本号,按任意键系统就会自动下载源码包编译安装mysql了。

./upgrade_mysql.sh

当mysql安装完成后执行以下代码,避免data目录权限问题:

chown -R mysql:mysql /usr/local/mysql/data

再执行下面的代码并输入Mysql密码,修复5.1.x升级到5.5.x的一系列错误:

/usr/local/mysql/bin/mysql_upgrade -u root -p

成功执行到这里,说明你的mysql已经升级成功。但是如果要在php中正常使用mysql,还需要重新编译PHP,否则没有对应的libmysqlclient.so。这也是我把mysql升级放到第一的原因。接下来我们升级PHP。

4,升级PHP

升级PHP比较简单,LNMP已经提供了PHP升级脚本,所以直接执行下面的代码,根据提示输入要升级到的版本号系统就会自动下载PHP源码编译安装。

./upgrade_php.sh

重新编译PHP后,如果你使用了eAccelerator,那么你还需要重新编译安装eAccelerator,这个也是直接执行LNMP的eAccelerator安装脚本就可以了。

./eaccelerator.sh

5,升级Nginx

升级Nginx方法跟升级PHP一样,也很简单,只需要执行以下升级脚本,输入版本号就会自动升级了。

./upgrade_nginx.sh

到这里,你的Mysql,PHP,Nginx就全部升级完成。我目前升级比较顺利,除cmake不能自动安装外,没有出现其他任何问题,如果大家升级遇到问题,可以在这里评论大家共同解决。

via:http://www.zjzit.cn/blog/4.html

另外还有一个也是升级mysql的

via:http://xfeng.me/lnmp-upgrade-mysql-script/