程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> 實戰:mysql版本升級

實戰:mysql版本升級

編輯:MySQL綜合教程

實戰:mysql版本升級


 

/*****************************************************
mysql 5.6.19 升級到5.6.21

*****************************************************/
升級前做好備份是必須的!

----1.查看現有版本mysql的數據目錄位置

show variables like '%datadir%';

/usr/local/mysql01/data/ 

---2.安裝新版本MySQL

2.1.安裝編譯代碼需要的包

yum -y install  gcc gcc-c++  autoconf automake zlib*  libxml* \
ncurses-devel libtool-ltdl-devel* make cmake bison bison-devel libaio

 

2.2.為mysql新建組和用戶

#groupadd mysql

#useradd -g mysql  mysql 

2.3.設置用戶的系統資源限制

#vi /etc/security/limits.conf

mysql            soft    nproc   2047
mysql            hard    nproc   16384
mysql            soft    nofile  1024
mysql            hard    nofile  65536

2.4.編譯安裝新版本mysql

tar xvf mysql-5.6.21.tar.gz

cd mysql-5.6.21

編譯安裝到新位置

cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql02 \
-DMYSQL_DATADIR=/usr/local/mysql02/data \  
-DSYSCONFDIR=/etc \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DMYSQL_UNIX_ADDR=/usr/local/mysql02/mysql.sock \
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_COLLATION=utf8_general_ci

make 

make install

2.5 停止老版本mysql

service mysqld stop

----3.配置MySQL

3.1.修改/usr/local/mysql權限

#mkdir -p /usr/local/mysql02

3.2.新建數據文件、臨時文件

mkdir /usr/local/mysql02/{innodb_data,data,tmp}  -p

mkdir /usr/local/mysql02/mysql_logs/{binary_log,innodb_log,query_log,slow_query_log,error_log}  -p

3.3.修改權限

cd /usr/local/mysql02
chown -R mysql .
chgrp -R mysql .

3.4.修改參數

#vi /etc/my.cnf   

basedir = /usr/local/mysql#數據庫安裝目錄指定到新版本的安裝目錄 
datadir = /var/lib/mysql #原數據庫數據目錄保持原來的目錄即可 
skip-grant-tables  #由於升級需要,跳過權限驗證 
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 中 
#去掉STRICT_TRANS_TABLES,禁用數據嚴格模式 
#只需要修改這些,其它的一般不需修改,如果需要將日志之類的轉移到新目錄,則按需修改

3.5.覆蓋啟動文件
#cp /usr/local/mysql02/support-files/mysql.server   /etc/init.d/mysqld 

3.6.執行表權限升級 

#service mysqld start #重啟新版本MySQL 

#/usr/local/mysql02/bin/mysql_upgrade  #執行表權限升級 

3.7.檢查所有數據庫
#/usr/local/mysql02/bin/mysqlcheck --all-databases -uroot -p123456   

3.8.重新啟動mysql

#vi /etc/my.cnf  
去掉skip-grant-tables  

#service mysqld restart #數據庫升級成功 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved