MySQL版本公升級

2022-07-30 09:51:08 字數 3217 閱讀 3847

在網上學習到mysql的公升級方式分為兩種:原地公升級邏輯公升級。這兩種公升級方式,本質沒有什麼區別的。

只是在對資料檔案的處理上有些區別而已。原地公升級是直接將資料檔案進行拷貝,而邏輯公升級對資料檔案的處理方式是通過邏輯匯出匯入,需要用到mysqldump。 

邏輯公升級這種方式在資料量比較大的情況下花費時間比較長。所以今天嘗試一下原地公升級

原地公升級

一.將現有的mysql關閉。使用cmd視窗,進入到mysql目錄下面,將mysql服務移除。

c:\users\administrator\mysql5.6\bin>mysqld --

remove mysql56

service successfully removed.

最新的mysql5.7的壓縮包解壓開你會發現,沒有data目錄和my.ini檔案。

data目錄中是存的資料庫檔案,不建議將之前版本的data目錄複製進來,經測試 這樣做後期資料庫服務無法啟動

後面會提到當mysql服務無法啟動 服務沒有報告任何錯誤 解決方法

)三.手動建立配置檔案,檔名為:my.ini,新增內容如下:

可複製文字如下:

[

mysql

]# 設定mysql客戶端預設字符集

default

-character

-set

=utf8

[mysqld

]# 設定3306埠

port

=3306

# 設定mysql的安裝目錄

basedir

=d:\\tools\mysql-

5.7.25

-winx64

# 設定 mysql資料庫的資料的存放目錄,mysql 8+

不需要以下配置,系統自己生成即可,否則有可能報錯

datadir

=d:\\tools\mysql-

5.7.25

-winx64\data

# 允許最大連線數

max_connections

=200

# 服務端使用的字符集預設為8位元編碼的latin1字符集

character

-set

-server=

utf8

# 建立新錶時將使用的預設儲存引擎

default

-storage-engine=

innodb

sql_mode

=strict_trans_tables,no_zero_in_date,no_zero_date,error_for_division_by_zero,no_auto_create_user,no_engine_substitution

四.將要公升級的資料庫的服務新增到win的服務佇列中 並啟動服務

1.將mysql5.7的服務新增到win的服務佇列中

d:\tools\mysql-

5.7.25

-winx64\bin>mysqld --

installmysqld

service successfully removed.

install 後面寫的服務名看 bin目錄下的mysql的應用程式是什麼 我的是mysqld

2.啟動mysql服務

d:\tools\mysql-5.7.25-winx64\bin>net start mysqldmysqld

服務正在啟動 ..

mysqld 服務已經啟動成功。

五.公升級mysql:mysql_upgrade -uroot -p

d:\tools\mysql-

5.7.25

-winx64\bin>mysql_upgrade -uroot -p

.......自己公升級..........

六.公升級成功後,再次重啟mysql5.7服務

d:\tools\mysql-

5.7.25

-winx64>

net stop mysqld

mysqld 服務正在停止.

mysqld 服務已成功停止。

d:\tools\mysql-

5.7.25

-winx64\bin>

net start mysqld

mysqld 服務正在啟動 ..

mysqld 服務已經啟動成功。

至此安裝公升級完成。

另外:mysql啟動失敗,mysql服務無法啟動 服務沒有報告任何錯誤 該怎麼辦

嘗試以下步驟,最終解決問題:

1 檢視host檔案(c:\windows\system32\drivers\etc\hosts)

看是否修改過本地網域名稱,如果將localhost對應的位址修改過,有可能會導致連線mysql server失敗。

2 如果在mysql的安裝路徑中沒有配置檔案,則自己手動建立乙個,

檔名為:my.ini,新增內容

注意:datadir屬性後的data資料夾,一定不要自己手動建立,本人嘗試手動建立會有問題,如果自己建立了可以刪除掉,再執行後面的操作。

3 在mysql5.7以上版本中預設沒有乙個data目錄,即沒有初始化服務。

需要先初始化mysql才可以啟動服務,否則會報 「服務沒有報告任何錯誤」,啟動失敗。

解決方法:

a 進入mysql的bin目錄;

b 執行mysqld  --initialize-insecure ,第一次執行的話,時間會久一些,執行結束後沒有輸出資訊,檢視bin的同級目錄下會多出乙個data資料夾,裡面一堆檔案。

4 再次執行net start mysql命令啟動服務,發現啟動成功!

mysql版本公升級命令 mysql版本公升級

版本公升級 mysql版本很多,有5.5,5.6,5.7都可能,有時候我們的目的是公升級資料庫版本.公升級的方法有兩種,第一種就是用mysqldump方式來操作,因為匯出來就是sql語句,所以直接導進去新庫就是公升級了。例如 在舊庫匯出 mysqldump uroot p h10.0.2.4 p33...

公升級mysql版本 mysql版本手動公升級

步驟 0x00 備份原來 phpstudy 中 mysql 安裝目錄 0x01 basedir d phpstudy mysql datadir d phpstudy mysql data 0x02 把 mysql 安裝路徑新增至系統環境變數 過程 計算機 系統屬性 高階系統配置 環境變數 選擇pa...

mysql 小版本公升級 mysql小版本公升級

選擇尋找先前的ga版本 2 解壓 tar xf mysql 5.7.32 1.el7.x86 64.rpm bundle.tar 3 備份資料庫配置檔案及資料檔案,單獨備份資料庫 啥時候都不要嫌棄備份麻煩,多乙份備份少一張機票 a etc my.cnf 配置檔案 b var lib mysql 資料...