包含linux怎麼給mysql升級的詞條

本文目錄一覽:

如何升級linux系統的mysql

一些MySQL發布對mysql數據庫中的系統表的結構進行了更改,添加了新權限或特性。當你更新到新版本MySQL,你應同時更新系統表,以確保它們的結構最新。首先備份mysql數據庫,然後按照下面的程序操作。

在Unix或Unix類系統中,運行mysql_fix_privilege_tables腳本來更新系統表:

shell mysql_fix_privilege_tables

你必須在服務器運行時執行該腳本。它試圖連接本機上用root運行的服務器。如果root賬戶需要密碼,在命令行中按下述方法給出密碼:

shell mysql_fix_privilege_tables–password=root_password

mysql_fix_privilege_tables腳本可以執行將系統錶轉換為當前格式的任何動作。運行時你可能會看見一些Duplicate column name警告;你可以忽略它們。

運行完腳本後,停止服務器並重啟。

在Windows系統中,MySQL分發包括mysql_fix_privilege_tables.sql SQL腳本,你可以用mysql客戶端來運行。例如,如果MySQL安裝到C:\Program Files\MySQL\MySQL Server 5.1,命令應為:

C:\

C:\Program Files\MySQL\MySQL Server 5.1

\bin\mysql -u root -p mysql

mysql SOURCE C:/Program Files/MySQL/MySQL Server

5.1/scripts/mysql_fix_privilege_tables.sql

如果安裝到其它目錄,相應地更改路徑名。

mysql命令將提示輸入root密碼;按照提示輸入密碼。

在Unix中,當mysql處理mysql_fix_privilege_tables.sql script腳本中的語句時,你可能會看見一些Duplicate column name警告;你可以忽略它們。

運行完腳本後,停止服務器並重啟。

阿里雲服務器linux 怎麼更新mysql

方法:

1)先輸入mysql -uroot -p 命令

2)輸入密碼登陸mysql

3)use mysql; //使用mysql庫

4)在輸入update mysql.user set password=PASSWORD(’123456789′) where User=’root’; 更新mysql密碼為:123456789

5)flush privileges ; //刷新庫

6)quit 退出mysql

linux mysql 5.6 能升級5.7 嗎

1. 下載 5.7.30 的 zip 包並解壓到新的目錄。

2. 安裝 Visual C++ 2012/2013(或更多版本)。

3. 停應用,停止 5.6 實例(可以通過停服務來操作,停止服務前建議記錄一下 GTID 或 binlog file 和 position 位置),刪除服務。

4. 備份一份 5.6 實例的 datadir,包括 binlog(整個目錄 copy 到別的目錄存放)。

5. 拷貝 5.6 實例的 datadir 和 my.ini 到 5.7 實例 basedir 目錄,調整並優化參數值(注意要確保路徑一致,確認已開啟 5.7 新特性相關參數,如增強半同步、MTS 等)。

6. 修改系統環境變量,把可執行路徑指向 5.7 實例的 basedir/bin。

7. 啟動 5.7 實例,創建服務並啟動。

8. 驗證服務端、客戶端版本是否正確。

9. 確認無誤後,執行 mysql_upgrade 升級數據字典(會升級系統庫:mysql,ps,sys,沒有會重建)。

10. 重啟實例。

11. 再次校驗 5.7 的參數,盡量保持與 5.6 的兼容,尤其要注意 sql_mode 的默認值對業務的影響。

12. 清理 5.6 實例的 basedir 和 datadir 目錄(可選)。

13. 如果是主從環境,還要考慮 slave_net_timeout 參數默認值改變帶來的影響(主庫 error 日誌中出現 “ER_RPL_ZOMBIE_ENCOUNTERED” 的報錯)。

