zoukankan      html  css  js  c++  java
  • 编译安装LAMP

    编译安装MariaDB

    创建MariaDB安装目录、数据库存放目录、建立用户和目录

    先创建一个名为mysql且没有登录权限的用户和一个名为mysql的用户组,然后安装mysql所需的依赖库和依赖包,最后通过cmake进行安装。

    创建mysql用户组

    groupadd -r mysql

    添加新用户

    -r:添加系统用户
    -g:指定要创建的用户所属组
    -s:新账户登录shell
    -d:新账户主目录
    -M:不要创建用户主目录
    useradd -r -g mysql -s /sbin/nologin -d /usr/local/mysql -M mysql

    创建数据库相关目录

    MariaDB安装目录为/usr/local/mysql并且数据目录为 /data/mysql,赋予mysql用户权限
    mkdir -pv /data/mysql
    chown -R mysql:mysql :data/mysql

    安装依赖包

    yum -y install libaio libaio-devel bison bison-devel zlib-devel openssl openssl-devel ncurses ncurses-devel libcurl-devel libarchive-devel boost boost-devel lsof wget gcc gcc-c++ make cmake perl kernel-headers kernel-devel pcre-devel
    

    安装cmake编译工具

    tar xvf cmake-3.12.1.tar.gz
    cd cmake-3.12.1/
    ./bootstrap
    gmake
    make && make install
    其他组件:
    Ncurses:提供功能键定义(快捷键),屏幕绘制以及基于文本终端的图形互动功能动态库;
    Bison:GNU分析器生成器
    Boost库:一个开源可移植的C++库,是C++标准化进程的开发引擎之一

    环境检查

    cmake . 
    -DCMAKE_INSTALL_PREFIX=/usr/local/mysql 
    -DDEFAULT_CHARSET=utf8 
    -DDEFAULT_COLLATION=utf8_general_ci 
    -DENABLED_LOCAL_INFILE=1 
    -DENABLE_DOWNLOADS=1 
    -DEXTRA_CHARSETS=all 
    -DSYSCONFDIR=/etc 
    -DWITHOUT_TOKUDB=1 
    -DWITH_ARCHIVE_STPRAGE_ENGINE=1 
    -DWITH_ARCHIVE_STORAGE_ENGINE=1 
    -DWITH_BLACKHOLE_STORAGE_ENGINE=1 
    -DWITH_DEBUG=0 
    -DWITH_MEMORY_STORAGE_ENGINE=1 
    -DWITH_MYISAM_STORAGE_ENGINE=1 
    -DWITH_INNOBASE_STORAGE_ENGINE=1 
    -DWITH_PARTITION_STORAGE_ENGINE=1  
    -DWITH_READLINE=1 
    -DWITH_SSL=system 
    -DWITH_ZLIB=system 
    -DWITH_LOBWRAP=0 
    -DMYSQL_DATADIR=/data/mysql 
    -DMYSQL_USER=mysql 
    -DMYSQL_UNIX_ADDR=/var/run/mysql/mysql.sock 
    -DMYSQL_TCP_PORT=3306 
    -DMYSQL_MAINTAINER_MODE=0
    

    如果编译失败需要删除CMakeCache.txt,让指令重新执行,否则每次读取这个文件,命令修改正确也是报错

    选项注释

    cmake . 
    -DCMAKE_INSTALL_PREFIX=/usr/local/mysql            [MySQL安装的根目录]
    -DDEFAULT_CHARSET=utf8                             [设置默认字符集为utf8]
    -DDEFAULT_COLLATION=utf8_general_ci                [设置默认字符校对]
    -DENABLED_LOCAL_INFILE=1                           [启用加载本地数据]
    -DENABLE_DOWNLOADS=1                               [编译时允许自主下载相关文件]
    -DEXTRA_CHARSETS=all                               [使MySQL支持所有的扩展字符]
    -DSYSCONFDIR=/etc                                  [MySQL配置文件所在目录]
    -DWITHOUT_TOKUDB=1 
    -DWITH_ARCHIVE_STPRAGE_ENGINE=1                    [MySQL的数据库引擎]
    -DWITH_ARCHIVE_STORAGE_ENGINE=1                    [MySQL的数据库引擎]
    -DWITH_BLACKHOLE_STORAGE_ENGINE=1                  [MySQL的数据库引擎]
    -DWITH_DEBUG=0                                     [禁用调试模式]
    -DWITH_MEMORY_STORAGE_ENGINE=1                     [MySQL的数据库引擎]
    -DWITH_MYISAM_STORAGE_ENGINE=1                     [MySQL的数据库引擎]
    -DWITH_INNOBASE_STORAGE_ENGINE=1                   [MySQL的数据库引擎]
    -DWITH_PARTITION_STORAGE_ENGINE=1                  [MySQL的数据库引擎]
    -DWITH_READLINE=1                                  [MySQL的readline library]
    -DWITH_SSL=system                                  [通讯时支持ssl协议]
    -DWITH_ZLIB=system                                 [允许使用zlib library]
    -DWITH_LOBWRAP=0 
    -DMYSQL_DATADIR=/data/mysql                        [MySQL数据库文件存放目录]
    -DMYSQL_USER=mysql                                 [MySQL用户名] 
    -DMYSQL_UNIX_ADDR=/var/run/mysql/mysql.sock        [MySQL的通讯目录]
    -DMYSQL_TCP_PORT=3306                              [MySQL的监听端口]
    -DMYSQL_MAINTAINER_MODE=0
    

    编译和安装

    make && make install

    配置MariaDB

    使用mysql用户执行脚本,安装数据库到到数据库存放目录

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

    复制MariaDB配置文件到/etc目录
    拷贝maria安装目录下support-files目录下的文件wsrep.cnf目录并重命名为my.cnf
    cp /usr/local/mysql/support-files/wsrep.cnf /etc/my.cnf

    创建启动脚本

    cp /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld

    启动mysqld服务

    /etc/rc.d/init.d/mysqld start

    配置环境变量

    echo "export PATH=$PATH:/usr/local/mysql/bin" >/etc/profile.d/mysql.sh
    添加x权限
    chmod +x /etc/profile.d/mysql.sh

    初始化MariaDB

    /usr/local/mysql/bin/mysql_secure_installation

    启动MariaDB服务

    systemctl strt mysqld

    编译安装Apache

    准备安装文件

    apr-1.6.3.tar.gz
    apr-util-1.6.1.tar.gz
    httpd-2.4.29.tar.bz2

    安装编译工具与插件

    yum -y install gcc gcc-c++ make pcre-devel expat-devel perl

    解压缩文件

    tar xvf apr-1.6.3.tar.gz
    tar xvf apr-util-1.6.1.tar.gz
    tar xvf httpd-2.4.29.tar.bz2
    将插件放入httpd目录下
    mv apr-1.6.3 httpd-2.4.29/srclib/apr
    mv apr-util-1.6.1 httpd-2.4.29/srclib/apr-util

    编译安装

    ./configure --prefix=/app/httpd24 --sysconfdir=/etc/httpd24 --enable-so  --enable-ssl --enable-rewrite --with-zlib --with-pcre --with-included-apr --enable-modules=most --enable-mpms-shared=all --with-mpm=prefork
    
    make && make install
    

    修改PATH路径

    echo "PATH=/usr/local/httpd/bin:$PATH" > /etc/profile.d/httpd.sh
    查看是否生效
    echo $PATH

    启动服务

    apachectl 启动服务
    apachectl -t 检查配置文件语法
    apachectl stop 停止服务

    编译安装php7

    安装扩展包

    yum install epel-release -y

    安装php依赖组件

    yum -y install wget vim pcre pcre-devel openssl openssl-devel libicu-devel gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel ncurses ncurses-devel curl curl-devel krb5-devel libidn libidn-devel openldap openldap-devel nss_ldap jemalloc-devel cmake boost-devel bison automake libevent libevent-devel gd gd-devel libtool* libmcrypt libmcrypt-devel mcrypt mhash libxslt libxslt-devel readline readline-devel gmp gmp-devel libcurl libcurl-devel openjpeg-devel
    

    创建用户和组

    groupadd www
    useradd -g www www

    解压缩安装包

    tar xvf php-7.2.1.tar.gz

    设置变量并开始源码编译

    cp -frp /usr/lib64/libldap* /usr/lib
    
    ./configure --prefix=/usr/local/php 
    --with-config-file-path=/usr/local/php/etc 
    --enable-fpm 
    --with-fpm-user=www 
    --with-fpm-group=www 
    --enable-mysqlnd 
    --with-mysqli=mysqlnd 
    --with-pdo-mysql=mysqlnd 
    --enable-mysqlnd-compression-support 
    --with-iconv-dir 
    --with-freetype-dir 
    --with-jpeg-dir 
    --with-png-dir 
    --with-zlib 
    --with-libxml-dir 
    --enable-xml 
    --disable-rpath 
    --enable-bcmath 
    --enable-shmop 
    --enable-sysvsem 
    --enable-inline-optimization 
    --with-curl 
    --enable-mbregex 
    --enable-mbstring 
    --enable-intl 
    --with-mcrypt 
    --with-libmbfl 
    --enable-ftp 
    --with-gd 
    --enable-gd-jis-conv 
    --enable-gd-native-ttf 
    --with-openssl 
    --with-mhash 
    --enable-pcntl 
    --enable-sockets 
    --with-xmlrpc 
    --enable-zip 
    --enable-soap 
    --with-gettext 
    --disable-fileinfo 
    --enable-opcache 
    --with-pear 
    --enable-maintainer-zts 
    --with-ldap=shared 
    --without-gdbm 
    

    开始安装

    make && make install

    完成后配置php.ini文件

    cp php.ini-development /usr/local/php/etc/php.ini
     cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
     cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf
    
    

    创建system系统单元文件php-fpm启动脚本

    [Unit]
    Description=The PHP FastCGI Process Manager
    After=syslog.target network.target
     
    [Service]
    Type=simple
    PIDFile=/usr/local/php/var/run/php-fpm.pid
    ExecStart=/usr/local/php/sbin/php-fpm --nodaemonize --fpm-config /usr/local/php/etc/php-fpm.conf
    ExecReload=/bin/kill -USR2 $MAINPID
     
    [Install]
    WantedBy=multi-user.target
    

    启动php-fpm服务并加入开机自启动

    systemctl enable php-fpm.service
    systemctl restart php-fpm.service

    参考文件:
    https://www.linuxidc.com/Linux/2017-11/148947.htm
    https://blog.csdn.net/qq_32828933/article/details/82720018
    https://www.jb51.net/article/142332.htm
    https://blog.csdn.net/u011608531/article/details/50756112

  • 相关阅读:
    你人生中的那口井挖了没有?
    Stream接口
    console (控制台)
    assert.fail()
    assert.strictEqual()
    assert.equal()
    assert.ifError()
    assert.ok()
    nodejs assert 模块
    闭包
  • 原文地址:https://www.cnblogs.com/feng-land/p/10328687.html
Copyright © 2011-2022 走看看