由于MariaDB的二进制包镜像源在国外地址,因此预先下载了该包到本地物理机,使用lrzsz工具将该包上传至虚拟机/usr/local/src目录进行安装。mysql
先安装lrzsz工具: [root@1 src]# yum install -y lrzsz 上传本地包到虚拟终端: [root@1 ~]# cd /usr/local/src [root@1 src]# ls mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz [root@1 src]# rz [root@1 src]# ls mariadb-10.2.6-linux-glibc_214-x86_64.tar.gz mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz
解压包: [root@1 mariadb]# tar zxvf mariadb-10.2.6-linux-glibc_214-x86_64.tar.gz [root@1 src]# mv mariadb-10.2.6-linux-glibc_214-x86_64 /usr/local/mariadb [root@1 src]# cd /usr/local/mariadb 初始化: [root@1 mariadb]# ./scripts/mysql_install_db --user=mysql --datadir=/data/mariadb
[root@1 mariadb]# cp support-files/my-small.cnf /usr/local/mariadb/my.cnf [root@1 mariadb]# cp support-files/mysql.server /etc/init.d/mariadb
配置启动脚本:linux
[root@1 mariadb]# vim /etc/init.d/mariadb basedir=/usr/local/mariadb datadir=/data/mariadb conf=$basedir/my.cnf
检测mysql服务是否在运行: [root@1 mariadb]# ps aux |grep mysql root 1326 0.0 0.0 115376 612 ? S 16:42 0:00 /bin/sh /usr/local/mysql/b mysql 1848 0.1 44.9 981244 453044 ? Sl 16:42 0:19 /usr/local/mysql/bin/mysqlysql --log-error=/data/mysql/adailinux.err --pid-file=/data/mysql/adailinux.pid --socket=/t root 2780 0.0 0.0 112664 972 pts/1 R+ 21:48 0:00 grep --color=auto mysql 因mysql和Mariadb监听同一端口,为避免冲突,因此须要先关不mysql服务: [root@1 mariadb]# systemctl stop mysql 启动mariadb服务: [root@1 mariadb]# /etc/init.d/mariadb start Reloading systemd: [ 肯定 ] Starting mariadb (via systemctl): [ 肯定 ]
注: 若是系统中只安装mysql和mariadb其中一种服务,能够直接把启动脚本放在/etc/文件中设置开机启动。sql
Apache是一个基金会的名字,httpd才是咱们要安装的软件包,早期它的名字就叫apache。httpd使用一个通用函数库Apr和apr-util,它让httpd能够不关心底层的操做系统平台,能够很方便地移植(从linux移植到windows)。
Apache官网 www.apache.org 。apache
httpd2.2和httpd2.4所所使用的Apr库不一样,并且centos7系统自带的Apr与之不匹配,因此须要使用yum安装Apr库文件。vim
Apache包: [root@1 src]# wget http://mirrors.cnnic.cn/apache/httpd/httpd-2.4.27.tar.gz Apr包: [root@1 src]# wget http://mirrors.hust.edu.cn/apache/apr/apr-1.5.2.tar.gz Apr-util包: [root@1 src]# wget http://mirrors.hust.edu.cn/apache/apr/apr-util-1.5.4.tar.gz
[root@1 src]# tar zxvf httpd-2.4.27.tar.gz [root@1 src]# tar zxvf apr-1.5.2.tar.gz [root@1 src]# tar zxvf apr-util-1.5.4.tar.gz
[root@1 src]# cd apr-1.5.2 配置: [root@1 apr-1.5.2]# ./configure --prefix=/usr/local/apr 报错: configure: error: in `/usr/local/src/apr-1.5.2': configure: error: no acceptable C compiler found in $PATH See `config.log' for more details 说明:缺乏C语言相关的编译器。 解决办法: [root@1 apr-1.5.2]# yum install -y gcc* 安装gcc编译器。 [root@1 apr-1.5.2]# ./configure --prefix=/usr/local/apr # 配置成功! 编译和安装: [root@1 apr-1.5.2]# make 报错: xml/apr_xml.c:35:19: 致命错误:expat.h:没有那个文件或目录 #include <expat.h> ^ 编译中断。 make[1]: *** [xml/apr_xml.lo] 错误 1 make[1]: 离开目录“/usr/local/src/apr-util-1.6.0” make: *** [all-recursive] 错误 1 解决办法: [root@1 apr-util-1.6.0]# yum -y install expat-devel [root@1 apr-1.5.2]# make && make install [root@1 apr-1.5.2]# echo $? 0 完成!
注意: APR 1.6.2版本有变动,进行了加密设置,进行编译时须要使用以下命令(不然在安装Apache是没法调用该库文件):windows
[root@1 httpd-2.4.27]# CC="gcc -m64" ./configure --prefix=/usr/local/apr
[root@1 src]# cd apr-util-1.5.4 配置: [root@1 apr-util-1.5.4]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr [root@1 apr-util-1.5.4]# echo $? 0 编译和安装: [root@1 apr-util-1.5.4]# make && make install 完成!
[root@1 src]# cd httpd-2.4.27
[root@1 httpd-2.4.27]# ./configure --prefix=/usr/local/apache2.4 --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --enable-so --enable-mods-shared=most 报错: configure: error: pcre-config for libpcre not found. PCRE is required and available from http://pcre.org/ 说明:须要安装库文件pcre 解决办法: ##查看相关的包 [root@1 httpd-2.4.27]# yum list |grep pcre (结果不展现) 根据搜索的结果安装下面的包: [root@1 httpd-2.4.27]# yum install -y pcre-devel [root@1 httpd-2.4.27]# ./configure --prefix=/usr/local/apache2.4 --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --enable-so --enable-mods-shared=most [root@1 httpd-2.4.27]# echo $? 0 配置完成!
[root@1 httpd-2.4.27]# make 此过程 时间较长! [root@1 httpd-2.4.27]# make install [root@1 httpd-2.4.27]# echo $? 0 安装完成!
切换至Apache2.4目录:centos
[root@1 httpd-2.4.27]# cd /usr/local/apache2.4 [root@1 apache2.4]# ls bin build cgi-bin conf error htdocs icons include logs man manual modules 注:较经常使用目录bin(可执行文件存放目录)、conf(配置文件所在目录)、htdocs(存放一个访问页)、logs(日志文件存放目录)、modules(存放扩展模块)。 查看Apache所加载的模块: [root@1 apache2.4]# /usr/local/apache2.4/bin/httpd -M 或者 [root@1 apache2.4]# /usr/local/apache2.4/bin/apachectl -M
启动:dom
[root@1 apache2.4]# /usr/local/apache2.4/bin/apachectl start AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using fe80::65d2:adc:20d3:8c74. Set the 'ServerName' directive globally to suppress this message #此处错误提示没影响。 检测状态: [root@1 apache2.4]# ps aux |grep httpd root 51085 0.0 0.2 95476 2532 ? Ss 04:00 0:00 /usr/local/apache2.4/binhttpd -k start daemon 51086 0.0 0.4 382304 4424 ? Sl 04:00 0:00 /usr/local/apache2.4/binhttpd -k start daemon 51087 0.0 0.4 382304 4428 ? Sl 04:00 0:00 /usr/local/apache2.4/binhttpd -k start daemon 51088 0.1 0.4 382304 4432 ? Sl 04:00 0:00 /usr/local/apache2.4/binhttpd -k start root 51185 0.0 0.0 112668 972 pts/2 S+ 04:02 0:00 grep --color=auto httpd [root@1 apache2.4]# netstat -lntp Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 836/sshd tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1975/master tcp6 0 0 :::3306 :::* LISTEN 20596/mysqld tcp6 0 0 :::80 :::* LISTEN 51085/httpd tcp6 0 0 :::22 :::* LISTEN 836/sshd tcp6 0 0 ::1:25 :::* LISTEN 1975/master