您的位置:首页 > 数据库 > MariaDB

linux高级知识,LAMP架构(二),Mariadb,apache安装

2017-12-16 00:00 609 查看
MariaDB一样使用二进制的免编译包

切换到源码目录下载免编译包。

cd /usr/local/src
wget https://downloads.mariadb.com/MariaDB/mariadb-10.2.6/bintar-linux-glibc_214-x86_64/mariadb-10.2.6-linux-glibc_214-x86_64.tar.gz

解压,并重命名到/usr/local/mariadb目录

tar zxvf mariadb-10.2.6-linux-glibc_214-x86_64.tar.gz
mv mariadb-10.2.6-linux-glibc_214-x86_64 /usr/local/mariadb
cd /usr/local/mariadb




接着创建用户也可沿用mysql的账号,这里沿用mysql账号。

mariadb初始化

./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mariadb/ --datadir=/data/mariadb

//指定用户及basedir及data存储目录。





拷贝mariadb的配置文件和启动脚本

cp support-files/my-small.cnf /usr/local/mariadb/my.cnf    //由于安装mysql配置文件就不放在/etc/my.cnf了因为文件名称一样。

默认在support-files目录下有许多的配置文件模板my-huge.cnf、my-large.cnf、my-small.cnf、my-medium.cnf,这些模板是根据不同的内存大小写的模板,可根据自己的硬件情况选择不同的配置文件或者拷贝一份自己修改参数。



vi /usr/local/mariadb/my.cnf       //定义basedir和datadir,这边修改了端口,避免跟mysql冲突。




cp support-files/mysql.server /etc/init.d/mariadb        //拷贝启动脚本到init.d目录
vim /etc/init.d/mariadb //定义basedir、datadir、conf以及启动参数






启动mariadb服务
/etc/init.d/mariadb start






Apache安装
Apache是一个基金会的名字,httpd才是我们要安装的软件包,早期它的名字就叫apache

Apache官网www.apache.org
wget http://mirrors.cnnic.cn/apache/httpd/httpd-2.4.27.tar.gz wget http://mirrors.hust.edu.cn/apache/apr/apr-1.5.2.tar.gz wget http://mirrors.hust.edu.cn/apache/apr/apr-util-1.5.4.tar.gz

apr和apr-util是一个通用的函数库,它让httpd可以不关心底层的操作系统平台,可以很方便地移植(从linux移植到windows)

首先下载2个函数库及apache2.4,上面的地址可能会更新版本而失效可到官网查看下载。



解压并安装apr。

tar zxvf httpd-2.4.27.tar.gz
tar zxvf apr-util-1.5.4.tar.gz                    //如果遇到tar.bz2解压不了,可先用bzip2解压后,在用tar解压。
tar zxvf apr-1.5.2.tar.gz
cd /usr/local/src/apr-1.5.2
./configure --prefix=/usr/local/apr        //初始化,指定安装目录,初始化没问题后在编译。
make && make install






cd /usr/local/src/apr-util-1.5.4
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
//初始化,指定安装目录及指定已经安装apr的路径
make && make install




编译的时候出现错误,缺少expat-devel包,yum install expat-devel即可解决。



编译完apr和apr-util后接着开始安装apache

cd /usr/local/src/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-so表示支持动态扩展模块。
--enable-mods-shared=most                                    //加载支持大多数模块。
make && make install




初始化完,发现有报错,根据提示需要安装libpcre。安装的包要么带lib字眼要么带devel字眼。

这里安装 yum install pcre-devel.x86_64,然后继续初始化。





初始化完成后,进行编译make && make install,发现报错,

/usr/local/apr-util/lib/libaprutil-1.so: undefined reference to `XML_GetErrorCode'
......

要是这里没有提示可查看tail config.log日志



原来是apr apr-util 用了最新的1.6版本,降低了版本,用回1.5版本正常解决。

重新编译安装apr-util的1.5版本,再初始化apache,及编译apache。

版本下载地址:http://archive.apache.org/dist/apr/

直接用ctrl+F查找版本会比较快。





查看apache目录下都有哪些目录,什么用途。



bin目录:放置可执行文件,启动服务的文件或命令(/bin/httpd)就在该目录下。
conf目录:即配置文件所在目录。
htdocs目录:存放访问页的目录。
logs目录:即日志相关的目录,访问日志,错误日志等等。
man目录:帮助文档
modules目录:即模块的目录,扩展模块都在这个目录下面。
用命令/usr/local/apache2.4/bin/apachectl或者下面的命令查看加载的模块。
/usr/local/apache2.4/bin/httpd -M //查看加载的模块




可以看到括号里有static和shared的分别:static就是直接把模块编译进脚本里面或者主二进制文件里面,如果是shared说明是一个扩展模块,这个扩展模块都是一个文件,在modules目录下。

启动apache,/usr/local/apache2.4/bin/apachectl start

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