Centos6.7編譯安裝mysql-5.5.52

2016年11月29日23:51:19 發(fā)表評論 3,770 ℃

一、安裝cmake

cmake的重要特性之一是其獨立于源碼(out-of-source)的編譯功能,即編譯工作可以在另一個指定的目錄中而非源碼目錄中進(jìn)行,這可以保證源碼目錄不受任何一次編譯的影響,因此在同一個源碼樹上可以進(jìn)行多次不同的編譯,如針對于不同平臺編譯。

跨平臺編譯器

#wget https://cmake.org/files/v3.7/cmake-3.7.0.tar.gz

# tar xf cmake-3.7.0.tar.gz

# cd cmake-3.7.0.

# ./configure 

# make 

# make install

二、編譯安裝mysql-5.5

1、使用cmake編譯mysql-5.5

cmake指定編譯選項的方式不同于make,其實現(xiàn)方式對比如下:

./configure           cmake .

./configure --help    cmake . -LH or ccmake .

指定安裝文件的安裝路徑時常用的選項:

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql

-DMYSQL_DATADIR=/data/mysql

-DSYSCONFDIR=/etc

默認(rèn)編譯的存儲引擎包括:csv、myisam、myisammrg和heap。若要安裝其它存儲引擎,可以使用類似如下編譯選項:

-DWITH_INNOBASE_STORAGE_ENGINE=1

-DWITH_ARCHIVE_STORAGE_ENGINE=1

-DWITH_BLACKHOLE_STORAGE_ENGINE=1

-DWITH_FEDERATED_STORAGE_ENGINE=1

若要明確指定不編譯某存儲引擎,可以使用類似如下的選項:

-DWITHOUT_<ENGINE>_STORAGE_ENGINE=1

比如:

-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1

-DWITHOUT_FEDERATED_STORAGE_ENGINE=1

-DWITHOUT_PARTITION_STORAGE_ENGINE=1

如若要編譯進(jìn)其它功能,如SSL等,則可使用類似如下選項來實現(xiàn)編譯時使用某庫或不使用某庫:

-DWITH_READLINE=1

-DWITH_SSL=system

-DWITH_ZLIB=system

-DWITH_LIBWRAP=0

其它常用的選項:

-DMYSQL_TCP_PORT=3306

-DMYSQL_UNIX_ADDR=/tmp/mysql.sock

-DENABLED_LOCAL_INFILE=1

-DEXTRA_CHARSETS=all

-DDEFAULT_CHARSET=utf8

-DDEFAULT_COLLATION=utf8_general_ci

-DWITH_DEBUG=0

-DENABLE_PROFILING=1

如果想清理此前的編譯所生成的文件,則需要使用如下命令:

make clean

rm CMakeCache.txt

2、編譯安裝

# yum groupinstall -y "Development tools"

# mkdir -p /mysql_data/data

# groupadd -r mysql

# useradd -g mysql -r -s /sbin/nologin mysql

# chown -R mysql.mysql /mysql_data/data/

# wget http://cdn.mysql.com/archives/mysql-5.5/mysql-5.5.52.tar.gz

# tar xf mysql-5.5.52-linux2.6-x86_64.tar.gz

# cd  mysql-5.5.52-linux2.6-x86_64

# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/mysql_data/data -DSYSCONFDIR=/etc -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_ZLIB=system -DWITH_LIBWRAP=0 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci

# make 

# make install

3、配置mysql

# /usr/local/mysql/scripts/mysql_install_db --user=mysql --datadir=/mysql_data/data

# chown -R mysql /usr/local/mysql

# cp /usr/local/mysql/support-files/my-large.cnf /etc/my.cnf

# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

# chkconfig --add mysqld

# echo "export PATH=$PATH:/usr/local/mysql/bin" >/etc/profile.d/mysql.sh

# echo "/usr/local/mysql/lib" > /etc/ld.so.conf.d/mysql.conf

# ldconfig -v

4、mysql用戶設(shè)置

# mysql

> drop user ''@'localhost.domain';

> drop user ''@'localhost';

> drop user 'root'@'::1';

> update mysql.user set password=password('12344321') where user='root';

> flush privileges;

注:本地登錄mysql不輸入密碼設(shè)置方法:

# cd

# vim .my.conf添加:

[client]

user=root

password=12344321

host=localhost

【騰訊云】云服務(wù)器、云數(shù)據(jù)庫、COS、CDN、短信等云產(chǎn)品特惠熱賣中

發(fā)表評論

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: