1. 升級方式mysql
1)就地升級:直接替換原安裝目錄文件和my.cnf配置文件,利用${MYSQL_HOME}/bin/mysql_upgrade腳本完成系統表的升級。(適用於誇小版本)sql
2)邏輯升級:利用mysqldump導出sql文件,而後的導入新庫,安全性高,並能夠整理表中碎片。但數據量大時,mysqldump須要更多的時間,影響升級的時間效率。數據庫
2. 操做步驟安全
2.1 就地升級:spa
1) 設置innodb_fast_shutdown參數爲0code
2)檢查是否使用XA事務InnoDBblog
3)關閉mysql服務事務
4)升級軟件ip
5)升級系統表數據字典, 注意:mysql_upgrade不會升級時區表或幫助表的內容innodb
6)從新啓動服務
7)使用 mysql_tzinfo_to_sql程序加載時區表
-- 描述時區的文件集可能路徑是 /usr/share/zoneinfo目錄(/usr/share/lib/zoneinfo在Solaris上) mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root -p mysql mysql_tzinfo_to_sql /usr/share/zoneinfo/Asia/Shanghai | mysql -u root -p mysql -- 時區須要考慮閏秒 mysql_tzinfo_to_sql --leap /usr/share/zoneinfo/Asia/Shanghai | mysql -u root -p mysql
8)升級幫助表內容
mysql -u root -p mysql < ${MYSQL_HOME}/share/mysql/fill_help_tables.sql
2.2 邏輯升級:
1) 利用mysqldump導出數據
/usr/local/mysql/bin/mysqldump -u root -p --add-drop-table --routines --events --all-databases --force > data-for-upgrade.sql
2)關閉數據庫並備份原data目錄
3)升級軟件
4)初始化數據庫
5)啓動數據庫
6)導入數據
7)升級系統表數據字典
8)啓動Mysql數據庫服務
9)升級幫助表內容
mysql -u root -p mysql < ${MYSQL_HOME}/share/mysql/fill_help_tables.sql
10)使用 mysql_tzinfo_to_sql程序加載時區表
-- 描述時區的文件集可能路徑是 /usr/share/zoneinfo目錄(/usr/share/lib/zoneinfo在Solaris上)
mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root -p mysql mysql_tzinfo_to_sql /usr/share/zoneinfo/Asia/Shanghai | mysql -u root -p mysql -- 時區須要考慮閏秒 mysql_tzinfo_to_sql --leap /usr/share/zoneinfo/Asia/Shanghai | mysql -u root -p mysql
3. 主從的升級:
1)主從替換二進制安裝包爲最新版本2)停從,經過mysql_upgrade升級後,加參數 --skip-slaves-start 進行啓動 3)加參數 --skip-networking重啓主,拒絕來自應用的TCP/IP的鏈接,關閉binlog,執行mysql_upgrade,而後重啓