您的位置:首页 > 运维架构 > Linux

LAMP+Postfix+Dovecot+Postfixadmin搭建邮件管理系统(二)

2018-11-06 17:40 1191 查看

接上期,我们已经成功部署了Bind DNS服务,接下来,开始部署MySQL服务。


三、部署MySQL服务

    1、安装MySQL服务必须的环境依赖

    [root@Mail ~]# yum -y ncurses-devel perl perl-Data-Dumper bison ncurses python-devel libgcrypt zlib bzip2

    2、从MySQL官网下载所需的MySQL服务版本,此处我们选择开源社区版,因为企业版收费,当然,如果企业中有硬性要求的话,可选择MySQL企业版。

    

        如图,我们选择MySQL5.7.24的版本。

        [root@Mail ~]# wget -c https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.24.tar.gz

        [root@Mail ~]# wget -c https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-boost-5.7.24.tar.gz

        由于MySQL的版本需要mysql-boost支持,所以我们必须下载mysql-boost安装包。

        3、下载cmake编译工具,MySQL编译安装官方推荐是用cmake编译,因此,我们使用cmake进行编译,当然也可以用gcc编译

        [root@Mail ~]# wget -c https://cmake.org/files/v3.10/cmake-3.10.1.tar.gz

        4、安装cmake编译工具

        [root@Mail ~]# tar -zxvf cmake-3.10.1.tar.gz

        [root@Mail ~]# cd cmake-3.10.1

        [root@Mail cmake-3.10.1]# ./bootstrap

        [root@Mail cmake-3.10.1]# make -j `grep processor /proc/cpuinfo | wc -l`                                              #make -j 表示进行多线程编译

        

        安装的整个过程这里省略,根据自己的服务器配置不同,时间有长有短。

        [root@Mail cmake-3.10.1]# make install

          

        此图为安装成功后的截图,安装过程中也有可能出现一些错误,可根据日志进行排错,一般都为依赖库没有安装的问题。

        5、安装mysql-boost

        [root@Mail ~]# tar -zxvf boost_1_59_0.tar.gz -C /usr/local                                       #tar -C 表示解压到指定目录

        [root@Mail ~]# mv /usr/local/boost_1_59_0 /usr/local/boost

        [root@Mail ~]# cd /usr/local/boost

        [root@Mail boost]# ./bootstrap.sh

        

        [root@Mail boost]# ./b2

        

        [root@Mail boost]# ./b2 install

        

        这里只截取部分截图供于参考。

        安装完成后,将boost库文件路径添加到系统动态库路径配置文件ld.so.conf中,这里提供一个小脚本,以判断是系统32位还是64位,并做自动添加

        #!/bin/bash

        Kernel=`getconf LONG_BIT`

        if [ "${Kernel}" = "32" ] && [ `grep -L '/usr/lib' '/etc/ld.so.conf'` ];then
            echo -e "PATH=$PATH:/usr/local/ 2230 boost" >> /etc/profile
            echo -e "/usr/local/boost/lib" >> /etc/ld.so.conf
        elif [ "${Kernel}" = "64" ] && [ `grep -L '/usr/lib64' '/etc/ld.so.conf'` ];then
            echo -e "PATH=$PATH:/usr/local/boost" >> /etc/profile
            echo -e "/usr/local/boost/stage/lib" >> /etc/ld.so.conf
        fi

        5、安装MySQL服务

            a、创建MySQL工作用户及用户组、数据目录、授权等

            [root@Mail ~]# groupadd mysql

            [root@Mail ~]# useradd -r -s /sbin/nologin -M -g mysql mysql

            [root@Mail ~]# mkdir -p /wdata/mysql/{data,logs,binlog,config}

            [root@Mail ~]# chown -R mysql.mysql /wdata/mysql

            [root@Mail ~]# chgrp -R mysql /usr/local/mysql

            b、解压MySQL安装包并进入目录

            [root@Mail ~]# tar -zxvf mysql-5.7.24.tar.gz

            [root@Mail ~]# cd mysql-5.7.24

            c、开始编译MySQL

            [root@Mail mysql-5.7.24]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
            -DMYSQL_DATADIR=/wdata/mysql/data \
            -DSYSCONFDIR=/wdata/mysql/config \
            -DMYSQL_UNIX_ADDR=/wdata/mysql/data/mysql.sock \
            -DMYSQL_TCP_PORT=3306 \
            -DWITH_MYISAM_STORAGE_ENGINE=1 \
            -DWITH_INNOBASE_STORAGE_ENGINE=1 \
            -DWITH_PARTITION_STORAGE_ENGINE=1 \
            -DWITH_FEDERATED_STORAGE_ENGINE=1 \
            -DEXTRA_CHARSETS=all \
            -DDEFAULT_CHARSET=utf8mb4 \
            -DDEFAULT_COLLATION=utf8mb4_general_ci \
            -DWITH_EMBEDDED_SERVER=1 \
            -DENABLED_LOCAL_INFILE=1 \
            -DENABLE_DOWNLOADS=1 \
            -DWITH_CURL=/usr/lib64 \
            -DMYSQL_USER=mysql \
            -DINSTALL_LIBDIR=/usr/local/mysql/lib \
            -DINSTALL_PLUGINDIR=/usr/local/mysql/lib/plugin \
            -DWITH_BOOST=/usr/local/boost

            具体的编译参数含义可参照MySQL官方文档,编译过程如下图:

            

            d、安装MySQL

            [root@Mail mysql-5.7.24]# make -j `grep processor /proc/cpuinfo | wc -l`

            

            

            [root@Mail mysql-5.7.24]# make install

            

            e、编辑MySQL配置文件,并作适当优化,这里不做阐述,下图截取一部分针对个人服务器优化过的MySQL配置文件,当然MySQL不同的版本,有些参数数是不同的或者是被去掉的。

            

            f、设置MySQL环境变量

            [root@Mail mysql-5.7.24]# echo "PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH" >> /etc/profile

            [root@Mail mysql-5.7.24]# source /etc/profile

            g、MySQL数据库初始化

            [root@Mail mysql-5.7.24]# mysqld --initialize-insecure --user=mysql --console --basedir=/usr/local/mysql --datadir=/wdata/mysql/data

            h、复制MySQL启动脚本到 /etc/init.d 目录

            [root@Mail mysql-5.7.24]# cp -rf /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

            [root@Mail mysql-5.7.24]# chmod a+x /etc/init.d/mysqld

            [root@Mail mysql-5.7.24]# chkconfig --add mysqld
            [root@Mail mysql-5.7.24]# chkconfig mysqld on

            i、添加MySQL命令软连接

            [root@Mail mysql-5.7.24]# ln -sf /usr/local/mysql/lib/mysql /usr/lib/mysql
            [root@Mail mysql-5.7.24]# ln -sf /usr/local/mysql/bin/mysql /usr/bin/mysql
            [root@Mail mysql-5.7.24]# ln -sf /usr/local/mysql/include/mysql /usr/include/mysql

            j、启动MySQL服务,并修改MySQL密码

           &nbs 38f8 p;[root@Mail mysql-5.7.24]# service mysqld start

            [root@Mail mysql-5.7.24]# mysqladmin -uroot password "123456"

            注意:我这里只是为了方便,将密码设置为123456,实际环境中别模仿。

            k、登陆验证MySQL服务,任意执行一条命令,看MySQL初始库是否正常。

            [root@Mail mysql-5.7.24]# mysql -uroot -p123456

            


至此,MySQL服务不是完成,我们可以查看MySQL的日志文件,看看有没有什么报错,如果有,可根据日志提示内容进行相应的排错,一般日志中都回很明确的指明错误位置。


未完待续。。。。。。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  MySQL Linux Centos
相关文章推荐