升級(jí)mysql升級(jí)mysql以前,必須對(duì)mysql進(jìn)行備份。另外假定原mysql是利用APT倉(cāng)庫(kù)安裝。如果不是采用這種方式安裝,需要用替換第三方系統(tǒng)自帶mysql或替換用deb包安裝的mysql的方法。
升級(jí)mysql
使用MYSQL APT倉(cāng)庫(kù)升級(jí)MYSQL(就是代替舊版本,用原來(lái)的數(shù)據(jù)運(yùn)行新版本),采用以下步驟:
-
確保你的軟件庫(kù)列表中包含 MySQL APT 倉(cāng)庫(kù)。
-
運(yùn)行以下命令,確保在你的 MySQL APT 倉(cāng)庫(kù)有最新的包信息。
apt-get update
3. 注意默認(rèn)只能更新MYSQL到在添加APT倉(cāng)庫(kù)時(shí)選擇的版本,如果想更新到其他版本請(qǐng)參考選擇發(fā)行版本。
4. 用下面的命令升級(jí)mysql。
apt-get install mysql-server
升級(jí)其他附屬產(chǎn)品和組件的命令為:
apt-get install package-name
查看使用MYSQL APT倉(cāng)庫(kù)安裝的附屬產(chǎn)品和組件,用下面的命令:
dpkg -l | grep mysql | grep ii
5.升級(jí)完成后,通常會(huì)重啟mysql, MySQL 8.0.16以前的版本,重啟后運(yùn)行mysql_upgrade 檢查舊版本數(shù)據(jù)與新版本之間的是否兼容。
作為一個(gè)普遍的規(guī)則,升級(jí)應(yīng)該從一個(gè)版本至下一個(gè)版本,而不應(yīng)該直接升級(jí)至最新版本。例如從5.5升級(jí)至5.6,再升級(jí)至5.7,而不應(yīng)該一步升級(jí)至5.7。
替換第三方系統(tǒng)自帶的mysql
注意: MySQL APT倉(cāng)庫(kù)僅能夠替換Debian 和Ubuntu自帶的mysql,不能替換其他無(wú)論在版本庫(kù)內(nèi)部和外部的mysql分支。為了替換這些mysql分支,你必須先卸載系統(tǒng)自帶的mysql,必須從發(fā)行商哪里獲得如何卸載自帶的mysql,備份數(shù)據(jù)以及如何恢復(fù)備份數(shù)據(jù)到新的mysql。
一些第三方的自帶的倉(cāng)庫(kù)包依賴(lài)于原來(lái)的自帶的mysql包, MySQL APT repository packages不應(yīng)該和他們一起工作。這些包括akonadi-backend-mysql, handlersocket-mysql-5.5, 和 zoneminder。
采用以下步驟替換第三方自帶系統(tǒng):
-
備份你的數(shù)據(jù)庫(kù)。
-
添加APT倉(cāng)庫(kù)和選擇一個(gè)發(fā)行系列。
-
運(yùn)行上述步驟4,替換掉原來(lái)的系統(tǒng)自帶版本。
使用MySQL APT repository替換MySQL的本機(jī)發(fā)行版后,使用APT get purge、APT get remove–purge或dpkg-P命令從本機(jī)存儲(chǔ)庫(kù)中清除舊的MySQL包可能會(huì)以各種方式影響新安裝的MySQL服務(wù)器。因此,不要從本機(jī)存儲(chǔ)庫(kù)包中清除舊的MySQL包。
-
恢復(fù)數(shù)據(jù)
替換用下載的deb包安裝的mysql
來(lái)自于https://dev.mysql.com/downloads/的Deb包與來(lái)自于 the MySQL APT repository的deb包是不相同的。安裝和配置mysql采用不同的方式。
下面講述來(lái)替換用自于https://dev.mysql.com/downloads/的deb包安裝的mysql。
-
備份你的數(shù)據(jù)庫(kù)。
-
添加APT倉(cāng)庫(kù)和選擇一個(gè)發(fā)行系列。
-
用下面的命令刪除老版本。
dpkg -P mysql
-
用下面的命令安裝mysql
apt-get install mysql-server
-
恢復(fù)數(shù)據(jù)。
用APT刪除mysql
刪除用MySQL APT 倉(cāng)庫(kù)安裝的mysql server以及組件,首先用下面的命令刪除mysql server:
apt-get remove mysql-server
接著刪除和mysql server一起自動(dòng)安裝的軟件:
apt-get autoremove
用下面的命令刪除附屬產(chǎn)品和組件,用想要?jiǎng)h除的包名稱(chēng)替換 package-name:
apt-get remove package-name
查看你利用 MySQL APT repository安裝的包,用下面的命令:
dpkg -l | grep mysql | grep ii
MYSQL APT倉(cāng)庫(kù)中的可用包
相關(guān)學(xué)習(xí)推薦:mysql教程(視頻)
Package Name |
Description |
mysql-server |
用于安裝MySQL服務(wù)器 |
mysql-community-server |
MySQL 服務(wù)器 |
mysql-client |
用于安裝MySQL客戶(hù)端 |
mysql-cluster-community-auto-installer |
NDB集群的自動(dòng)安裝程序 |
mysql-cluster-community-client |
NDB集群MySQL客戶(hù)端 |
mysql-cluster-community-data-node |
NDB集群的數(shù)據(jù)節(jié)點(diǎn) |
mysql-cluster-community-java |
NDB集群的Java驅(qū)動(dòng) |
mysql-cluster-community-management-server |
NDB集群的管理節(jié)點(diǎn) |
mysql-cluster-community-memcached |
NDB集群memcached服務(wù)器 |
mysql-cluster-community-server |
NDB集群的MySQL服務(wù)器 |
mysql-cluster-community-source |
NDB集群的源碼包 |
mysql-cluster-community-test |
NDB集群的測(cè)試套件 |
mysql-community-client |
MySQL客戶(hù)端 |
mysql-common |
MySQL數(shù)據(jù)庫(kù)普通文件 |
libmysqlclient20 |
MySQL數(shù)據(jù)庫(kù)客戶(hù)端庫(kù) |
libmysqlclient-dev |
MySQL數(shù)據(jù)庫(kù)開(kāi)發(fā)文件 |
libmysqld-dev |
MySQL嵌入式數(shù)據(jù)庫(kù)開(kāi)發(fā)文件 |
mysql-testsuite |
用于安裝MySQL測(cè)試套件 |
mysql-community-test |
MySQL 測(cè)試套件 |
mysql-community-bench |
MySQL基準(zhǔn)套件 |
mysql-community-source |
MySQL源代碼 |
mysql-workbench-community |
MySQL Workbench(不適用于Debian平臺(tái)) |
mysql-connector-python-py3 |
適用于Ubuntu 16.04、18.04和18.10的MySQL Connector/Python;使用Python 3.2或更高版本 |
mysql-connector-python |
適用于Debian 8.x和Python 2.6.3或更高版本以及適用于Ubuntu 16.04、18.04和18.10的MySQL Connector / Python; 使用Python 2.6.3至3.1 |
mysql-router |
MySQL路由器 |
ndbclient |
NDB Cluster 客戶(hù)端 |
ndbclient-dev |
NDB Cluster 客戶(hù)端開(kāi)發(fā)套件 |