在 5.7.7 以前,該參數默認是 3600s,之後改為了 60s,需要重新執行 change master to 語句,並且顯式指定 master_heartbeat_period=xx,因為從 5.7.4 開始,只有執行 reset slave 才能將其重置為默認值(slave_net_timeout 值的一半)。另外提一句,也是從 5.7.4 開始,執行 change master to 語句時,可以不用先停止複製線程了。

Linux怎麼更新MySQL的版本

第一步:檢查linux的操作系統版本

代碼如下:

cat /etc/issue

第二步:在mysql官網上下載5.7的版本

第三步:檢查linux上以前安裝的mysql版本

代碼如下:

rpm -qa | grep mysql

第四步:如果出現mysql的一些安裝版本,則通過以下命令進行刪除

代碼如下:

rpm -e –nodeps mysql-xxx

第五步:準備安裝新版本的mysql-server

代碼如下:

rpm -ivh MySQL-server-xxxx

第六步:啟動mysql server

代碼如下:

service mysql start

第七步:安裝mysql client

代碼如下:

rpm -ivh MySQL-client-xxx

linux中mysql5升級到mysql5.5的方法

手上有一朋友的服務器是MYSQL5.1,因需要升級到5.5或以上,這兒寫下升級到5.5的過程

安裝5.5依賴安裝包

代碼如下

yum

install

-y

autoconf*

automake*

zlib*

libxml*

ncurses-devel*

libgcrypt*

libtool*

openssl*

安裝cmake

代碼如下

yum

install

-y

cmake

在升級前,建議先將之前5.1的mysql及數據庫目錄備份一下

停止掉mysql

代碼如下

service

mysql

stop

升級mysql

5.5.36

代碼如下

tar

xf

mysql-5.5.36.tar.gz

cd

mysql-5.5.36

cmake

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql

-DSYSCONFDIR=/etc

-DMYSQL_DATADIR=/usr/local/mysql/var

-DMYSQL_TCP_PORT=3306

-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock

-DMYSQL_USER=mysql

-DEXTRA_CHARSETS=all

-DWITH_READLINE=1

-DWITH_SSL=system

-DWITH_EMBEDDED_SERVER=1

-DENABLED_LOCAL_INFILE=1

-DWITH_INNOBASE_STORAGE_ENGINE=1

make

make

install

刪除/etc/下的my.cnf配置文件

代碼如下

rm

-rf

/etc/my.cnf

拷貝5.5的配置文件

代碼如下

cp

support-files/my-huge.cnf

/etc/my.cnf

嘗試啟動一下

代碼如下

service

mysql

start

執行更新程序並重啟mysql

代碼如下

/usr/local/mysql/bin/mysql_upgrade

如果一路OK就沒事兒,但要是出了錯誤,請參考我另外一篇文章

mysql5.5升級過程中mysql_upgrade失敗的問題

查看下現在的mysql版本

代碼如下

cat

mysql_upgrade_info

好了,升級工作完成。

再附升級失敗問題解決

在升級mysql5.5過程中,執行/usr/local/mysql/bin/mysql_upgrade

提示:

代碼如下

Looking

for

‘mysql’

in:

/usr/local/mysql/bin/mysql

Looking

for

‘mysqlcheck’

in:

/usr/local/mysql/bin/mysqlcheck

Running

‘mysqlcheck’…

/usr/local/mysql/bin/mysqlcheck:

Got

error:

1064:

You

have

an

error

in

your

SQL

syntax;

check

the

manual

that

corresponds

to

your

MySQL

server

version

for

the

right

syntax

to

use

near

‘FOR

UPGRADE’

at

line

1

when

executing

‘CHECK

TABLE

FOR

UPGRADE’

FATAL

ERROR:

Upgrade

failed

想起之前5.1好像是有密碼的!這兒換種方式嘗試

代碼如下

/usr/local/mysql/bin/mysql_upgrade

-S

/var/data/mysql.sock

-uroot

-p

這個也不行了,突然想到出奇招,還是使用5.5的二進制程序,然後更改啟動參數,因為我只想要把data目錄下的表結構升級而已,必須指定的參數只是data目錄,於是我做了如下嘗試

