LAMP架构mariadb/apache的安装及基本使用
2019独角兽企业重金招聘Python工程师标准>>>
MariaDB安装(类似于mysql安装)
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
- 解压二进制已编译包
[root@localhost src]# tar zxf mariadb-10.2.6-linux-glibc_214-x86_64.tar.gz
- 移动至/usr/local/下
[root@localhost src]# mv mariadb-10.2.6-linux-glibc_214-x86_64 /usr/local/mariadb
[root@localhost local]# cd mariadb/
- 初始化脚本,指定basedir和datadir
# 这里跟mysql安装不同的地方是需要额外指定basedir[root@localhost mariadb]# ./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mariadb/ --datadir=/data/mariadb
Installing MariaDB/MySQL system tables in '/data/mariadb' ...
OKTo start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your systemPLEASE REMEMBER TO SET A PASSWORD FOR THE MariaDB root USER !
To do so, start the server, then issue the following commands:'/usr/local/mariadb//bin/mysqladmin' -u root password 'new-password'
'/usr/local/mariadb//bin/mysqladmin' -u root -h localhost.localdomain password 'new-password'Alternatively you can run:
'/usr/local/mariadb//bin/mysql_secure_installation'which will also give you the option of removing the test
databases and anonymous user created by default. This is
strongly recommended for production servers.See the MariaDB Knowledgebase at http://mariadb.com/kb or the
MySQL manual for more instructions.You can start the MariaDB daemon with:
cd '/usr/local/mariadb/' ; /usr/local/mariadb//bin/mysqld_safe --datadir='/data/mariadb'You can test the MariaDB daemon with mysql-test-run.pl
cd '/usr/local/mariadb//mysql-test' ; perl mysql-test-run.plPlease report any problems at http://mariadb.org/jiraThe latest information about MariaDB is available at http://mariadb.org/.
You can find additional information about the MySQL part at:
http://dev.mysql.com
Consider joining MariaDB's strong and vibrant community:
https://mariadb.org/get-involved/
- 拷贝配置文件(按服务器内存选择,这里测试选择my-small.cnf
# 这里是实现mysql和mariadb同存于一个机器中的做法
# 如果你的主机内只有mariadb,那么直接复制到/etc命令下,命名为my.cnf也行;对于的basedir也同样修改即可
[root@localhost mariadb]# cp support-files/my-small.cnf /usr/local/mariadb/my.cnf
[root@localhost mariadb]# vi /usr/local/mariadb/my.cnf
在[mysqld]下插入下面的内容
basedir=/usr/local/mariadb
datadir=/data/mariadb
- 拷贝启动脚本至/etc/init.d/目录下,并修改内容
[root@localhost mariadb]# cp support-files/mysql.server /etc/init.d/mariadb
[root@localhost mariadb]# vi /etc/init.d/mariadb
修改内容
basedir=/usr/local/mariadb
datadir=/data/mariadb
confdir=$basedir/my.cnf #新增并在下面启动项内添加--defaults-file选项加载指定的配置文件
$bindir/mysqld_safe --defaults-file="$confdir" --datadir="$datadir" --pid-file="$mysqld_pid_file_path" "$@" &
- 启动脚本并验证是否成功
[root@localhost mariadb]# /etc/init.d/mariadb start
Reloading systemd: [ 确定 ]
Starting mariadb (via systemctl): [ 确定 ][root@localhost mariadb]# ps aux | grep mysql
root 3466 0.5 0.1 115392 1736 ? S 13:04 0:00 /bin/sh /usr/local/mariadb//bin/mysqld_safe --defaults-file=/usr/local/mariadb/my.cnf --datadir=/data/mariadb --pid-file=/data/mariadb/localhost.localdomain.pid
mysql 3588 12.7 5.7 1125028 57864 ? Sl 13:04 0:00 /usr/local/mariadb/bin/mysqld --defaults-file=/usr/local/mariadb/my.cnf --basedir=/usr/local/mariadb/ --datadir=/data/mariadb/ --plugin-dir=/usr/local/mariadb/lib/plugin --user=mysql --log-error=/data/mariadb/localhost.localdomain.err --pid-file=/data/mariadb//localhost.localdomain.pid --socket=/tmp/mysql.sock --port=3306
root 3624 0.0 0.0 112676 972 pts/0 S+ 13:04 0:00 grep --color=auto mysql
注意第4步中拷贝、重命名配置文件的过程你可以任意存储,只要在启动脚本内指定好配置文件的路径,就可以安装启动成功。
安装apache
apache是一个基金会的名字,httpd才是要安装的软件包,其早期名字为apache。
Apache官网 www.apache.org
软件包下载地址
由于软件更新,下面的地址链接截止为...
到http://mirrors.cnnic.cn/apache/查看当前版本号httpd: http://mirrors.cnnic.cn/apache/httpd/httpd-2.4.28.tar.gz
apr: http://mirrors.cnnic.cn/apache/apr/apr-1.6.3.tar.gz
apr-util: http://mirrors.cnnic.cn/apache/apr/apr-util-1.6.1.tar.gz
软件安装
apr和apr-util
- 先安装apr
[root@localhost src]# tar -zxvf apr-1.6.3.tar.gz
[root@localhost src]# cd apr-1.6.3/
[root@localhost apr-1.6.3]# ./configure --prefix=/usr/local/apr# 判断是否编译成功
[root@localhost src]# echo $?
0
[root@localhost src]# make && make install
- 安装apr-util
[root@localhost src]# tar -zxvf apr-util-1.6.1.tar.gz
[root@localhost src]# cd apr-util-1.6.1
[root@localhost apr-util-1.6.1]# ./configure --prefix=/usr/loca/apr-util --with-apr=/usr/local/apr
[root@localhost apr-util-1.6.1]# echo $?
0
[root@localhost src]# make && make install
- 安装apache2.4
[root@localhost src]# tar -zxvf httpd-2.4.28.tar.gz
[root@localhost src]# cd httpd-2.4.28
[root@localhost httpd-2.4.28]# ./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@localhost httpd-2.4.28]# echo $?
0
[root@localhost httpd-2.4.28]# make && make install
编译参数说明:
--enable-so 支持动态扩展模块
如php模块,其实质为一个.so文件,通过apache的配置文件制定php模块位置,来加载php,在apache需要php解析时才调用。
--enable-mods-shared=most 允许大多数的模块扩展到apache主进程
查看编译时的参数
[root@localhost ~]# cat /usr/local/apache/build/config.nice
#! /bin/sh
#
# Created by configure"./configure" \
"--prefix=/usr/local/apache" \
"--with-apr=/usr/local/apr" \
"--with-apr-util=/usr/local/apr-util/" \
"--enable-so" \
"--enable-mods-shared=most" \
"$@"
apache文件目录说明
- bin目录
# apache二进制文件存放目录
[root@localhost apache2.4]# ls bin/
ab checkgid envvars-std htdbm httpd rotatelogs
apachectl dbmmanage fcgistarter htdigest httxt2dbm
apxs envvars htcacheclean htpasswd logresolve
- conf目录
# apache配置文件存放目录
[root@localhost apache2.4]# ls conf/
extra httpd.conf magic mime.types original
- htdocs目录
# 访问apache网络服务时的默认网页存放目录
[root@localhost apache2.4]# ls htdocs/
index.html
- modules目录
# apache可加载模块文件存放目录
[root@localhost apache2.4]# ls modules/
httpd.exp mod_lbmethod_heartbeat.so
mod_access_compat.so mod_log_config.so
mod_actions.so mod_log_debug.so
mod_alias.so mod_logio.so
mod_allowmethods.so mod_macro.so
mod_auth_basic.so mod_mime.so
mod_auth_digest.so mod_negotiation.so
mod_auth_form.so mod_proxy_ajp.so
mod_authn_anon.so mod_proxy_balancer.so
mod_authn_core.so mod_proxy_connect.so
...
查看当前已加载模块
# 其中static为已经编译进二进制文件bin/httpd内的模块;
# shared为动态加载模块,需要在编译时添加参数--enable-so
[root@localhost apache2.4]# /usr/local/apache2.4/bin/apachectl -M
Loaded Modules:core_module (static)so_module (static)http_module (static)mpm_event_module (static)authn_file_module (shared)authn_core_module (shared)authz_host_module (shared)authz_groupfile_module (shared)authz_user_module (shared)authz_core_module (shared)access_compat_module (shared)auth_basic_module (shared)reqtimeout_module (shared)filter_module (shared)mime_module (shared)log_config_module (shared)env_module (shared)headers_module (shared)setenvif_module (shared)version_module (shared)unixd_module (shared)status_module (shared)autoindex_module (shared)dir_module (shared)alias_module (shared)
启动/关闭apache
# 启动
[root@localhost apache2.4]# /usr/local/apache2.4/bin/apachectl start[root@localhost apache2.4]# ps aux | grep httpd
root 40316 0.1 0.2 70908 2204 ? Ss 19:44 0:00 /usr/local/apache2.4/bin/httpd -k start
daemon 40317 0.0 0.4 359872 4256 ? Sl 19:44 0:00 /usr/local/apache2.4/bin/httpd -k start
daemon 40318 0.0 0.4 359872 4256 ? Sl 19:44 0:00 /usr/local/apache2.4/bin/httpd -k start
daemon 40319 0.0 0.4 359872 4256 ? Sl 19:44 0:00 /usr/local/apache2.4/bin/httpd -k start
root 40402 0.0 0.0 112680 972 pts/0 R+ 19:44 0:00 grep --color=auto httpd[root@localhost 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 1598/sshd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 2415/master
tcp6 0 0 :::3306 :::* LISTEN 1968/mysqld
tcp6 0 0 :::80 :::* LISTEN 40316/httpd
tcp6 0 0 :::22 :::* LISTEN 1598/sshd
tcp6 0 0 ::1:25 :::* LISTEN 2415/master # 关闭
[root@localhost apache2.4]# /usr/local/apache2.4/bin/apachectl stop
软件安装时可能会遇到的问题
- ./configure编译apr时提示(不是错误):
[root@localhost apr-1.6.3]# ./configure --prefix=/usr/local/apr
rm: cannot remove 'libtoolT': No such file or directory
config.status: executing default commands[root@localhost apr-1.6.3]# echo $?
0
- make安装apr-util时报错:
xml/apr_xml.c:35:19: 致命错误:expat.h:没有那个文件或目录#include <expat.h>^
编译中断。
解决:缺少expat-devel包
yum install -y expat-devel
- ./configure httpd时报错:
configure: error: pcre-config for libpcre not found. PCRE is required and available from http://pcre.org/
解决:缺少prce库(正则相关的库)
yum install -y pcre-devel
- make http时报错:
...
/usr/local/apr-util/lib/libaprutil-1.so: undefined reference to `XML_StopParser'
/usr/local/apr-util/lib/libaprutil-1.so: undefined reference to `XML_Parse'
/usr/local/apr-util/lib/libaprutil-1.so: undefined reference to `XML_ErrorString'
/usr/local/apr-util/lib/libaprutil-1.so: undefined reference to `XML_SetElementHandler'
collect2: error: ld returned 1 exit status
make[2]: *** [htpasswd] 错误 1
make[2]: 离开目录“/usr/local/src/httpd-2.4.28/support”
make[1]: *** [all-recursive] 错误 1
make[1]: 离开目录“/usr/local/src/httpd-2.4.28/support”
make: *** [all-recursive] 错误 1
解决:安装libxml2-devel包
详细步骤参见:https://my.oschina.net/LuCastiel/blog/1590706
可能缺少的软件包
编译安装前提
yum install -y gcc gcc-c++
安装apr/apr-util/httpd
yum install -y expat-devel pcre-devel
转载于:https://my.oschina.net/u/3964535/blog/2874839
LAMP架构mariadb/apache的安装及基本使用相关推荐
- 阿里云hph版本跟mysql安装_实体机下Centos7操作系统的安装,PHP,FTP,mariadb,Apache的安装设置,搭建网站完美实现...
各个版本的ISO镜像文件说明: CentOS-7-x86_64-DVD-1708.iso 标准安装版(推荐) CentOS-7-x86_64-Everything-1708 ...
- 建网站框架LAMP之:APACHE的安装
下载httpd:放在目录:/usr/local/src http://httpd.apache.org/download.cgi#apache24 2. 下载apr:放在目录:/usr/local/s ...
- LAMP架构(apache与php结合,apache默认虚拟主机)
一.apache与php结合 主配置文件/usr/local/apache2.4/conf/httpd.conf [root@localhost ~]# /usr/local/apache2.4/bi ...
- lamp架构之redis(3):redis和mysql的整合
redis和mysql的整合 一.redis结合mysql 1.redis和mysql的基础概念 2.redis和mysql的区别总结 3.为什么要作缓存 4.redis作为缓存 二.环境部署 三.m ...
- LAMP架构之redis(3):redis+mysql架构
目录 一.redis结合mysql (1)流程图 (2)实验环境 (3)mysql+redis部署 (4)效果测试 二.配置 gearman 实现数据同步 (1)gearman原理 (2)gaerma ...
- Ansible使用角色部署LAMP架构
文章目录 使用角色部署lamp架构 部署apache 编写任务 编写脚本 配置变量 配置模板 编写playbook执行 部署mysql 编写任务 配置变量 编写脚本 编写模板 编写playbook执行 ...
- LAMP架构介绍、MySQL和MariaDB介绍、MySQL安装
2019独角兽企业重金招聘Python工程师标准>>> LAMP架构介绍 Linux+Apache+MySQL+PHP 就是在linux系统上安装httpd. mysql .PHP, ...
- LAMP架构(LAMP介绍,mysql/mariaDB介绍,Mysql安装)
一.LAMP架构介绍: Linux+ Apache(httpd)+ mysql + php 操作系统+外网服务软件 + 存储软件 + 脚本语言(由C开发) PHP网站 三个角色可以装在一台机器 ...
- 末学者笔记--apache编译安装及LAMP架构上线
apache介绍 一.Apache的三种工作模式 Apache一共有3种稳定的MPM模式(多进程处理模块),它们分别是prefork.worker.event.http-2.2版本的httpd默认的m ...
最新文章
- DFS template and summary
- BFC(Box Formatting Context)的原理
- qemu+tap+bridge
- 算法导论之平摊分析(动态表)
- java 中断线程 wait_Java 线程中断(interrupt)与阻塞 (park)的区别
- Vue——组件化开发DEMO
- boost::copy_backward相关的测试程序
- 利用lay-ui结合ajax实现分页功能(不借助框架,简单易懂)
- 计算机试题dddd,数据库系统概论试题及答案dddd_Image_Marked.pdf
- vue3数据绑定显示列表数据局
- IOS UIScrollView 滚动视图的使用和文档
- 标致雪铁龙与菲亚特克莱斯勒宣布完成合并 新股1月19日纽交所上市
- java记录类加载的个数_java类加载过程 - audience_1的个人空间 - OSCHINA - 中文开源技术交流社区...
- 过去几年接触了很多小公司小品牌
- Python标准库05 存储对象 (pickle包,cPickle包)
- sha2 替换sha1 时间表
- kettle 4.4源代码分析Transformation
- 数学猜想验证步骤_10大仍未解开的数学难题
- php composer 无法下载,composer给laravel下载扩展包 无法下载的问题
- ps制作计算机考试证件照,如何通过PS制作一寸证件照(超详细流程)?
热门文章
- Django模型层--多表操作
- 在Linux环境下mysql的root密码忘记解决方法 1.首先确认服务器出于安全的状态,也就是没有人能够任意地连接MySQL数据库。 2.修改MySQL的登录设置: # vi /etc/my.c
- windows下mysql主从同步_详解windows下mysql的主从同步
- json转string工具_不要再重复造轮子了,这款开源工具类库贼好使!
- android手机 环境变量 文件,【图片】【教程】配置安卓Java环境变量【手机端反编译吧】_百度贴吧...
- mysql linux 关闭防火墙_linux常用命令和关闭防火墙
- Redis数据结构——跳跃表-skiplist
- kafka是如何解决粘包拆包的
- kafka中生产者和消费者的分区问题
- 【Aladdin Unity3D Shader编程】之三 光照模型(二)