mysql 5.5 编译安装_MySQL5.5编译安装

#一.安装环境

系统版本

[root@localhost ~]# head -n 1 /etc/issue

CentOS release 6.5 (Final)

软件版本

cmake-3.3.0-rc3.tar.gz

mysql-5.5.48.tar.gz

安装编译代码需要环境

yum -y groupinstall "Development Tools"

yum install -y ncurses ncurses-devel

#二.安装Cmake

# tar xvf cmake-3.3.0-rc3.tar.gz

# cd cmake-3.3.0-rc3

根据里面的README.rst文件,运行

# ./bootstrap

没有error则

# make && make install

#三.编译MySQL5.5使用参数解释

| cmake配置选项 | 作用 |

|------------|-----------|

|-DCMAKE_INSTALL_PREFIX |指定安装根目录|

|-DMYSQL_DATADIR|指定数据存储目录|

|-DSYSCONFDIR |配置文件(my.cnf)目录|

|-DWITH_MYISAM_STORAGE_ENGINE|启用MYISAM引擎支持|

|-DWITH_INNOBASE_STORAGE_ENGINE=1 |启用InnoDB引擎支持|

|-DWITH_MEMORY_STORAGE_ENGINE=1 |启用MEMORY引擎支持|

|-DWITH_READLINE |绑定readline的终端快捷键及历史记录功能,在mysql5.6已移除|

|-DMYSQL_UNIX_ADDR|UNIX套接字文件路径。必须是绝对路径名|

|-DMYSQL_TCP_PORT |指定TCP端口|

|-DENABLED_LOCAL_INFILE |是否启用对负荷数据文件在客户端库地方能力|

可参考:

mysql5.6使用cmake配置选项官方介绍

mysql5.7使用cmake配置选项官方介绍

#四.编译安装MySQL5.5

# tar xvf mysql-5.5.48.tar.gz -C /usr/local/

# cd /usr/local/

创建一个硬连接,主要是可以查看mysql的版本号。

# ln -sv mysql-5.5.48 mysql

# cd mysql

查看各个文件的权限和属主属组

# ll

total 648

drwxr-xr-x. 2 7161 wheel 4096 Jan 14 21:47 BUILD

-rw-r--r--. 1 7161 wheel 8528 Jan 14 21:38 BUILD-CMAKE

drwxr-xr-x. 2 7161 wheel 4096 Jan 14 21:47 client

drwxr-xr-x. 4 7161 wheel 4096 Jan 14 21:47 cmake

-rw-r--r--. 1 7161 wheel 19216 Jan 14 21:38 CMakeLists.txt

drwxr-xr-x. 4 7161 wheel 4096 Jan 14 21:47 cmd-line-utils

-rw-r--r--. 1 7161 wheel 18583 Jan 14 21:38 config.h.cmake

-rw-r--r--. 1 7161 wheel 33523 Jan 14 21:38 configure.cmake

drwxr-xr-x. 3 7161 wheel 4096 Jan 14 21:47 extra

drwxr-xr-x. 4 7161 wheel 4096 Jan 14 21:47 include

-rw-r--r--. 1 7161 wheel 412459 Jan 14 21:47 INSTALL-SOURCE

-rw-r--r--. 1 7161 wheel 247 Jan 14 21:38 INSTALL-WIN-SOURCE

drwxr-xr-x. 3 7161 wheel 4096 Jan 14 21:47 libmysql

drwxr-xr-x. 3 7161 wheel 4096 Jan 14 21:47 libmysqld

drwxr-xr-x. 2 7161 wheel 4096 Jan 14 21:47 libservices

drwxr-xr-x. 2 7161 wheel 4096 Jan 14 21:47 man

drwxr-xr-x. 5 7161 wheel 4096 Jan 14 21:47 support-files

-rw-r--r--. 1 7161 wheel 88 Jan 14 21:38 VERSION

....