#

啟用

–skip-grant-tables參數避開檢查,先啟動再說

代碼如下

/usr/local/mysql/bin/mysqld

–datadir=/usr/local/mysql/var/

–user=mysql

–skip-grant-tables

#

看上去成功了

#

中間報了一些innodb的錯誤,不去理會,應該是配置或是這個半陰半陽狀態下問題,這個以後再解決

#

接下來停止這個服務

mysqladmin

shutdown

之,然後以正常參數啟動mysqld服務……

修改些my.cnf中的配置參數,以適合mysql5.5

一句話總結:

代碼如下

/usr/local/mysql/bin/mysqld

–datadir=/usr/local/mysql/var/

–user=mysql

–skip-grant-tables

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/235923.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-12 11:57
下一篇 2024-12-12 11:57

相關推薦

  • 如何修改mysql的端口號

    本文將介紹如何修改mysql的端口號,方便開發者根據實際需求配置對應端口號。 一、為什麼需要修改mysql端口號 默認情況下,mysql使用的端口號是3306。在某些情況下,我們需…

    編程 2025-04-29
  • Python操作MySQL

    本文將從以下幾個方面對Python操作MySQL進行詳細闡述: 一、連接MySQL數據庫 在使用Python操作MySQL之前,我們需要先連接MySQL數據庫。在Python中,我…

    編程 2025-04-29
  • MySQL遞歸函數的用法

    本文將從多個方面對MySQL遞歸函數的用法做詳細的闡述,包括函數的定義、使用方法、示例及注意事項。 一、遞歸函數的定義 遞歸函數是指在函數內部調用自身的函數。MySQL提供了CRE…

    編程 2025-04-29
  • MySQL bigint與long的區別

    本文將從數據類型定義、存儲空間、數據範圍、計算效率、應用場景五個方面詳細闡述MySQL bigint與long的區別。 一、數據類型定義 bigint在MySQL中是一種有符號的整…

    編程 2025-04-28
  • MySQL左連接索引不生效問題解決

    在MySQL數據庫中,經常會使用左連接查詢操作,但是左連接查詢中索引不生效的情況也比較常見。本文將從多個方面探討MySQL左連接索引不生效問題,並給出相應的解決方法。 一、索引的作…

    編程 2025-04-28
  • CentOS 7在線安裝MySQL 8

    在本文中,我們將介紹如何在CentOS 7操作系統中在線安裝MySQL 8。我們會從安裝環境的準備開始,到安裝MySQL 8的過程進行詳細的闡述。 一、環境準備 在進行MySQL …

    編程 2025-04-27
  • 如何在Linux中添加用戶並修改配置文件

    本文將從多個方面詳細介紹在Linux系統下如何添加新用戶並修改配置文件 一、添加新用戶 在Linux系統下創建新用戶非常簡單,只需使用adduser命令即可。使用以下命令添加新用戶…

    編程 2025-04-27
  • 如何使用MySQL字段去重

    本文將從多個方面為您詳細介紹如何使用MySQL字段去重並給出相應的代碼示例。 一、SELECT DISTINCT語句去重 MySQL提供了SELECT DISTINCT語句,通過在…

    編程 2025-04-27
  • MySQL正則表達式替換

    MySQL正則表達式替換是指通過正則表達式對MySQL中的字符串進行替換。在文本處理方面,正則表達式是一種強大的工具,可以方便快捷地進行字符串處理和匹配。在MySQL中,可以使用正…

    編程 2025-04-27
  • 如何解決linux jar包 invalid or corrupt jarfile問題

    對於許多開發人員和系統管理員在Linux環境下使用Java開發過程中遇到的一個常見的問題是 invalid or corrupt jarfile(無效或損壞的jar文件)錯誤。當您…

    編程 2025-04-27

發表回復

登錄後才能評論