7.27 11.1-11.5

11.1 LAMP架构介绍

LAMP即Linux+Apache(即httpd)+MySQL+PHP

Apache:提供web服务的软件

MySQL:用于存储字符串的数据库软件,无法存储图片、声音等文件,主要用于存储文字性内容(帖子、消息、用户名密码信息、账户积分信息等)

PHP:

一个脚本语言,类似shell,但比shell复杂,使用C语言开发,主要用于做网站,用PHP写的网站多用于PC端访问;

移动app也需要调用服务端的接口,在服务端取数据,假如数据存在mysql,mysql会和PHP通信,所以服务端的程序也可能是PHP写的

安装时Apache必须和PHP在一台服务器,其他服务可以分别装在不同的服务器上

LAMP架构如何工作:

PHP以一个模块的形式和Apache结合在一起;

Apache无法直接与MySQL通信,只能通过PHP模块去MySQL取数据,然后PHP将数据交给Apache,Apache再交给用户;

PHP和MySQL相连取数据的行为叫动态请求;

动态请求:

用户登录论坛:

用户在浏览器输入网址并输入用户名密码点击请求登录,此时apache检查用户的请求是动态或静态,若为动态请求,则apache通过PHP模块和MySQL通信查询该用户的密码,然后PHP进行比对,正确则apache会返回登录的状态

静态请求:

网站的logo属于静态文件,此时服务器会从某个目录下或其他服务器拿到logo图片再返回给用户,此时没有用到PHP,不与MySQL通信,属于静态请求

11.2 MySQL_MariaDB介绍

MySQL是一个关系型数据库,由mysql ab公司开发;

2008年mysql被sun公司收购;

2009年sun被Oracle公司收购;

Oracle是一家专门做数据库的公司;

小型机一般使用收费的unix操作系统;

mysql最新版本5.7GA/8.0DMR;

MySQL被Oracle收购实现商业化后,原MySQL作者独立创建SkySQL公司(后改名MariaDB公司),该公司开发了MariaDB数据库;

5.5版本的MySQL对应5.5版本的MariaDB,5.5版本后MariaDB的版本从10.0开始(对应MySQL的5.6版本);

版本区分:

Community:社区版本,可以免费、自由使用

Enterprise:企业版,会提供一些服务,有一些额外的高级功能

GA(generally available):通用版本,在生产环境中使用,经过反复验证的较稳定的版本

DMR:开发里程碑发布版,通常指产生较大变化的版本

RC:发行候选版本,已经较稳定,作为发行候选版本随时可能被发布

Beta:开放测试版本,该版本还未正式发布,会被开放给用户或公司外的人进行使用测试,反馈问题

Alpha:内部测试版本,软件开发完成后开放前先在公司内部测试、使用

11.3 MySQL安装(上)

MySQL常用安装包:

rpm包、源码包、二进制免编译包

rpm包:直接yum安装

源码包:需要生成可编译文件并编译再安装,所有包都默认装在/usr目录下,无法指定安装路径

二进制免编译:

发布前先在linux服务器进行编译再将编译完成的文件放到一个目录下,再将目录打包压缩并发布;

这种包不需要编译和配置,直接使用即可;

二进制免编译包可以放在任意目录下(即可以指定路径安装);

如果追求服务在机器上运行的最佳性能,一般使用源码包安装;

二进制的包会区分平台(32或64位):

确定平台:

[[email protected] ~]# uname -a

Linux hyc-01-01 3.10.0-693.el7.x86_64 #1 SMP Tue Aug 22 21:09:27 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

一般32位会显示i686或i586,64位为x86_64

下载mysql二进制免编译包:

[[email protected] ~]# wget http://mirrors.163.com/mysql/Downloads/MySQL-5.6/mysql-5.6.39-linux-glibc2.12-x86_64.tar.gz

11.4 MySQL安装(中)

解压包:

