mysql原始碼公升級 MySQL原始碼公升級

2021-10-17 20:37:42 字數 2613 閱讀 5642

mysql原始碼公升級

公升級的方法一般有兩類:

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 原始碼安裝 mysql

yum y install ncurses devel gcc bzip2 bison 安裝解壓命令 安裝命令 wget http 複製的鏈結.解壓命令 tar xf cmake檔案.tar 編譯工具cmake安裝 cmake命令版本 2.8以上 將資料夾放到指定目錄整理 mv usr local ...

mysql 原始碼文件 mysql原始碼安裝官方文件

以下是安裝mysql原始碼分發版的更詳細的描述 1.為mysqld增加乙個登入使用者和組 2.shell groupadd mysql3.shell useradd g mysql mysql 這些命令將增加mysql組和mysql使用者。不同版本的unix中,useradd和groupadd的語法...

mysql原始碼包多大 MYSQL原始碼安裝

root db02 wget 2.安裝依賴 root db02 yum install y ncurses devel libaio devel gcc gcc c glibc cmake autoconf openssl openssl devel 3.解壓安裝包 root db02 tar xf...