源码编译安装mysql

(1)安装MySQL需要的依赖包

yum -y install ncurses-devel libaio-devel

(2)安装编译MySQL需要的软件

mysql 有3个版本分支  5.0-5.1系列    5.4-5.7系列  6.0-7.1群集产品系列

最早的mysql 5.0-5.1产品  直接./configure    make;make install    但到了5.4系列为了顺应时代需求加入了新的储存引擎新的算法,更好的支持SMP架构,做了大量代码重构.

mysql5.4以上版本编译安装 需要使用cmake编译安装 .

源码安装cmake:

tar xf cmake-2.8.6.tar.gz -C /usr/src/          #此软件包需要提前准备

cd
/usr/src/cmake-2.8.6/
.
/configure ;gmake;gmake install
which cmake
/usr/local/bin/cmake

(3)开始安装mysql

建立MySQL用户账号

useradd -s /sbin/nologin -M mysql

id mysql
uid=500(mysql) gid=500(mysql) 组=500(mysql)

Myslq包分类 

mysql-5.5.32.tar.gz   源码包       mysql-5.5.32-linux2.6-x86_64.tar.gz  二进制包   #二进制安装包,仅需要解压就可以了,不需要执行cmake/configure,make,make install等过程

tar xf mysql-5.5.32.tar.gz -C /usr/src/
cd /usr/src/mysql-5.5.32/
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql-5.5.32  -DMYSQL_DATADIR=/usr/local/mysql-5.5.32/data -DMYSQL_UNIX_ADDR=/usr/local/mysql-5.5.32/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=gbk,gb2312,utf8,ascii -DENABLED_LOCAL_INFILE=ON -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 -DWITHOUT_PARTITION_STORAGE_ENGINE=1 -DWITH_FAST_MUTEXES=1 -DWITH_ZLIB=bundled -DENABLED_LOCAL_INFILE=1 -DWITH_READLINE=1 -DWITH_EMBEDDED_SERVER=1 -DWITH_DEBUG=0 ;make ;make install                          

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql-5.5.22       #安装至哪里

-DMYSQL_DATADIR=/usr/local/mysql-5.5.32/data       #数据存放目录

-DMYSQL_UNIX_ADDR=/usr/local/mysql-5.5.32/tmp/mysql.sock #MySQL进程间通信的套接字位置

-DDEFAULT_CHARSET=utf8                #默认字符集为utf8

-DDEFAULT_COLLATION=utf8_general_ci          #默认字符集排序规则

-DEXTRA_CHARSETS=gbk,gb2312,utf8,ascii         #额外的字符集支持

-DENABLED_LOCAL_INFILE=ON                       #是否启用加载本地数据

-DWITH_INNOBASE_STORAGE_ENGINE=1         #静态编译innodb存储引擎到数据库

-DWITH_FEDERATED_STORAGE_ENGINE=1          #静态编译FEDERATED存储引擎到数据库

-DWITH_BLACKHOLE_STORAGE_ENGINE=1          #静态编译blackhole存储引擎到数据库

-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1        #不编译EXAMPLE存储引擎到数据库

-DWITHOUT_PARTITION_STORAGE_ENGINE=1       #不支持数据库分区

-DWITH_FAST_MUTEXES=1

-DWITH_ZLIB=bundled                    #zlib压缩模式

-DENABLED_LOCAL_INFILE=1               #是否启用本地的LOCAL_INFILE

-DWITH_READLINE=1                    #使用捆绑的readline

-DWITH_EMBEDDED_SERVER=1             #是否要建立嵌入式服务器

-DWITH_DEBUG=0                   #禁用DEBUG(开启影响性能)

(4)设置不带版本号的软链接

ln -s /usr/local/mysql-5.5.32 /usr/local/mysql

(5)安装后的调整

chown -R mysql:mysql /usr/local/mysql/data   #对数据库目录设置权限

/bin/cp /usr/local/mysql-5.5.32/support-files/my-medium.cnf /etc/my.cnf #建立配置文件
/usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/ --user=mysql #初始化数据

echo "PATH=/usr/local/mysql/bin:$PATH" >> /etc/profile          #设置环境变量

. /etc/profile        #全局生效
#初始化数据

--basedir=/usr/local/mysql/                    #安装到哪

--datadir=/usr/local/mysql/data/             #数据库放在哪

--user=mysql                                         #用户是谁

(6)添加mysql系统服务

/bin/cp /usr/local/mysql-5.5.32/support-files/mysql.server /etc/init.d/mysqld        #添加至/etc/init.d/启动
chmod +x /etc/init.d/mysqld          #给与权限
chkconfig --add mysqld                #加入开机启动项

(7)启动mysql服务 

/etc/init.d/mysqld start
Starting MySQL.. SUCCESS!

netstat
-anput | grep mysql tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 22840/mysqld
原文地址:https://www.cnblogs.com/ywrj/p/9378320.html