[[email protected] src]# tar zxvf mysql-5.6.39-linux-glibc2.12-x86_64.tar.gz

将解压包生成的目录移动位置并改名:

[[email protected] src]# mv mysql-5.6.39-linux-glibc2.12-x86_64 /usr/local/mysql

查看移动后的目录:

[[email protected] src]# cd /usr/local/mysql

[[email protected] mysql]# ls

bin      data  include  man         README   share      support-files

COPYING  docs  lib      mysql-test  scripts  sql-bench

注意:

需要注意/usr/local路径下原先是否存在目录mysql;

若存在则mv命令执行的结果可能与正常操作不同导致实验失败;

需要查看/usr/local/mysql目录的内容以确定mv执行结果正确;

创建mysql用户:

[[email protected] mysql]# useradd mysql

创建/data/目录:

[[email protected] mysql]# mkdir /data/

若该目录已存在则该步骤省略;

约定将下载的包放在/usr/local/src目录下

 

初始化生成/data/mysql目录:

[[email protected] mysql]# ./scripts/mysql_install_db --user=mysql --datadir=/data/mysql

--user=mysql 指定用户为mysql

--datadir=/data/mysql 指定存放数据的目录

报错1

FATAL ERROR: please install the following Perl modules before executing ./scripts/mysql_install_db:

Data::Dumper

报错提示缺少perl模块

在不清楚具体缺少什么模块时进行模糊查找:

[[email protected] mysql]# yum list |grep perl|grep -i dump

perl-Data-Dumper.x86_64                     2.145-3.el7                base

perl-Devel-Symdump.noarch                   1:2.10-2.el7               base

perl-XML-Dumper.noarch                      0.81-17.el7                base

以上3个包均有可能是报错信息中提到的包,可以尝试安装这些包解决问题;

或者使用浏览器在网络上输入报错信息搜索(百度、bing或google);

r.aminglinux.com提供谷歌镜像,推荐使用google搜索;

[[email protected] mysql]# yum install -y perl-XML-Dumper.noarch

安装以上包后执行初始化,原来的报错依然存在

[[email protected] mysql]# yum install -y perl-Data-Dumper.x86_64

[[email protected] mysql]# ./scripts/mysql_install_db --user=mysql --datadir=/data/mysql

报错2

Installing MySQL system tables..../bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

原因:缺少libaio库文件

解决:

[[email protected] mysql]# yum install -y libaio

[[email protected] mysql]# ./scripts/mysql_install_db --user=mysql --datadir=/data/mysql

检查初始化是否成功:

1 查看执行过程中是否有两个ok

2

[[email protected] mysql]# echo $?

0 为0说明执行成功

拷贝并移动配置文件:

[[email protected] support-files]# ls my-default.cnf mysql模板配置文件路径

my-default.cnf

[[email protected] support-files]# pwd

/usr/local/mysql/support-files

[[email protected] support-files]# cp my-default.cnf /etc/my.cnf

cp:是否覆盖"/etc/my.cnf"? /etc目录下本来就有my.cnf文件

可能系统原先就被安装了mysql或mariaDB所以本来就有my.cnf文件;

mysql的默认配置文件和路径为/etc/my.cnf,想要指定配置文件和路径需要在启动脚本中指定;

修改配置文件:

[[email protected] support-files]# vim /etc/my.cnf

[mysqld]

datadir=/data/mysql 指定数据存放位置

socket=/tmp/mysql.sock 指定socket通信地址

# Disabling symbolic-links is recommended to prevent assorted security risks

symbolic-links=0

# Settings user and group are ignored when systemd is used.

# If you need to run mysqld under a different user or group,

# customize your systemd unit file for mariadb according to the

# instructions in http://fedoraproject.org/wiki/Systemd

[mysqld_safe]

#log-error=/var/log/mariadb/mariadb.log

#pid-file=/var/run/mariadb/mariadb.pid

#

# include all files from the config directory

