暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Linux下 源码编译安装MySQL

技术那点事 2020-03-27
253

1.1 LINUX 下 源码编译安装MySQL

一、检查当前OS版本:

    [root@node142 ~]# more etc/redhat-release
    CentOS Linux release 7.2.1511 (Core)

    二、关闭SELINUX

      # vi etc/sysconfig/selinux
      SELINUX=disabled
      # setenforce 0

      三、配置时间同步服务

        [root@node248 ~]# crontab -e
        */10 * * * * ntpdate ntp3.aliyun.com

        四、关闭防火墙

          # service iptables stop
          # chkconfig iptables off

          五、安装配置YUM

            [mysql@mysql002 ~]# yum clean all
            [mysql@mysql002 ~]# yum makecache
            [root@mysql002 ~]#  yum repolist

            六、分别重启3节点

              [root@node142 ~]# reboot 
              [root@node146 ~]# reboot
              [root@node147 ~]# reboot

              七、设置代理

                export http_proxy="http://10.223.94.15:8089"
                export http_proxy="http://172.17.18.80:8080"

                八:安装编译工具cmake  

                  [root@mysql002 mysql-5.6.40]# wget https://cmake.org/files/v2.8/cmake-2.8.4.tar.gz

                    [root@mysql002 mysql-5.6.40]#  tar -zxvf  cmake-2.8.4.tar.gz
                    [root@mysql002 mysql-5.6.40]# cd cmake-2.8.4
                    [root@mysql002 cmake-2.8.4]# ./configure

                      解决办法:
                      [root@localhost ~]# yum install gcc
                      [root@localhost ~]# yum install gcc-c++
                      [root@mysql002 cmake-2.8.4]# ./configure  

                        [root@mysql002 cmake-2.8.4]# gmake && make install

                        九:创建用户、组

                          [root@mysql002 ~]# groupadd mysql
                          [root@mysql002 ~]# useradd -g mysql mysql


                          十:修改limits.conf

                            # vi   etc/security/limits.conf
                            * soft noproc 65535
                            * hard noproc 65535
                            * soft nofile 65535
                            hard nofile 65535

                            十一、解压缩、编译 

                              [root@mysql002 ~]# tar -zxvf  mysql-5.6.40.tar.gz
                              [root@mysql002 ~]# cd mysql-5.6.40
                              [root@mysql002 mysql-5.6.40]#
                              cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
                              -DDEFAULT_CHARSET=utf8 \
                              -DDEFAULT_COLLATION=utf8_general_ci \
                              -DENABLED_LOCAL_INFILE=ON \
                              -DWITH_INNOBASE_STORAGE_ENGINE=1 \
                              -DWITH_FEDERATED_STORAGE_ENGINE=1 \
                              -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
                              -DWITH_EXAMPLE_STORAGE_ENGINE=1 \
                              -DWITH_PARTITION_STORAGE_ENGINE=1 \
                              -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
                              -DCOMPILATION_COMMENT='travelsky for mysql' \
                              -DWITH_READLINE=ON \
                              -DSYSCONFDIR=/DATA/mysqldata/3306 \
                              -DMYSQL_UNIX_ADDR=/DATA/mysqldata/3306/mysql.sock
                              报错:

                                解决办法:
                                # mkdir -p usr/local/boost
                                # cd usr/local/boost
                                # wget http://www.sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz
                                # tar -xvzf boost_1_59_0.tar.gz


                                --删掉源码目录下的“CMakeCache.txt",然后重新编译
                                [root@mysql002 mysql-5.6.40]# cd DATA/rpm-software/mysql-5.6.40
                                [root@mysql002 mysql-5.6.40]# rm CMakeCache.txt


                                [root@mysql002 mysql-5.6.40]# ---继续cmake,添加上红色部分
                                cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
                                -DDEFAULT_CHARSET=utf8 \
                                -DDEFAULT_COLLATION=utf8_general_ci \
                                -DENABLED_LOCAL_INFILE=ON \
                                -DWITH_INNOBASE_STORAGE_ENGINE=1 \
                                -DWITH_FEDERATED_STORAGE_ENGINE=1 \
                                -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
                                -DWITH_EXAMPLE_STORAGE_ENGINE=1 \
                                -DWITH_PARTITION_STORAGE_ENGINE=1 \
                                -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
                                -DCOMPILATION_COMMENT='travelsky for mysql' \
                                -DWITH_READLINE=ON \
                                -DWITH_BOOST=/usr/local/boost \
                                -DSYSCONFDIR=/DATA/mysqldata/3306 \
                                                               -DMYSQL_UNIX_ADDR=/DATA/mysqldata/3306/mysql.sock


                                  [root@mysql002 mysql-5.6.40]# make && make install
                                  [root@mysql002 ~]# chown -R mysql:mysql /usr/local/mysql
                                  [root@mysql002 data]# mkdir -p /DATA/mysqldata/{3306/{data,tmp,binlog},backup,scripts}
                                  [root@mysql002 data]# chown -R mysql:mysql /DATA/mysqldata
                                  [root@mysql002 etc]# chmod -R 755 /DATA/mysqldata
                                  [root@mysql002 data]# su - mysql
                                  [mysql@mysql002 ~]$ vi /DATA/mysqldata/3306/my.cnf ------手动创建my.cnf文件
                                  [client]
                                  port = 3306
                                  socket = /DATA/mysqldata/3306/mysql.sock
                                  #MySQL server
                                  [mysqld]
                                  port = 3306
                                  user = mysql
                                  socket = /DATA/mysqldata/3306/mysql.sock
                                  pid-file =/DATA/mysqldata/3306/mysql.pid
                                  basedir = /usr/local/mysql
                                  datadir = /DATA/mysqldata/3306/data
                                  tmpdir = /DATA/mysqldata/3306/tmp
                                  open_files_limit = 10240


                                  十二、初始化MYSQL数据库

                                    $  /usr/local/mysql/scripts/mysql_install_db --datadir=/DATA/mysqldata/3306/data --basedir=/usr/local/mysql

                                    继续关注,后续持续更新......


                                    目前10000+人已关注加入我们


                                           

                                           


                                        ◆此生无悔入IT
                                    引入虚拟化的必要性 

                                    Vim小抄与shell基本操作

                                    VMware Esxi-SAN组网概述

                                    疫情之后,我想第一时间见到“你”!

                                    微信报告刷屏,原来80后已经开始老了….
                                    文章转载自技术那点事,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

                                    评论