LNMP 1.2/1.3或更高版本升級Nginx、MySQL/MariaDB

一般情況下不建議對生產環境進行升級,升級開始後會停止LNMP相關服務。
本文僅適用於LNMP1.2、1.3、1.4、1.5及以後的更高版本!

在LNMP目前LNMP v1.2/1.3/1.4/1.5或更高版本中已經包含了NginxMySQL/MariaDBPHPPHPMyAdmin的升級腳本,可以幫助搭建對環境中的程序進行升級。(注意:以下操作均必須在lnmp安裝包壓縮包解壓後的目錄裏運行,如lnmp1.7版本解壓後的目錄就是lnmp1.7或lnmp1.7-full)

一、Nginx升級腳本
執行:./upgrade.sh nginx 按提示輸入版本號後回車(訪問 http://nginx.org/en/download.html 可查找nginx的最新版本號和以往舊版本號。如:1.14.2 ),再次回車確認即可開始升級Nginx。如要升級到1.9.5或更高版本必須使用v1.3或更改版本里面的升級腳本。Nginx升級爲平滑升級,升級過程不影響nginx的運行。
另外如需添加其他模塊可以編輯lnmp.conf 配置文件,在 Nginx_Modules_Options 的引號里加編譯參數(官方模塊直接寫編譯參數,第三方模塊的話是--add-module=/第三方模塊源碼目錄,第三方模塊必須在升級前提前下載好)。
lnmp 1.2版修改include/upgrade_nginx.sh文件
在Nginx_Modules_Arguments="" 參數的雙引號裏添加需要的其他模塊,多個模塊參數空格隔開,然後再運行升級即可。
如升級失敗,需恢復將 /usr/local/nginx/sbin/nginx.日期 的文件重命名爲nginx ,然後再啓動nginx即可。

二、MySQL升級腳本
雖然腳本會備份數據,但依然建議先自行備份!
執行:./upgrade.sh mysql 需要先輸入MySQL root密碼進行驗證,驗證不通過將無法進行升級,驗證通過後可以到http://dev.mysql.com/downloads/mysql/ 獲取MySQL的版本號,輸入後回車確認,如要啓用Innodb,輸入y,不確定的話也可以輸入輸入y 回車確認,再次回車確認即可開始升級。會在/root 目錄下生成mysql_upgrade日期.log的日誌文件,供出錯時排查。
如升級失敗恢復:(1.4及更高版本)將/usr/local/oldmysql日期目錄下面的init.d.mysql.bak.日期的文件拷貝到/etc/init.d/目錄下並重命名爲mysql及將my.cnf.bak.日期拷貝到/etc/目錄下並重命名爲 my.cnf,並將/usr/local/oldmysql日期目錄重命名爲mysql即可恢復mysql。(下面MySQL升級至MariaDB及升級MariaDB一樣)

(1.3及以下版本)將/etc/下的my.conf.bak.日期的配置文件重命名爲my.cnf和/etc/init.d/下的mysql.bak.日期重命名爲mysql,同時將/usr/local/下的oldmysql日期目錄重命名爲mysql即可恢復。
三、MySQL升級至MariaDB腳本
MariaDB是MySQL的一個分支,主要由開源社區在維護。MariaDB兼容MySQL,由MySQL創始人主導開發。依然建議先自行備份!
執行:./upgrade.sh m2m 需要先輸入MySQL root密碼進行驗證,驗證不通過將無法進行升級,驗證通過後可以到https://downloads.mariadb.org/ 獲取MariaDB的版本號,輸入後回車確認,如要啓用Innodb,輸入y,不確定的話也可以輸入輸入y 回車確認,再次回車確認即可開始升級。會在/root 目錄下生產mysql2mariadb_upgrade日期.log的日誌文件,供出錯時排查。
如升級失敗恢復:(1.4及更高版本)將/usr/local/mysql2mariadb日期目錄下面的init.d.mysql2mariadb.bak.日期的文件拷貝到/etc/init.d/目錄下並重命名爲mysql及將my.cnf.mysql2mariadbbak.日期拷貝到/etc/目錄下並重命名爲 my.cnf,並將/usr/local/下的mysql2mariadb日期目錄重命名爲mysql即可恢復mysql。

(1.3及以下版本)將/etc/下的my.conf.bak.日期的配置文件重命名爲my.cnf和/etc/init.d/下的mariadb.bak.日期重命名爲mariadb,同時將/usr/local/下的oldmariadb日期目錄重命名爲mariadb即可恢復。
四、MariaDB升級腳本
依然建議先自行備份!
執行:./upgrade.sh mariadb 需要先輸入MariaDB root密碼進行驗證,驗證不通過將無法進行升級,驗證通過後可以到https://downloads.mariadb.org/ 獲取MariaDB的版本號,輸入後回車確認,如要啓用Innodb,輸入y,不確定的話也可以輸入輸入y 回車確認,再次回車確認即可開始升級。會在/root 目錄下生產mariadb_upgrade日期.log的日誌文件,供出錯時排查。
如升級失敗恢復:(1.4及更高版本)將/usr/local/oldmariadb日期目錄下面的init.d.mariadb.bak.日期的文件拷貝到/etc/init.d/目錄下並重命名爲mariadb及將my.cnf.bak.日期拷貝到/etc/目錄下並重命名爲 my.cnf,並將/usr/local/下的oldmariadb日期目錄重命名爲mariadb即可恢復mariadb。

(1.3及以下版本)將/etc/下的my.conf.bak.日期的配置文件重命名爲my.cnf和/etc/init.d/下的mariadb.bak.日期重命名爲mariadb,同時將/usr/local/下的oldmariadb日期目錄重命名爲mariadb即可恢復。

五、LNMP PHP升級腳本
升級PHP前,請確認你的網站程序是否支持升級到的PHP版本,防止升級到網站程序不兼容的PHP版本,具體可以去你使用的PHP程序的官網查詢相關版本支持信息。v1.3及以後版本大部分情況下也可以進行降級操作。
執行:./upgrade.sh php 到http://www.php.net/downloads.php 獲取版本號,輸入版本號,如5.3.28 回車,再次回車確認即可開始升級。
如需要編譯其他參數可以,lnmp 1.3及以後版本版可以修改lnmp.conf配置文件裏的 PHP_Modules_Options 參數的引號里加其他需要的參數。
lnmp 1.2版修改include/upgrade_php.sh文件
在PHP_Modules_Arguments="" 參數的雙引號裏添加需要的其他模塊,多個模塊參數空格隔開,然後再運行升級即可。
升級完PHP如果phpmyadmin可能會無法使用,需要升級phpmyadmin至對於php和mysql版本的phpmyadmin版本。
如果升級失敗可下載並壓縮 /root/upgrade_lnmp_php日期.log 日誌去https://bbs.vpser.net 論壇進行反饋。
如果要恢復原PHP,將 /usr/local/ 下 oldphp日誌 的目錄重命名爲 php 並,將/usr/local/oldphp日期/init.d.php-fpm.bak.日期 的文件拷貝到/etc/init.d/ 目錄下重命名爲 php-fpm 即可恢復。

六、LNMPA/LAMP PHP升級腳本
升級PHP前,請確認你的網站程序是否支持升級到的PHP版本,防止升級到網站程序不兼容的PHP版本,具體可以去你使用的PHP程序的官網查詢相關版本支持信息。
執行:./upgrade.sh phpa 到http://www.php.net/downloads.php 獲取版本號,輸入版本號,如5.3.28 回車,再次回車確認即可開始升級。
升級完PHP如果phpmyadmin可能會無法使用,需要升級phpmyadmin至對於php和mysql版本的phpmyadmin版本。

七、PHPMyAdmin升級腳本
升降級前建議去https://www.phpmyadmin.net/downloads/ 查看PHPMyAdmin版本號兵確認與PHP和MySQL的兼容性。
執行:./upgrade.sh phpmyadmin 輸入PHPMyAdmin版本號,回車確認,再次回車確認即可自動完成升級。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章