注释掉的部分不会生效,暂时不看,后期遇到需求再增加即可;

11.5 MySQL安装(下)

mysql启动脚本

[[email protected] mysql]# ls support-files/mysql.server

support-files/mysql.server

[[email protected] mysql]# pwd

/usr/local/mysql

拷贝启动脚本

[[email protected] mysql]# cp support-files/mysql.server /etc/init.d/mysqld

编辑启动脚本

[[email protected] mysql]# vim /etc/init.d/mysqld

#!/bin/sh

# Copyright Abandoned 1996 TCX DataKonsult AB & Monty Program KB & Detron HB

# This file is public domain and comes with NO WARRANTY of any kind

# MySQL daemon start/stop script.

# Usually this is put in /etc/init.d (at least on machines SYSV R4 based

# systems) and linked to /etc/rc3.d/S99mysql and /etc/rc0.d/K01mysql.

# When this is done the mysql server will be started when the machine is

# started and shut down when the systems goes down.

# Comments to support chkconfig on RedHat Linux

# chkconfig: 2345 64 36

# description: A very fast and reliable SQL database engine.

# Comments to support LSB init script conventions

### BEGIN INIT INFO

# Provides: mysql

# Required-Start: $local_fs $network $remote_fs

# Should-Start: ypbind nscd ldap ntpd xntpd

# Required-Stop: $local_fs $network $remote_fs

# Default-Start:  2 3 4 5

# Default-Stop: 0 1 6

# Short-Description: start and stop MySQL

# Description: MySQL is a very fast and reliable SQL database engine.

### END INIT INFO

# If you install MySQL on some other places than /usr/local/mysql, then you

# have to do one of the following things for this script to work:

#

# - Run this script from within the MySQL installation directory

# - Create a /etc/my.cnf file with the following information:

#   [mysqld]

#   basedir=<path-to-mysql-installation-directory>

# - Add the above to any other configuration file (for example ~/.my.ini)

#   and copy my_print_defaults to /usr/bin

# - Add the path to the mysql-installation-directory to the basedir variable

#   below.

#

# If you want to affect other MySQL variables, you should make your changes

# in the /etc/my.cnf, ~/.my.cnf or other MySQL configuration files.

# If you change base dir, you must also change datadir. These may get

# overwritten by settings in the MySQL configuration files.

basedir=/usr/local/mysql 指定mysql程序位置

datadir=/data/mysql 指定mysql数据存放位置

修改启动脚本权限

[[email protected] init.d]# ls -l mysqld

-rwxr-xr-x. 1 root root 10592 7月  30 07:21 mysqld

确保启动脚本权限为755,默认即755;

将mysqld加入系统服务列表

[[email protected] init.d]# chkconfig --list

注:该输出结果只显示 SysV 服务,并不包含

原生 systemd 服务。SysV 配置数据

可能被原生 systemd 配置覆盖。

要列出 systemd 服务,请执行 'systemctl list-unit-files'。

查看在具体 target 启用的服务请执行

'systemctl list-dependencies [target]'。

mysqld           0:关 1:关 2:开 3:开 4:开 5:开 6:关

netconsole         0:关 1:关 2:关 3:关 4:关 5:关 6:关

network          0:关 1:关 2:开 3:开 4:开 5:关 6:关

启动mysql

[[email protected] init.d]# /etc/init.d/mysqld start

[[email protected] init.d]# service mysqld start

Starting MySQL. SUCCESS! 启动成功

命令行启动mysql(无启动脚本时也可使用):

[[email protected] init.d]# /usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf --user=mysql --datadir=/data/mysql &

[1] 28413

[[email protected] init.d]# 180730 08:00:12 mysqld_safe Logging to '/data/mysql/hyc-01-01.err'.

180730 08:00:12 mysqld_safe Starting mysqld daemon with databases from /data/mysql

[[email protected] init.d]# !ps

ps aux|grep mysql

