安裝Mysql前需要安裝cmake
1.安裝cmake
-
下載cmake
wget http://www.cmake.org/files/v3.2/cmake-3.2.3.tar.gz
-
解壓安裝
tar -zxvf cmake-3.2.3.tar.gz cd cmake-3.2.3 ./bootstrap
如果報以下錯誤就需要裝c++編譯器(沒有則跳過該安裝命令)
yum install gcc-c++
安裝完c++編譯器后重新執(zhí)行./bootstrap命令。
接著
gmake
gmake install
2.安裝mysql
-
下載mysql
wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.16.tar.gz
-
創(chuàng)建MySQL用戶
groupadd mysql useradd -M -s /sbin/nologin mysql # -M不創(chuàng)建home目錄梯影,-s指定shell為不登錄 gpasswd -a mysql mysql
-
解壓編譯安裝
-
解壓
tar -zxvf mysql-5.6.16.tar.gz
-
預編譯
cd mysql-5.6.16.tar.gz #進入nginx目錄 cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ -DMYSQL_UNIX_ADDR=/tmp/mysql.sock \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_general_ci \ -DWITH_EXTRA_CHARSETS:STRING=utf8,gbk \ -DWITH_MYISAM_STORAGE_ENGINE=1 \ -DWITH_INNOBASE_STORAGE_ENGINE=1 \ -DWITH_MEMORY_STORAGE_ENGINE=1 \ -DWITH_DEBUG=0 \ -DWITH_READLINE=1 \ -DENABLED_LOCAL_INFILE=1 \ -DMYSQL_DATADIR=/home/mysql/data \ -DMYSQL_USER=mysql
-DCMAKE_INSTALL_PREFIX= 安裝根目錄
-DCMAKE_INSTALL_PREFIX= unix套接字目錄
-DDEFAULT_CHARSET= 默認字符集
-DDEFAULT_COLLATION=默認編碼
-DWITH_EXTRA_CHARSETS= 額外的編碼蜕煌,請使用ALL來編譯。
-DWITH_MYISAM_STORAGE_ENGINE=1 編譯myisam存儲引擎,默認的存儲引擎赞辩,不加也可以
-DWITH_INNOBASE_STORAGE_ENGINE=1 支持InnoDB存儲引擎,這個也是默認安裝的
-DWITH_READLINE=1 使用readline功能
-DENABLED_LOCAL_INFILE=1 可以使用load data infile命令從本地導入文件
-DMYSQL_DATADIR=數(shù)據(jù)庫 數(shù)據(jù)目錄
-
編譯
make
-
安裝
make install
-
配置
創(chuàng)建倉庫目錄以及設置權限
mkdir /usr/local/mysql # 創(chuàng)建目錄 mkdir /usr/local/mysql/data # 數(shù)據(jù)倉庫目錄 chown -R mysql:mysql /usr/local/mysql
復制配置文件
cp support-files/my-default.cnf /etc/my.cnf #復制配置文件 cp support-files/mysql.server /etc/init.d/mysqld #復制啟動腳本 chmod +x /etc/init.d/mysqld #給啟動腳本執(zhí)行權限
修改/etc/my.cnf文件
datadir=/usr/local/mysql/data default-storage-engine=MyISAM log-error = /usr/local/mysql/mysql_error.log pid-file = /usr/local/mysql/mysql.pid user = mysql tmpdir = /tmp
為了以后使用方便,可以為mysql的二進制可執(zhí)行文件和動態(tài)鏈接庫文件做一個軟連接
ln -s /usr/local/mysql/bin/* /usr/local/bin/ # 為可執(zhí)行的二進制文件做軟連接 ln -s /usr/local/mysql/lib/mysql/lib* /usr/lib/ # 為動態(tài)鏈接庫做一個軟連接
安裝默認數(shù)據(jù)表
/usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
-
啟動
service mysqld start #啟動mysql netstat -antlp | grep 3306 #查看Mysql是都占用了TCP的3306端口
-
附:遇到的問題
[root@localhost etc]# mysql ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
這是由于mysql 默認的mysql.sock 是在/var/lib/mysql/mysql.sock颠印,但linux系統(tǒng)總是去/tmp/mysql.sock查找,所以會報錯
-
解決方法,創(chuàng)建軟連接
ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
-
-