查看README和INSTALL-SOURCE,了解安装信息,如下:

shell> yum search libaio # search for info

shell> yum install libaio # install library

shell> groupadd mysql

shell> useradd -r -g mysql -s /bin/false mysql

shell> cd /usr/local

shell> tar zxvf /path/to/mysql-VERSION-OS.tar.gz

shell> ln -s full-path-to-mysql-VERSION-OS mysql

shell> cd mysql

shell> chown -R mysql .

shell> chgrp -R mysql .

shell> scripts/mysql_install_db --user=mysql

shell> chown -R root .

shell> chown -R mysql data

# Next command is optional

shell> cp support-files/my-medium.cnf /etc/my.cnf

shell> bin/mysqld_safe --user=mysql &

# Next command is optional

shell> cp support-files/mysql.server /etc/init.d/mysql.server

...

######上面的安装步骤是建立在已编译好的程序上的。那么,现在我们也开始准备编译mysql源码:

# yum install libaio

# groupadd mysql

# useradd -r -g mysql -s /bin/false mysql

# cd /usr/local/mysql

# chown -R mysql.mysql .

# mkdir /data

# chown -R mysql /data

# chmod u+x scripts/*

用cmake编译

# cmake . \

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \

-DMYSQL_DATADIR=/data \

-DSYSCONFDIR=/etc \

-DWITH_MYISAM_STORAGE_ENGINE=1 \

-DWITH_INNOBASE_STORAGE_ENGINE=1 \

-DWITH_MEMORY_STORAGE_ENGINE=1 \

-DWITH_READLINE=1 \

-DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \

-DMYSQL_TCP_PORT=3306 \

-DENABLED_LOCAL_INFILE=1 \

-DWITH_PARTITION_STORAGE_ENGINE=1 \

-DEXTRA_CHARSETS=all \

-DDEFAULT_CHARSET=utf8 \

-DDEFAULT_COLLATION=utf8_general_ci

如果想清理此前的编译所生成的文件,则需要使用如下命令:

make clean

rm CMakeCache.txt

# make && make install

使用# scripts/mysql_install_db --help 查看初始化mysql的帮助信息

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

# chown -R root /usr/local/mysql/*

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

查看mysqld有没有执行权限,如没有,则:

# chmod +x /etc/init.d/mysqld

然后继续添加服务自启:

# chkconfig --add mysqld

# chkconfig --list mysqld

TIPS: mysql查找配置文件的位置,按照如下的顺序查找。

/etc/my.cnf -->/etc/mysql/my.cnf -->$BASEDIR/my.cnf(安装目录) -->~/.my.cnf(家目录)

一一查询完后,以最后一个为准。

根据自己主机的资源,配置选择my.cnf。

# cp support-files/my-large.cnf /etc/my.cnf

在/etc/my.cnf的[mysqld]中添加datadir = /data

#五.将mysql的安装目录的bin加入PATH:

方法一:

PATH=$PATH:/usr/local/mysql/bin

export PATH

这两行加入到/etc/profile的末尾,注意不要在等号的左右加空格,不然会报错。

# source /etc/profile

方法二:

在/etc/profile.d目录下面创建mysqld.sh,添加

PATH=$PATH:/usr/local/mysql/bin

#六.输出mysql的man手册至man命令的查找路径:

如果你使用的是最小系统安装,则没有安装man手册,执行如下命令安装man手册:

yum install -y man-pages man-pages-overrides

cp /etc/man.config.rpmnew /etc/man.config

编辑/etc/man.config,添加如下行即可:

MANPATH /usr/local/mysql/man

#七.输出mysql的头文件至系统头文件路径/usr/include:

这可以通过简单的创建链接实现:

# ln -sv /usr/local/mysql/include /usr/include/mysql

#八.输出mysql的库文件给系统库查找路径:

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

而后让系统重新载入系统库:

# ldconfig -v

到此结束。动手做一做吧!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值