root     28413  0.2  0.1 113260  1588 pts/0    S    08:00   0:00 /bin/sh /usr/localmysql/bin/mysqld_safe --defaults-file=/etc/my.cnf --user=mysql --datadir=/data/mysq

mysql    28540  6.8 44.6 1302676 449736 pts/0  Sl   08:00   0:00 /usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql --datadir=/data/mysql --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=hyc-01-01.err --pid-file=hyc-01-01.pid --socket=/tmp/mysql.sock

root     28563  0.0  0.0 112676   980 pts/0    R+   08:00   0:00 grep --color=auto mysql

查看进程和监听的端口

[[email protected] init.d]# 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      849/sshd

tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      953/master

tcp        0      0 192.168.31.129:1122     0.0.0.0:*               LISTEN      10724/rsync

tcp6       0      0 :::22                   :::*                    LISTEN      849/sshd

tcp6       0      0 ::1:25                  :::*                    LISTEN      953/master

tcp6       0      0 :::3306                 :::*                    LISTEN      28248/mysqld

[[email protected] init.d]# ps aux|grep mysql

root     28109  0.0  0.1  11772  1572 pts/0    S    07:49   0:00 /bin/sh /usr/local、mysql/bin/mysqld_safe --datadir=/data/mysql --pid-file=/data/mysql/hyc-01-01.pid

mysql    28248  0.4 44.6 1302676 449728 pts/0  Sl   07:49   0:00 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/data/mysql --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=hyc-01-01.err --pid-file=/data/mysql/hyc-01-01.pid --socket=/tmp/mysql.sock

root     28273  0.0  0.0 112676   980 pts/0    R+   07:50   0:00 grep --color=auto mysql

关闭mysqld服务

[[email protected] init.d]# service mysqld stop

用killall杀死mysqld进程:

[[email protected] init.d]# yum install -y psmisc

[[email protected] init.d]# killall mysqld

[[email protected] init.d]# ps aux|grep mysql

root     28772  0.0  0.0 112676   976 pts/0    R+   08:11   0:00 grep --color=auto mysql

原文地址:http://blog.51cto.com/12216458/2151964

时间: 2024-11-08 21:46:24

7.27 11.1-11.5的相关文章

每周进度及工作量统计——2016.11.24-2016.11.30

项目:连连看游戏 项目类型:四人小组项目 小组名称:天天向上 小组成员:王森.张政,张金生,栾骄阳 项目改进:final版本研发和维护 项目预期时间:2016.9.10-2016.12.8 2016.11.26-2016.11.27 C类别 C内容 S开始时间 E结束时间 I间隔 T净时间 P预计时间 分析 讨论  13:24  13:43  0  19  20   设计  13:43  14:04  0  21  30 编码 功能优化  14:46  16:51  26  99  120 文档

11.1 LAMP架构介绍 11.2 MySQL、MariaDB介绍 11.3/11.4/11.5 MySQL安装

11.1 LAMP架构介绍 11.2 MySQL.MariaDB介绍 11.3/11.4/11.5 MySQL安装 扩展 mysql5.5源码编译安装 http://www.aminglinux.com/bbs/thread-1059-1-1.html mysql5.7二进制包安装(变化较大) http://www.apelearn.com/bbs/thread-10105-1-1.html 11.1 LAMP架构介绍 Linux + Apache(httpd)+ MySQL + PHP  PH

11.6 -11.9 MariaDB,Apache 安装

- 11.6 MariaDB安装 - 11.7/11.8/11.9 Apache安装 - 扩展 - apache dso https://yq.aliyun.com/articles/6298 - apache apxs http://man.chinaunix.net/newsoft/ApacheMenual_CN_2.2new/programs/apxs.html - apache工作模式 http://www.cnblogs.com/fnng/archive/2012/11/20/2779

11.10/11.11/11.12 安装PHP511.13安装PHP7

