所需源码包:
/usr/local/src/MySQL-5.5.25/cmake-2.8.8.tar.gz
/usr/local/src/MySQL-5.5.25/mysql-5.5.25.tar.gz
1、安装cmake
MySQL从5.5版本开始,通过./configure进行编译配置方式已经被取消,取而代之的是cmake工具。
因此,我们首先要在系统中源码编译安装cmake工具。
#编译安装
cd /usr/local/src/MySQL-5.5.25/cmake-2.8.8 ./configure make && make install
2、编译安装配置MySQL
#切换至 MySQL源码 解压目录
cd /usr/local/src/MySQL-5.5.25/mysql-5.5.25
#创建所需目录
mkdir -pv /usr/local/mysql/data
#创建mysql用户和mysql组
groupadd mysql useradd -g mysql -s /usr/sbin/nologin mysql
#cmake编译
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_unicode_ci -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_EMBEDDED_SERVER=1 -DENABLED_LOCAL_INFILE=1 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_DEBUG=0
#安装
make && make install
#复制配置文件
cp ./support-files/my-medium.cnf /etc/my.cnf
#设置权限
chmod +x /usr/local/mysql chown -R mysql:mysql /usr/local/mysql chown -R mysql:mysql /usr/local/mysql/data
#配置开机自动启动
cp ./support-files/mysql.server /etc/init.d/mysqld chmod +x /etc/init.d/mysqld chkconfig --add mysqld chkconfig --level 2345 mysqld on chkconfig --list mysqld #查看是否已应用上
#添加MySQL的软链接以适应init脚本
ln -sv /usr/local/mysql/bin/mysql /usr/sbin/mysql ln -sv /usr/local/mysql/bin/mysqladmin /usr/sbin/mysqladmin ln -sv /usr/local/mysql/bin/mysqldump /usr/sbin/mysqldump
#修改配置文件
vim /etc/my.cnf
#在[mysqld]节点中添加:
datadir = /usr/local/mysql/data log-error = /usr/local/mysql/data/error.log pid-file = /usr/local/mysql/data/mysql.pid user = mysql tmpdir = /tmp
#保存退出
#初始化数据库
/usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
#修改root密码
/usr/local/mysql/bin/mysqladmin -u root -p password "123456"
配置防火墙,开启3306端口
vim /etc/sysconfig/iptables
#添加如下规则到22端口这条规则的下面即可
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
#重启防火墙
/etc/init.d/iptables restart # 或 service iptables restart
启动MySQL
service mysqld start # 或 /etc/init.d/mysqld start
测试MySQL是否启动
#查看是否有mysql进程
ps -ef | grep mysql
#查看是否有mysql端口
netstat -ntlp | grep 3306
#测试mysql,mysqladmin,mysqldump命令是否能正常使用
#读取MySQL的版本信息
mysqladmin version
到此MySQL编译安装完成。
MySQL5.5以前的版本(如MySQL5.1.x) ./configure 编译参考如下:
./configure --prefix=/usr/local/mysql/ --localstatedir=/usr/local/mysql/data --without-debug --with-unix-socket-path=/tmp/mysql.sock --with-client-ldflags=-all-static --with-mysqld-ldflags=-all-static --enable-assembler --with-extra-charsets=gbk,gb2312,utf8 --with-pthread
延伸阅读:
CentOS6.x编译安装LAMP(2):编译安装 Apache2.2.25
CentOS6.x编译安装LAMP(2):编译安装 Apache2.4.6
CentOS6.x编译安装LAMP(3):编译安装 MySQL5.5.25
CentOS6.x编译安装LAMP(4):编译安装 PHP5.2.17