公升級的方法一般有兩類:
1.利用mysqldump來直接匯出sql檔案,匯入到新庫中,這種方法是最省事兒的,也是最保險的,缺點的話,也顯而易見,大庫的mysqldump費時費力。
2.直接替換掉mysql的安裝目錄和my.cnf,利用mysql_upgrade 來完成系統表的公升級,這種方法需要備份原有的檔案,但屬於物理拷貝,速度較快。缺點的話,跨版本公升級不推薦這麼做,比如mysql5.1公升級到mysql5.6,mysql5.5公升級到mysql5.7等。
本文採用的是第二種方法公升級。
mysql當前版本
[root@localhost ~]# /usr/local/mysql/bin/mysql -v
/usr/local/tdoa/mysql/bin/mysql ver 14.14 distrib 5.5.36, for linux (x86_64) using readline 5.1
備份my.cnf、mysql安裝目錄、mysql資料目錄
[root@localhost ~]# cp -p /etc/init.d/mysql /etc/init.d/mysql.old
[root@localhost ~]# cp -p /etc/my.cnf /etc/my.cnf.old
[root@localhost ~]# cp -rp /usr/local/mysql /usr/local/mysql.old
[root@localhost ~]# rm -rf /usr/local/mysql
安裝最新版本的mysql
[root@localhost ~]# tar xvf mysql-5.6.37.tar.gz
[root@localhost ~]# cd mysql-5.6.37
[root@localhost ~]# cmake . -dcmake_install_prefix=/usr/local/tdoa/mysql \
-dmysql_datadir=/usr/local/tdoa/data5 \
-dmysql_unix_addr=/tmp/mysql.sock \
-dwith_innobase_storage_engine=1 \
-dextra_charsets=all \
-ddefault_collation=utf8_general_ci \
-ddefault_charset=utf8 \
-dmysql_tcp_port=3336 \
-dwith_readline=1 \
-denabled_local_infile=1 \
-dmysql_user=mysql \
-dwith_debug=0
[root@localhost ~]# make
[root@localhost ~]# make install
[root@localhost ~]# cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf
[root@localhost ~]# cat /etc/my.cnf.old > /etc/my.cnf
[root@localhost ~]# cp -p /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
[root@localhost ~]# /usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/data5
[root@localhost ~]# chown mysql.mysql -r /usr/local/tdoa/mysql
[root@localhost ~]# chown mysql.mysql -r /usr/local/tdoa/data5
[root@localhost ~]# /etc/init.d/mysql start
[root@localhost ~]# ps -ef |grep mysql
[root@localhost ~]# /etc/init.d/mysql stop
[root@localhost ~]# /usr/local/data5 /usr/local/data5.newold
[root@localhost ~]# mv /usr/local/data5.old /usr/local/data5
[root@localhost ~]# /etc/init.d/mysql start
[root@localhost ~]# /usr/local/mysql/bin/mysql_upgrade -uroot -p***x
公升級後的mysql版本
[root@localhost ~]# /usr/local/tdoa/mysql/bin/mysql -v請保證一些路徑的設定和以前的my.cnf一致,如果設定錯誤,很可能導致啟動不了資料庫
[error] could not use /usr/local/data5/slowlog/slow.log for logging
我這裡是由於慢日誌的位置和老的mysql5.6路徑不一致,建立/data/slowlog即可,這裡要仔細看報錯,然後根據報錯來發現和解決問題。
mysql公升級 5 1公升級到5 7
一 mysql公升級 1.備份資料庫 mysqldump u root ppasswod all databases data bak db bak date y m d h m sql 同時可備份整個mysql目錄,包括data目錄,可用於公升級失敗快速回滾 2.安裝5.7 提供兩種安裝方式參考,...
Win下Mysql5 6公升級到5 7
寫在前面 mysql的公升級方式分為兩種 原地公升級和邏輯公升級。這兩種公升級方式,本質沒有什麼區別的。只是在對資料檔案的處理上有些區別而已。原地公升級是直接將資料檔案進行拷貝,而邏輯公升級對資料檔案的處理方式是通過邏輯匯出匯入,需要用到mysqldump。邏輯公升級大家都理解,這種方式在資料量比較...
Lua5 1 公升級 Lua5 3 公升級 小結
lua的版本差異確實是比較讓人頭疼的事情,之前在移動端一直採用android下使用luajit,ios下使用lua5.1。這次公升級到xlua lua5.3版本 主要有兩方面的原因 一是ulua後續維護比價差,決定要公升級到xlua,另一方面是公司在上線檢查中提示禁止luajit的使用 一些cras...