Centos7使用编译源码方式安装mysql

来源:互联网 发布:h5砸金蛋游戏源码 编辑:程序博客网 时间:2024/06/06 16:58

注:本文参考 最美的痕迹博文:http://www.cnblogs.com/yangjinjin/p/3158226.html

首先,把工具包安装上

# yum -y install gcc libxml2-dev curl screen \libpng12-dev autoconf libpcre3-dev make bzip2 \libevent-dev patch libjpeg62-dev libcurl4-openssl-dev \libfreetype6-dev g++ libtool libncurses5-dev psmisc lrzsz
安装前的几点说明:

1. 所有下载的文件将保存在 /usr/local/software/ 目录下

2. mysql 将以mysql用户运行,而且将加入 service 开机自动运行

3. mysql 将被安装在 /usr/local/mysql/ 目录下

4. mysql 默认安装使用utf8 字符集

5. mysql 的数据和日志文件保存在 /var/mysql/ 对应目录下

6. mysql 的配置文件保存于/var/mysql/my.cnf

获得资源包:

# wget http://mysql.he.net/Downloads/MySQL-5.5/mysql-5.5.27.tar.gz# wget http://www.cmake.org/files/v2.8/cmake-2.8.8.tar.gz# wget http://ftp.gnu.org/gnu/bison/bison-2.5.tar.gz
网络状况不佳的话直接下载完上传进去吧

安装 cmake 和 bison

首先可以查看下是否安装了 cmake # rpm -qa |grep cmake 

# cd /usr/local/software# tar zxvf cmake-2.8.8.tar.gz# cd cmake-2.8.8# ./bootstrap# make && make install
安装bison:# tar zxvf bison-2.5.tar.gz# cd bison-2.5# ./configure# make && make install

创建mysql用户及用户组:

# groupadd mysql# useradd -r -g mysql mysql
编译安装 MySQL 5.5.23
复制代码
# tar xvf mysql-5.5.23.tar.gz# cd mysql-5.5.23/# 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_READLINE=1 \# -DENABLED_LOCAL_INFILE=1 \# -DMYSQL_DATADIR=/var/mysql/data接下来,安装:# make && make install
复制代码

注意事项:

重新编译时,需要清除旧的对象文件和缓存信息。

# make clean# rm -f CMakeCache.txt# rm -rf /etc/my.cnf

参数说明:

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql  //安装目录

-DINSTALL_DATADIR=/usr/local/mysql/data  //数据库存放目录

-DDEFAULT_CHARSET=utf8                        //使用utf8字符

-DDEFAULT_COLLATION=utf8_general_ci     //校验字符

-DEXTRA_CHARSETS=all                            //安装所有扩展字符集

-DENABLED_LOCAL_INFILE=1                    //允许从本地导入数据

分配权限:

# chmod +w /usr/local/mysql# chown -R mysql:mysql /usr/local/mysql# ln -s/usr/local/mysql/lib/libmysqlclient.so.16 # /usr/lib/libmysqlclient.so.16

创建相应的目录:

# mkdir -p /var/mysql/# mkdir -p /var/mysql/data/# mkdir -p /var/mysql/log/
# chown -R mysql:mysql /var/mysql/# cd support-files/

# cp my-large.cnf /var/mysql/my.cnf (注意:my-large.cnf适用于1G内存左右的服务器,可以根据自己配置情况选用my-large.cnf 或 my-huge.cnf 等不同配置)

# cp mysql.server /etc/init.d/mysqld

四、配置启动MySQL

若有需要请先修改 mysql 的配置 my.cnf

# vi /var/mysql/my.cnf

mysql 初始化安装:

# /usr/local/mysql/scripts/mysql_install_db \--defaults-file=/var/mysql/my.cnf \--basedir=/usr/local/mysql \--datadir=/var/mysql/data \--user=mysql

注:‘--’ 这个横线也要输入

将 mysql 加入开机启动:

chmod +x /etc/init.d/mysqldvi /etc/init.d/mysqld (编辑此文件,查找并修改以下变量内容:)basedir=/usr/local/mysqldatadir=/var/mysql/datachkconfig --add mysqldchkconfig --level 345 mysqld on

启动 mysql:

# service mysqld start

如果已经出现,Starting MySQL...[确定]

至此就安装成功了!

进入mysql:

直接输入mysql即可,修改用户名参考上一篇博文

如果安装完mysql,进入mysql的时候提示-bash: mysql: command not found,那么需要为mysql建立软连接

由于系统默认会查找/usr/bin下的命令,如果这个命令不在这个目录下,当然会找不到命令,我们需要做的就是映射一个链接到/usr/bin目录下:

# cd /usr/local/bin# ln -fs /MYSQLPATH/bin/mysql mysql

其中MYSQLPATH是实际的mysql安装目录,比如上文安装的目录就是:/usr/local/mysql

1 0