Linux下mysql編譯安裝教程html
#查看linux發行版本mysql
cat /etc/issuelinux
#查看linux內核版本號c++
uname -rsql
本文測試環境centOS6.6數據庫
在線安裝編譯源代碼所需的工具和庫(沒法聯網的話要事先準備軟件,或者系統盤)bootstrap
yum install gcc gcc-c++ ncurses-devel perlvim
從mysql5.5起源代碼編譯需要藉助cmake這款編譯工具。從http://www.cmake.org下載cmake源代碼並編譯安裝。工具
wget http://www.cmake.org/files/v3.3/cmake-3.3.0.tar.gzpost
tar -xzvf cmake-3.3.0.tar.gz
cd cmake-3.3.0
./bootstrap ; make ; make install
cd ~
新增mysql用戶組,新增mysql用戶
groupadd mysql
useradd -r -g mysql mysql
mkdir -p /usr/local/mysql
mkdir -p /data/mysqldb
可以事先從http://dev.mysql.com/downloads/mirrors.html選擇一個鏡像去下載源代碼文件。也可以直接在線下載。
wget ftp://mirror.csclub.uwaterloo.ca/mysql/Downloads/MySQL-5.6/mysql-5.6.25.tar.gz
(下載源可以本身設置)
tar -zxv -f mysql-5.6.25.tar.gz
cd mysql-5.6.25
從mysql5.5起。mysql源代碼安裝開始使用cmake了,設置源代碼編譯配置腳本。
進入解壓好的mysql文件夾運行
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DMYSQL_DATADIR=/data/mysqldb -DMYSQL_TCP_PORT=3306 -DENABLE_DOWNLOADS=1
注:如要又一次執行配置,需要刪除CMakeCache.txt文件(rm CMakeCache.txt)
接着執行命令
make
make instal
附編譯參數簡單介紹:
-DCMAKE_INSTALL_PREFIX=dir_name 設置mysql安裝文件夾
-DMYSQL_UNIX_ADDR=file_name 設置監聽套接字路徑,這必須是一個絕對路徑名。
默以爲/tmp/mysql.sock
-DDEFAULT_CHARSET=charset_name 設置server的字符集。
缺省狀況下,MySQL使用latin1的(CP1252西歐)字符集。cmake/character_sets.cmake文件包括贊成的字符集名稱列表。
-DDEFAULT_COLLATION=collation_name 設置server的排序規則。
下面是存儲引擎選項:
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DWITH_ARCHIVE_STORAGE_ENGINE=1
-DWITH_BLACKHOLE_STORAGE_ENGINE=1
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1
MyISAM,MERGE,MEMORY,和CSV引擎是默認編譯到server中。並不需要明白地安裝。靜態編譯一個存儲引擎到server,使用-DWITH_engine_STORAGE_ENGINE= 1
可用的存儲引擎值有:ARCHIVE, BLACKHOLE, EXAMPLE, FEDERATED, INNOBASE (InnoDB), PARTITION (partitioning support), 和PERFSCHEMA (Performance Schema)
-DMYSQL_DATADIR=dir_name 設置mysql數據庫文件文件夾
-DMYSQL_TCP_PORT=port_num 設置mysqlserver監聽端口,默以爲3306
-DENABLE_DOWNLOADS=bool 是否要下載可選的文件。好比,啓用此選項(設置爲1),cmake將下載谷歌所使用的測試套件執行單元測試。
改動mysql安裝文件夾
cd /usr/local/mysql
chown -R mysql:mysql .
改動mysql數據庫文件文件夾
cd /data/mysqldb
chown -R mysql:mysql .
cd /usr/local/mysql
scripts/mysql_install_db --user=mysql --datadir=/data/mysqldb
cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
vim /etc/profile
PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH
export PATH
source /etc/profile
service mysql start
chkconfig --level 35 mysql on
可以查看mysql是否啓動
netstat -tulnp | grep 3306
mysql -u root -p
第一次登陸password爲空,假設能登錄上,則成功安裝。
設置用戶root的password
mysqladmin -u root password '123456'
再次進行登陸測試
mysql -uroot -p123456