- 11.10/11.11/11.12 安装PHP5 - 11.13 安装PHP7 - 扩展 - php中mysql,mysqli,mysqlnd,pdo到底是什么 - http://blog.csdn.net/u013785951/article/details/60876816 - 查看编译参数 http://ask.apelearn.com/question/1295 # 11.10安装PHP5 上 -  PHP官网www.php.net -  当前主流版本为5.6/7.1  1.   c

11.6 MariaDB安装;11.7—11.9 Apache安装(上中下)

扩展: apache dso : https://yq.aliyun.com/articles/6298 apache apxs : http://man.chinaunix.net/newsoft/ApacheMenual_CN_2.2new/programs/apxs.html apache工作模式 : http://www.cnblogs.com/fnng/archive/2012/11/20/2779977.html 11.6 MariaDB安装 1. 进入下载安装包目录: [[emai

20151111,微软11月11日发布12个安全补丁

大家好,我们是微软大中华区安全支持团队. 微软于北京时间2015年11月11日发布了12个新的安全公告,其中4个为严重等级,8个为重要等级,修复了Microsoft Windows.Microsoft Office.Microsoft Lync.Internet Explorer和Microsoft Edge软件中的漏洞.其中MS15-115中所修复的漏洞CVE-2015-6109.MS15-116中所修复的漏洞CVE-2015-2503.MS15-120中所修复的漏洞CVE-2015-6111

2014年11月11日

一晃又是一年的11月11日.来公司6个月了,昨天转正考试,考得一塌糊涂,晚上组长陪着我折腾到半夜1点过,最后还是没有搞定,走出门,冬天的晚上好冷,打了个车回去.煮了包方便面,洗了个澡,已经2点,准备睡觉,隐隐约约听到有人在哭,妈的,吓死人了,过了一会儿,听清楚了,原来是楼上的邻居大半夜不睡觉还在教育孩子,家长真辛苦,那孩子比我还可怜.我以为我的双十一会双喜临门,单身+失业,最后失业待定了. 一上午,讨论组里面的小伙伴们都在讨论着想买啥买了啥到底买不买这样一些问题,讨论一直持续到中午终于安静下来,

小米4天猫双11,双11买东西,双11外场红包入口淘宝活动地址入口taobao

[>>>点此查看更多会场] 2014双十一来了,本页面收集所有双11活动入口,攻略更新 请收藏! 柔软舒适,很好看, 质量很好,太值得了 -------------------------------------------------------------------------我现实穿36的 但是我买了37的 大了一点点 很时小米4天猫双11,双11买东西,双11外场红包入口尚个性 [双十一活动电器城会场] 店家服务好,物流神速,衣服质量.做工都好,就是袖子有点长,全五分 cjw小

2017年11月11日软考网络工程师案例分析真题及答案解析

[徐朋出品,必属精品]软考徐朋老师全网最先发布2017年11月11日软考网络工程师案例分析真题及答案解析,是全网最清新版本.详细讲解了2017年11月11日最新开考的软考网络工程师案例分析真题及答案.课件中对每一道真题都进行了详细的解析讲解,考后几周是学员记忆答案的最关键时间点,第一时间发布真题及答案帮助广大考生准确评估自己的考试结果及对未来参加考试的学员展示最新的考试趋势等.下载地址:http://down.51cto.com/data/2340424

2017年11月11日软考网络规划设计师案例分析真题及答案解析

[徐朋出品,必属精品]软考徐朋老师全网最先发布2017年11月11日软考网络规划设计师案例分析真题及答案解析,是全网最清新版本.详细讲解了2017年11月11日最新开考的软考网络规划设计师案例分析真题及答案.课件中对每一道真题都进行了详细的解析讲解,考后几周是学员记忆答案的最关键时间点,第一时间发布真题及答案帮助广大考生准确评估自己的考试结果及对未来参加考试的学员展示最新的考试趋势等.下载地址:http://down.51cto.com/data/2340406