源碼包下載:
1.https://downloads.mysql.com/archives/community/(現在這裏找到要下載的版本)
2.http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.5.53.tar.gz(然後在360瀏覽器裏下載)
3.https://cdn.mysql.com//archives/mysql-5.5/mysql-5.5.53.tar.gz(最後在下載器裏複製下載資源鏈接地址)
系統:CentOS6.4_64
卸載舊版本
rpm -qa | grep mysql
yum remove mysql...
依賴包
yum install gcc gcc-c++ cmake ncurses.x86_64 ncurses-devel.x86_64 bison-devel
新建運行MySQL的用戶和組
groupadd mysql
useradd -g mysql mysql -s /sbin/nologin
新建mysql安裝目錄
mkdir /usr/local/mysql 安裝目錄
mkdir /mysqldata 數據存放目錄
chmod -R 755 /mysqldata
chown -R mysql:mysql /mysaldata
新建mysql.sock和mysql.pid 的存放目錄,cmake時將會用到
mkdir /var/lib/mysql
chown -R mysql:mysql /var/lib/mysql
解壓源碼包並cd到源碼目錄
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/mysqldata \
-DSYSCONFDIR=/etc \
-DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DWITH_FEDERATED_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DENABLE_DTRACE=0 \
-DDEFAULT_CHARSET=utf8mb4 \
-DDEFAULT_COLLATION=utf8mb4_general_ci \
-DWITH_EMBEDDED_SERVER=1
make && make install
以下爲成功顯示:
以下爲成功顯示:
進入到安裝目錄
cd /usr/local/mysql 進行以下操作
cp support-files/my-large.cnf /etc/my.cnf
修改 my.cnf 添加以下內容:
[mysqld_safe]
log-error=/var/log/mysqld.log
[這一項很重要,MySQL啓動出現問題時,在這個日誌裏可以查看具體報錯信息進行調試]
scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/mysqldata --user=mysql
注意:在CentOS 6.4版操作系統的最小安裝完成後,在/etc目錄下會存在一個my.cnf,需要將此文件更名爲其他的名字,如:/etc/my.cnf.bak,否則,該文件會干擾源碼安裝的MySQL的正確配置,造成無法啓動
scripts/mysql_install_db 初始化數據庫
scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/mysqldata --user=mysql
配置mysql的環境變量
vim /etc/profile.d/mysql.sh
export PATH=/usr/local/mysql/bin:$PATH
source /etc/profile.d/mysql.sh 立即生效
啓動MySQL
添加服務,拷貝服務腳本到init.d目錄,並設置開機啓動
cp support-files/mysql.server /etc/init.d/mysqld
chkconfig mysqld on
chkconfig mysqld --level 2345 on
service mysql start
配置root用戶
MySQL啓動成功後,root默認沒有密碼,我們需要設置root密碼
mysql -uroot
mysql> SET PASSWORD = PASSWORD('ctyun@123');
參考文檔:http://blog.csdn.net/xuxingzhuang/article/details/51592363