[前言]
本文章適用於Ubuntu 14.04的版本。目前收錄:PHP, MySQL 等升級要領。
[前置條件]
已經使用:tasksel 套件安裝好LAMP stack。(相關指令如下)
已經安裝好相關的套件供安裝需要的套件的時候所使用。
預設的PHP 版本為:5.5.9, MySQL版本為:5.5。
# Prerequisite # You should run the initial_ubuntu.sh script before running this bash script file. sudo apt-get update sudo apt-get install dialog tasksel software-properties-common sudo tasksel install lamp-server
[本文]
本章節主要是展示:
- PHP 5.5 升級到PHP 7.0
- MySQL5.5 升級到MySQL 5.6
[PHP5.5 升級]
# upgrade the PHP 5.5.9 to PHP 7 sudo add-apt-repository ppa:ondrej/php
[MySQL5.5升級]
# upgrade the MySQL 5.5 to MySQL 5.7 wget http://dev.mysql.com/get/mysql-apt-config_0.8.0-1_all.deb # The following command will ask for input: # see more details: https://askubuntu.com/questions/750498/mysql-5-5-update-to-mysql-5-7 # Notice: I choose the MySQL 5.6 because the MySQL 5.7 encounter some unexpected problems. sudo dpkg -i mysql-apt-config_0.8.0-1_all.deb
MySQL 在安裝設定檔時,會有選項要選擇升級的MySQL版本。(如下示意圖)
動第一個選項就好,選完選『ok』
接下來是兩者都需要做的事情:更新repo 站點網址,安裝新版的套件以及重新啟動服務
# update the packages repo url sudo apt-get update # intall the required packages sudo apt-get install php7.0 sudo apt-get install php7.0-mysql sudo apt-get install mysql-server sudo mysql_upgrade -u root -p sudo service mysql restart
[MySQL 升級相關問題]
# MySQL server need the logger package during starting the MySQL service. # If not, it will encounter: " mysqld_safe --syslog requested, but no 'logger' program found. Please ensure that 'logger' is in your PATH, or do not specify the --syslog option to mysqld_safe" error. sudo apt-get install bsdutils # solve the MySQL server error: MySQL 5.6 No directory, logging in with HOME=/ sudo service mysql stop sudo chown mysql /var/run/mysqld sudo usermod -d /var/lib/mysql/ mysql sudo service mysql start
[PHP 升級相關問題]
下面列了幾個範例,當要額外安裝PHP extensions時,所做的動作以及啟動這些extensions
供 Apache server 以及 PHP CLI(command line interface) 所使用。
# If you use the Apache server # Disable php5 Apache module then enable php7 Apache module sudo a2dismod php5 sudo service apache2 restart sudo a2enmod php7.0 # If you want to install additional extension for the PHP 7 # You have to refer the following commands. sudo apt-get update sudo apt-get install php7.0-curl php7.0-mbstring php7.0-mcrypt # enable the module in PHP cli sudo phpenmod mcrypt sudo phpenmod mbstring sudo phpenmod curl # After installing the required PHP extensions, you should restart the Apache service. # Then the PHP module will successfully load in PHP Apache modules. sudo service apache2 restart
[參考資料]