源码编译安装LAMP

LAMP架构 

LAMP架构是目前成熟的企业网站应用模式之一,指的是协同工作的一整套系统和相关软件,能够提供动态Web站点服务及其应用开发环境。LAMP是一个缩写词,具体包括Linux操作系统、Apache网站服务器、MySQL数据库服务器、PHP(或Perl、Python)网页编程语言。

 各组件的主要作用如下:

LAMP网站服务架构  同时提供静态页面和动态页面能力
Linux 提供网站服务应用的运行环境,也支持Windows作为 AMP 的运行环境
Apache作为前端网站服务,直接面向用户提供网站访问入口,并处理静态页面请求
MySQL 作为后端数据库,用于存储网站的业务数据、账户信息等,并提供访问接口给编程语言程序连接使用SQL语句进行数据的读写
PHP作为编程语言,负责处理解释动态页面文件;并作为中间件,负责沟通前端Web网站服务和后端数据库协同工作

ServerName www.xy101.com:80               #指定网站的主机名

DocumentRoot "/usr/local/httpd/htdocs"    #指定网页根目录的路径

<IfModule dir_module>
    DirectoryIndex abc.html index.html    #指定网站的默认访问的文件顺序,从左往右
</IfModule>


http://www.xy101.com/index.html             URL/URI访问路径
协议     域名                网站根目录 网页文件

http://www.xy101.com/   先访问 -->  http://www.xy101.com/abc.html    --> /usr/local/httpd/htdocs/abc.html
                        没有的话再访问 -->  http://www.xy101.com/index.html    --> /usr/local/httpd/htdocs/index.html


安装apache

[root@l1 ~]# systemctl disable --now firewalld  //关闭防火墙
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
[root@l1 ~]# setenforce 0
[root@l1 ~]# 
[root@l1 ~]# vim /etc/selinux/config   //设置永久关闭

[root@l1 ~]# cd /opt/
[root@l1 opt]# ls
rh
[root@l1 opt]# rm -rf *
[root@l1 opt]# 
[root@l1 opt]# ls
[root@l1 opt]# mkdir apache  //新建一个阿帕奇的目录
[root@l1 opt]# cd apache/
[root@l1 apache]# 
[root@l1 opt]# ls    //把三个软件包拖进去
apache  apr-1.6.2.tar.gz  apr-util-1.6.0.tar.gz  httpd-2.4.29.tar.bz2
[root@l1 opt]# 
[root@l1 opt]# 
[root@l1 apache]# df -h
文件系统                 容量  已用  可用 已用% 挂载点
devtmpfs                 2.4G     0  2.4G    0% /dev
tmpfs                    2.4G     0  2.4G    0% /dev/shm
tmpfs                    2.4G   13M  2.4G    1% /run
tmpfs                    2.4G     0  2.4G    0% /sys/fs/cgroup
/dev/mapper/centos-root   37G  5.2G   32G   15% /
/dev/sr0                 4.5G  4.5G     0  100% /mnt
/dev/sda1               1014M  187M  828M   19% /boot
tmpfs                    476M   20K  476M    1% /run/user/0
[root@l1 apache]# 
[root@l1 apache]# 
[root@l1 apache]# ls /etc/yum.repos.d/
local.repo  repo.bak
[root@l1 apache]# 
[root@l1 apache]# yum install -y gcc gcc-c++ make perl pcre pcre-devel expat-devel
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
软件包 gcc-4.8.5-44.el7.x86_64 已安装并且是最新版本
软件包 gcc-c++-4.8.5-44.el7.x86_64 已安装并且是最新版本
软件包 1:make-3.82-24.el7.x86_64 已安装并且是最新版本
软件包 4:perl-5.16.3-299.el7_9.x86_64 已安装并且是最新版本
软件包 pcre-8.32-17.el7.x86_64 已安装并且是最新版本
正在解决依赖关系
--> 正在检查事务
---> 软件包 expat-devel.x86_64.0.2.1.0-14.el7_9 将被 安装
---> 软件包 pcre-devel.x86_64.0.8.32-17.el7 将被 安装
--> 解决依赖关系完成依赖关系解决=================================================================================Package             架构           版本                     源             大小
=================================================================================
正在安装:expat-devel         x86_64         2.1.0-14.el7_9           local          58 kpcre-devel          x86_64         8.32-17.el7              local         480 k事务概要
=================================================================================
安装  2 软件包总下载量:538 k
安装大小:1.6 M
Downloading packages:
---------------------------------------------------------------------------------
总计                                                 10 MB/s | 538 kB  00:00     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction正在安装    : pcre-devel-8.32-17.el7.x86_64                                1/2 正在安装    : expat-devel-2.1.0-14.el7_9.x86_64                            2/2 验证中      : expat-devel-2.1.0-14.el7_9.x86_64                            1/2 验证中      : pcre-devel-8.32-17.el7.x86_64                                2/2 已安装:expat-devel.x86_64 0:2.1.0-14.el7_9       pcre-devel.x86_64 0:8.32-17.el7      完毕!
[root@l1 apache]# 
[root@l1 apache]# ls
apr-1.6.2.tar.gz  apr-util-1.6.0.tar.gz  httpd-2.4.29.tar.bz2[root@l1 apache]# tar xf httpd-2.4.29.tar.bz2 //解压三个解压包
[root@l1 apache]# tar xf apr-1.6.2.tar.gz
[root@l1 apache]# tar xf apr-util-1.6.0.tar.gz
[root@l1 apache]# 
[root@l1 apache]# ls
apr-1.6.2         apr-util-1.6.0         httpd-2.4.29
apr-1.6.2.tar.gz  apr-util-1.6.0.tar.gz  httpd-2.4.29.tar.bz2
[root@l1 apache]# 

[root@l1 apache]# cd httpd-2.4.29/
[root@l1 httpd-2.4.29]# ls
ABOUT_APACHE     buildconf       httpd.dsp       libhttpd.mak   README.cmake
acinclude.m4     CHANGES         httpd.mak       LICENSE        README.platforms
Apache-apr2.dsw  CMakeLists.txt  httpd.spec      Makefile.in    ROADMAP
Apache.dsw       config.layout   include         Makefile.win   server
apache_probes.d  configure       INSTALL         modules        srclib
ap.d             configure.in    InstallBin.dsp  NOTICE         support
build            docs            LAYOUT          NWGNUmakefile  test
BuildAll.dsp     emacs-style     libhttpd.dep    os             VERSIONING
BuildBin.dsp     httpd.dep       libhttpd.dsp    README
[root@l1 httpd-2.4.29]# 
[root@l1 httpd-2.4.29]# cd srclib/
[root@l1 srclib]# ls
Makefile.in
[root@l1 srclib]# 

[root@l1 srclib]# pwd
/opt/apache/httpd-2.4.29/srclib
[root@l1 srclib]# cd ../
[root@l1 httpd-2.4.29]# cd ..
[root@l1 apache]# ls
apr-1.6.2         apr-util-1.6.0         httpd-2.4.29
apr-1.6.2.tar.gz  apr-util-1.6.0.tar.gz  httpd-2.4.29.tar.bz2
[root@l1 apache]# mv apr-1.6.2 httpd-2.4.29/srclib/apr   //移动到
[root@l1 apache]# mv apr-util-1.6.0 httpd-2.4.29/srclib/apr-util  //移动到
[root@l1 apache]# 

[root@l1 apache]# cd httpd-2.4.29/
[root@l1 httpd-2.4.29]# ls
ABOUT_APACHE     buildconf       httpd.dsp       libhttpd.mak   README.cmake
acinclude.m4     CHANGES         httpd.mak       LICENSE        README.platforms
Apache-apr2.dsw  CMakeLists.txt  httpd.spec      Makefile.in    ROADMAP
Apache.dsw       config.layout   include         Makefile.win   server
apache_probes.d  configure       INSTALL         modules        srclib
ap.d             configure.in    InstallBin.dsp  NOTICE         support
build            docs            LAYOUT          NWGNUmakefile  test
BuildAll.dsp     emacs-style     libhttpd.dep    os             VERSIONING
BuildBin.dsp     httpd.dep       libhttpd.dsp    README
[root@l1 httpd-2.4.29]# 
[root@l1 httpd-2.4.29]# ls srclib/
apr  apr-util  Makefile.in
[root@l1 httpd-2.4.29]# 

./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi

[root@l1 httpd-2.4.29]# make -j 2

 

[root@l1 httpd-2.4.29]# cd /usr/local/httpd/
[root@l1 httpd]# ls   //里面就有阿帕奇的程序目录
bin    cgi-bin  error   icons    lib   man     modules
build  conf     htdocs  include  logs  manual
[root@l1 httpd]# 
[root@l1 httpd]# ls bin/   //可执行程序
ab            apu-1-config  dbmmanage    fcgistarter   htdigest  httxt2dbm
apachectl     apxs          envvars      htcacheclean  htpasswd  logresolve
apr-1-config  checkgid      envvars-std  htdbm         httpd     rotatelogs
[root@l1 httpd]# 

[root@l1 httpd]# cd bin/
[root@l1 bin]# ls
ab            apu-1-config  dbmmanage    fcgistarter   htdigest  httxt2dbm
apachectl     apxs          envvars      htcacheclean  htpasswd  logresolve
apr-1-config  checkgid      envvars-std  htdbm         httpd     rotatelogs
[root@l1 bin]# cp apachectl /etc/init.d/httpd   //apachectl 复制到 /etc/init.d/ 并改名httpd
[root@l1 bin]# 
[root@l1 bin]# cd /etc/init.d/
[root@l1 init.d]# ls
functions  httpd  netconsole  network  README
[root@l1 init.d]# vim httpd 

[root@l1 init.d]# chkconfig --add httpd   //添加httpd
[root@l1 init.d]# cd /usr/local/httpd/
[root@l1 httpd]# ls
bin      conf    icons    logs    modules
build    error   include  man
cgi-bin  htdocs  lib      manual
[root@l1 httpd]# cd conf/
[root@l1 conf]# 
[root@l1 conf]# vim httpd.conf 

[root@l1 conf]# ln -s /usr/local/httpd/bin/* /usr/local/bin/  //软链接
[root@l1 conf]# apachectl -t  //检测阿帕奇语法是否有误
Syntax OK
[root@l1 conf]# 
[root@l1 conf]# service httpd start   //启动服务
[root@l1 conf]# service httpd status  /查看状态
/etc/init.d/httpd: line 100: lynx: command not found
[root@l1 conf]# 
[root@l1 conf]# netstat -lntp | grep :80  //80端口已开启
tcp6       0      0 :::80                   :::*                    LISTEN      43894/httpd         
[root@l1 conf]# [root@l1 conf]# service httpd stop  //关闭
[root@l1 conf]# netstat -lntp | grep :80
[root@l1 conf]# 

另一种方法

[root@l1 conf]# netstat -lntp | grep :80
[root@l1 conf]# cd /etc/init.d/
[root@l1 init.d]# ls
functions  httpd  netconsole  network  README
[root@l1 init.d]# rm -f httpd   //删除
[root@l1 init.d]# 
[root@l1 init.d]# netstat -lntp | grep :80
[root@l1 init.d]# cd /usr/lib/systemd/system
[root@l1 system]# vim httpd.service
[Unit]
Description=The Apache HTTP Server
After=network.target
[Service]
Type=forking
PIDFile=/usr/local/httpd/logs/httpd.pid
ExecStart=/usr/local/bin/apachectl $OPTIONS
ExecReload=/bin/kill -HUP $MAINPID
[Install]
WantedBy=multi-user.target

[root@l1 system]# systemctl daemon-reload
[root@l1 system]# systemctl start httpd
[root@l1 system]# netstat -lntp | grep :80
tcp6       0      0 :::80                   :::*                    LISTEN      44672/httpd         
[root@l1 system]# systemctl stop httpd
[root@l1 system]# netstat -lntp | grep :80
[root@l1 system]# 
[root@l1 system]# systemctl enable --now httpd
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.
[root@l1 system]# netstat -lntp | grep :80
tcp6       0      0 :::80                   :::*                    LISTEN      44821/httpd         
[root@l1 system]# 

[root@l1 system]# cd /usr/local/httpd/
[root@l1 httpd]# ls
bin    cgi-bin  error   icons    lib   man     modules
build  conf     htdocs  include  logs  manual
[root@l1 httpd]# 
[root@l1 httpd]# cd htdocs
[root@l1 htdocs]# ls
index.html
[root@l1 htdocs]# vim index.html

[root@l1 htdocs]# touch abc.html
[root@l1 htdocs]# ls
abc.html  index.html
[root@l1 htdocs]# cp index.html abc.html
cp:是否覆盖"abc.html"? yes
[root@l1 htdocs]# vim abc.html

安装MySQL 

安装环境依赖包 

[root@l1 htdocs]# yum -y install gcc gcc-c++ ncurses ncurses-devel bison cmake openssl-devel
[root@l1 htdocs]# cd /opt/
[root@l1 opt]# ls
apache
[root@l1 opt]# mkdir mysql
[root@l1 opt]# cd mysql/
[root@l1 mysql]# rz -E
rz waiting to receive.

[root@l1 mysql]# ls
mysql-boost-5.7.44.tar.gz
[root@l1 mysql]# 

[root@l1 mysql]# ls
mysql-boost-5.7.44.tar.gz
[root@l1 mysql]# 
[root@l1 mysql]# tar xf mysql-boost-5.7.44.tar.gz  //解压
[root@l1 mysql]# ls
mysql-5.7.44  mysql-boost-5.7.44.tar.gz
[root@l1 mysql]# cd mysql-5.7.44/
[root@l1 mysql-5.7.44]# ls
boost                extra                mysql-test        sql
BUILD                include              mysys             sql-common
client               INSTALL              mysys_ssl         storage
cmake                libbinlogevents      packaging         strings
CMakeLists.txt       libbinlogstandalone  plugin            support-files
config.h.cmake       libmysql             rapid             testclients
configure.cmake      libmysqld            README            unittest
dbug                 libservices          regex             VERSION
Docs                 LICENSE              scripts           vio
Doxyfile-perfschema  man                  source_downloads  win
[root@l1 mysql-5.7.44]# 

配置软件模块 

3.配置软件模块
tar zxvf mysql-5.7.17.tar.gz
tar zxvf boost_1_59_0.tar.gzcd /opt
mv boost_1_59_0 /usr/local/boost		#重命名cd /opt/mysql-5.7.17/
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \		#指定mysql的安装路径
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \ #指定mysql进程监听套接字文件(数据库连接文件)的存储路径
-DSYSCONFDIR=/etc \                             #指定配置文件的存储路径
-DSYSTEMD_PID_DIR=/usr/local/mysql \            #指定进程文件的存储路径
-DDEFAULT_CHARSET=utf8  \                       #指定默认使用的字符集编码,如 utf8
-DDEFAULT_COLLATION=utf8_general_ci \			#指定默认使用的字符集校对规则
-DWITH_EXTRA_CHARSETS=all \						#指定支持其他字符集编码
-DWITH_INNOBASE_STORAGE_ENGINE=1 \              #安装INNOBASE存储引擎
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \               #安装ARCHIVE存储引擎 
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \             #安装BLACKHOLE存储引擎 
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \            #安装FEDERATED存储引擎 
-DMYSQL_DATADIR=/usr/local/mysql/data \         #指定数据库文件的存储路径
-DWITH_BOOST=/usr/local/boost \          #指定boost的路径,若使用mysql-boost集成包安装则-DWITH_BOOST=boost
-DWITH_SYSTEMD=1								#生成便于systemctl管理的文件存储引擎选项:
MYISAM,MERGE,MEMORY,和CSV引擎是默认编译到服务器中,并不需要明确地安装。
静态编译一个存储引擎到服务器,使用-DWITH_engine_STORAGE_ENGINE= 1
可用的存储引擎值有:ARCHIVE, BLACKHOLE, EXAMPLE, FEDERATED, INNOBASE (InnoDB), PARTITION (partitioning support), 和PERFSCHEMA (Performance Schema)

[root@l1 mysql-5.7.44]# cmake \
> -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
> -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
> -DSYSCONFDIR=/etc \
> -DSYSTEMD_PID_DIR=/usr/local/mysql \
> -DDEFAULT_CHARSET=utf8  \
> -DDEFAULT_COLLATION=utf8_general_ci \
> -DWITH_EXTRA_CHARSETS=all \
> -DWITH_INNOBASE_STORAGE_ENGINE=1 \
> -DMYSQL_DATADIR=/usr/local/mysql/data \
> -DWITH_BOOST=boost \
> -DWITH_SYSTEMD=1
[root@l1 mysql-5.7.44]# make -j 2   //进行编译

[root@l1 mysql-5.7.44]# cd /usr/local/
[root@l1 local]# ls
bin  etc  games  httpd  include  lib  lib64  libexec  mysql  sbin  share  src
[root@l1 local]# useradd -M -s /bin/nologin mysql   //创建用户不创建家目录,指定类型
[root@l1 local]# 
[root@l1 local]# rpm -qa | grep mariadb
mariadb-libs-5.5.68-1.el7.x86_64
[root@l1 local]# yum remove -y mariadb*  //删除mariadb相关内容

 修改mysql 配置文件

[root@l1 local]# vim /etc/my.cnf   //修改mysql 配置文件

 

修改mysql 配置文件
vim /etc/my.cnf								#删除原配置项,再重新添加下面内容
[client]									#客户端设置
port = 3306
socket = /usr/local/mysql/mysql.sock			[mysql]										#服务端设置
port = 3306
socket = /usr/local/mysql/mysql.sock
auto-rehash									#开启自动补全功能[mysqld]									#服务全局设置
user = mysql       							#设置管理用户
basedir=/usr/local/mysql					#指定数据库的安装目录
datadir=/usr/local/mysql/data				#指定数据库文件的存储路径
port = 3306									#指定端口
character-set-server=utf8					#设置服务器字符集编码格式为utf8
pid-file = /usr/local/mysql/mysqld.pid		#指定pid 进程文件路径
socket=/usr/local/mysql/mysql.sock			#指定数据库连接文件
bind-address = 0.0.0.0						#设置监听地址,0.0.0.0代表允许所有,如允许多个IP需空格隔开
skip-name-resolve							#禁止域名解析,包括主机名,所以授权的时候要使用 IP 地址
max_connections=4096						#设置mysql的最大连接数
default-storage-engine=INNODB				#指定默认存储引擎
max_allowed_packet=32M						#设置在网络传输中一次消息传输量的最大值。系统默认值为 1MB,最大值是 1GB,必须设置 1024 的倍数。
server-id = 1								#指定服务ID号sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,PIPES_AS_CONCAT,ANSI_QUOTES
[root@l1 local]# ll !$  //修改mysql的归属
ll /etc/my.cnf
-rw-r--r--. 1 root root 625 5月  26 00:15 /etc/my.cnf
[root@l1 local]# ll
总用量 4
drwxr-xr-x.  2 root root 4096 5月  25 11:46 bin
drwxr-xr-x.  2 root root    6 4月  11 2018 etc
drwxr-xr-x.  2 root root    6 4月  11 2018 games
drwxr-xr-x. 15 root root  175 5月  24 16:54 httpd
drwxr-xr-x.  2 root root    6 4月  11 2018 include
drwxr-xr-x.  2 root root    6 4月  11 2018 lib
drwxr-xr-x.  2 root root    6 4月  11 2018 lib64
drwxr-xr-x.  2 root root    6 4月  11 2018 libexec
drwxr-xr-x. 11 root root  177 5月  26 00:07 mysql
drwxr-xr-x.  2 root root    6 4月  11 2018 sbin
drwxr-xr-x.  5 root root   49 4月  30 23:03 share
drwxr-xr-x.  2 root root    6 4月  11 2018 src
[root@l1 local]# 
[root@l1 local]# chown -R mysql:mysql mysql/
[root@l1 local]# ll
总用量 4
drwxr-xr-x.  2 root  root  4096 5月  25 11:46 bin
drwxr-xr-x.  2 root  root     6 4月  11 2018 etc
drwxr-xr-x.  2 root  root     6 4月  11 2018 games
drwxr-xr-x. 15 root  root   175 5月  24 16:54 httpd
drwxr-xr-x.  2 root  root     6 4月  11 2018 include
drwxr-xr-x.  2 root  root     6 4月  11 2018 lib
drwxr-xr-x.  2 root  root     6 4月  11 2018 lib64
drwxr-xr-x.  2 root  root     6 4月  11 2018 libexec
drwxr-xr-x. 11 mysql mysql  177 5月  26 00:07 mysql
drwxr-xr-x.  2 root  root     6 4月  11 2018 sbin
drwxr-xr-x.  5 root  root    49 4月  30 23:03 share
drwxr-xr-x.  2 root  root     6 4月  11 2018 src
[root@l1 local]# 

[root@l1 local]# chown mysql:mysql /etc/my.cnf
[root@l1 local]# ll !$
ll /etc/my.cnf
-rw-r--r--. 1 mysql mysql 625 5月  26 00:15 /etc/my.cnf
[root@l1 local]# 
[root@l1 local]# cd mysql/
[root@l1 mysql]# pwd
/usr/local/mysql
[root@l1 mysql]# ls
bin   include  LICENSE  mysql-test  README-test  support-files
docs  lib      man      README      share        usr
[root@l1 mysql]# ls bin/
innochecksum                mysql_config               mysqlslap
lz4_decompress              mysql_config_editor        mysql_ssl_rsa_setup
myisamchk                   mysqld                     mysqltest
myisam_ftdump               mysqld_pre_systemd         mysqltest_embedded
myisamlog                   mysqldump                  mysql_tzinfo_to_sql
myisampack                  mysqldumpslow              mysql_upgrade
my_print_defaults           mysql_embedded             mysqlxtest
mysql                       mysqlimport                perror
mysqladmin                  mysql_install_db           replace
mysqlbinlog                 mysql_plugin               resolveip
mysqlcheck                  mysqlpump                  resolve_stack_dump
mysql_client_test           mysql_secure_installation  zlib_decompress
mysql_client_test_embedded  mysqlshow
[root@l1 mysql]# 
[root@l1 mysql]# vim /etc/profile

[root@l1 mysql]# 
[root@l1 mysql]# source /etc/profile
[root@l1 mysql]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/mysql/bin
[root@l1 mysql]# 

 

 

初始化数据库

9.初始化数据库
cd /usr/local/mysql/bin/
./mysqld \
--initialize-insecure \				#生成初始化密码为空
--user=mysql \                      #指定管理用户
--basedir=/usr/local/mysql \        #指定数据库的安装目录
--datadir=/usr/local/mysql/data		#指定数据库文件的存储路径
[root@l1 mysql]# cd bin/
[root@l1 bin]# ls
innochecksum                mysql_config               mysqlslap
lz4_decompress              mysql_config_editor        mysql_ssl_rsa_setup
myisamchk                   mysqld                     mysqltest
myisam_ftdump               mysqld_pre_systemd         mysqltest_embedded
myisamlog                   mysqldump                  mysql_tzinfo_to_sql
myisampack                  mysqldumpslow              mysql_upgrade
my_print_defaults           mysql_embedded             mysqlxtest
mysql                       mysqlimport                perror
mysqladmin                  mysql_install_db           replace
mysqlbinlog                 mysql_plugin               resolveip
mysqlcheck                  mysqlpump                  resolve_stack_dump
mysql_client_test           mysql_secure_installation  zlib_decompress
mysql_client_test_embedded  mysqlshow
[root@l1 bin]# pwd
/usr/local/mysql/bin
[root@l1 bin]# cd /usr/local/mysql/
[root@l1 mysql]# ls
bin   include  LICENSE  mysql-test  README-test  support-files
docs  lib      man      README      share        usr
[root@l1 mysql]# cd usr/
[root@l1 usr]# ls
lib
[root@l1 usr]# cd lib/
[root@l1 lib]# ls
systemd  tmpfiles.d
[root@l1 lib]# cd systemd/
[root@l1 systemd]# ls
system
[root@l1 systemd]# cd system/
[root@l1 system]# pwd
/usr/local/mysql/usr/lib/systemd/system
[root@l1 system]# ls
mysqld.service  mysqld@.service
[root@l1 system]# 
[root@l1 system]# cp mysqld.service /usr/lib/systemd/system   //复制
[root@l1 system]# systemctl daemon-reload   //刷新识别
[root@l1 system]# systemctl start mysqld  //开启服务
[root@l1 system]# systemctl enable mysqld  //开机自启动
Created symlink from /etc/systemd/system/multi-user.target.wants/mysqld.service to /usr/lib/systemd/system/mysqld.service.
[root@l1 system]# [root@l1 system]# netstat -lntp | grep :3306  //查看端口
tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN      67762/mysqld        
[root@l1 system]# 
[root@l1 system]# mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.44 Source distributionCopyright (c) 2000, 2023, Oracle and/or its affiliates.Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> 

[root@l1 system]# mysqladmin -u root password "abc123"  //设置密码为abc123
mysqladmin: [Warning] Using a password on the command line interface can be insecure.
Warning: Since password will be sent to server in plain text, use ssl connection to ensure password safety.
mysqladmin: 
You cannot use 'password' command as mysqld runswith grant tables disabled (was started with --skip-grant-tables).
Use: "mysqladmin flush-privileges password '*'" instead
[root@l1 system]# 
[root@l1 system]# mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.7.44 Source distributionCopyright (c) 2000, 2023, Oracle and/or its affiliates.Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> 

 

安装PHP 

安装软件 

[root@l1 system]# yum -y install \
> gd \
> libjpeg libjpeg-devel \
> libpng libpng-devel \
> freetype freetype-devel \
> libxml2 libxml2-devel \
> zlib zlib-devel \
> curl curl-devel \
> openssl openssl-devel

 

[root@l1 system]# cd /opt/
[root@l1 opt]# ls
apache  mysql
[root@l1 opt]# mkdir php
[root@l1 opt]# cd php/
[root@l1 php]# ls

[root@l1 php]# rz -E
rz waiting to receive.
[root@l1 php]# ls
php-7.1.10.tar.bz2
[root@l1 php]# 

 

[root@l1 php]# tar xf php-7.1.10.tar.bz2   //解压
[root@l1 php]# ls
php-7.1.10  php-7.1.10.tar.bz2
[root@l1 php]# cd php-7.1.10/
[root@l1 php-7.1.10]# ls
acinclude.m4      makedist                      README.SELF-CONTAINED-EXTENSIONS
aclocal.m4        Makefile.frag                 README.STREAMS
appveyor          Makefile.gcov                 README.SUBMITTING_PATCH
build             Makefile.global               README.TESTING
buildconf         makerpm                       README.TESTING2
buildconf.bat     missing                       README.UNIX-BUILD-SYSTEM
CODING_STANDARDS  mkinstalldirs                 README.WIN32-BUILD-SYSTEM
config.guess      netware                       run-tests.php
config.sub        NEWS                          sapi
configure         pear                          scripts
configure.in      php7.spec.in                  server-tests-config.php
CONTRIBUTING.md   php.gif                       server-tests.php
CREDITS           php.ini-development           snapshot
ext               php.ini-production            stamp-h.in
EXTENSIONS        README.EXT_SKEL               stub.c
footer            README.GIT-RULES              tests
generated_lists   README.input_filter           travis
genfiles          README.MAILINGLIST_RULES      TSRM
header            README.md                     UPGRADING
INSTALL           README.namespaces             UPGRADING.INTERNALS
install-sh        README.NEW-OUTPUT-API         vcsclean
LICENSE           README.PARAMETER_PARSING_API  win32
ltmain.sh         README.REDIST.BINS            Zend
main              README.RELEASE_PROCESS
[root@l1 php-7.1.10]# 

配置软件模块

配置软件模块
cd /opt
tar xf php-7.1.10.tar.bz2
cd /opt/php-7.1.10/
./configure \
--prefix=/usr/local/php \							#指定将 PHP 程序的安装路径
--with-apxs2=/usr/local/httpd/bin/apxs \			#指定Apache httpd服务提供的apxs 模块支持程序的文件位置
--with-mysql-sock=/usr/local/mysql/mysql.sock \		#指定mysql 数据库连接文件的存储路径
--with-config-file-path=/usr/local/php/lib			#设置 PHP 的配置文件 php.ini 将要存放的位置
--with-mysqli \										#添加 MySQL 扩展支持,mysqli扩展技术不仅可以调用MySQL的存储过程、处理MySQL事务,而且还可以使访问数据库工作变得更加稳定
--with-zlib \										#支持zlib功能,提供数据压缩
--with-curl \										#开启curl扩展功能,实现HTTP的Get下载和Post请求的方法
--with-gd \											#激活gd 库的支持
--with-jpeg-dir \									#激活jpeg 的支持
--with-png-dir \									#激活png 的支持
--with-freetype-dir \
--with-openssl \
--enable-mbstring \									#启用多字节字符串功能,以便支持中文等代码
--enable-xml \										#开启扩展性标记语言模块
--enable-session \									#会话
--enable-ftp \										#文本传输协议
--enable-pdo \										#函数库
--enable-tokenizer \								#令牌解释器
--enable-zip										#ZIP压缩格式

 

[root@l1 php-7.1.10]# ./configure \
> --prefix=/usr/local/php \
> --with-apxs2=/usr/local/httpd/bin/apxs \
> --with-mysql-sock=/usr/local/mysql/mysql.sock \
> --with-config-file-path=/usr/local/php/lib \
> --with-mysqli \
> --with-zlib \
> --with-curl \
> --with-gd \
> --with-jpeg-dir \
> --with-png-dir \
> --with-freetype-dir \
> --with-openssl \
> --enable-mbstring \
> --enable-xml \
> --enable-session \
> --enable-ftp \
> --enable-pdo \
> --enable-tokenizer \
> --enable-zip

编译及安装 

 

[root@l1 php-7.1.10]# make install

 

[root@l1 php-7.1.10]# cd /usr/local/
[root@l1 local]# ls
bin  games  include  lib64    mysql  sbin   src
etc  httpd  lib      libexec  php    share
[root@l1 local]# cd php/
[root@l1 php]# ls
bin  etc  include  lib  php  var
[root@l1 php]# ls bin/
[root@l1 php]# ln -s /usr/local/php/bin/* /usr/local/bin/   //软链接

[root@l1 php]# cd /opt/
[root@l1 opt]# cd php/
[root@l1 php]# ls
php-7.1.10  php-7.1.10.tar.bz2
[root@l1 php]# 
[root@l1 php-7.1.10]# ls
acinclude.m4      LICENSE                   README.namespaces
aclocal.m4        ltmain.sh                 README.NEW-OUTPUT-API
appveyor          main                      README.PARAMETER_PARSING_API
build             makedist                  README.REDIST.BINS
buildconf         Makefile                  README.RELEASE_PROCESS
buildconf.bat     Makefile.frag             README.SELF-CONTAINED-EXTENSIONS
CODING_STANDARDS  Makefile.fragments        README.STREAMS
config.guess      Makefile.gcov             README.SUBMITTING_PATCH
config.log        Makefile.global           README.TESTING
config.nice       Makefile.objects          README.TESTING2
config.status     makerpm                   README.UNIX-BUILD-SYSTEM
config.sub        meta_ccld                 README.WIN32-BUILD-SYSTEM
configure         missing                   run-tests.php
configure.in      mkinstalldirs             sapi
CONTRIBUTING.md   modules                   scripts
CREDITS           netware                   server-tests-config.php
ext               NEWS                      server-tests.php
EXTENSIONS        pear                      snapshot
footer            php7.spec                 stamp-h.in
generated_lists   php7.spec.in              stub.c
genfiles          php.gif                   tests
header            php.ini-development       travis
include           php.ini-production        TSRM
INSTALL           README.EXT_SKEL           UPGRADING
install-sh        README.GIT-RULES          UPGRADING.INTERNALS
libphp7.la        README.input_filter       vcsclean
libs              README.MAILINGLIST_RULES  win32
libtool           README.md                 Zend
[root@l1 php-7.1.10]# 

 

[root@l1 php-7.1.10]# php --ini
Configuration File (php.ini) Path: /usr/local/php/lib
Loaded Configuration File:         (none)
Scan for additional .ini files in: (none)
Additional .ini files parsed:      (none)
[root@l1 php-7.1.10]# 
[root@l1 php-7.1.10]# cp php.ini-production /usr/local/php/lib/php.ini
[root@l1 php-7.1.10]# cd /usr/local/php/lib/
[root@l1 lib]# ls
php  php.ini
[root@l1 lib]# vim php.ini 

[root@l1 lib]# cd /usr/local/httpd/
[root@l1 httpd]# ls
bin    cgi-bin  error   icons    lib   man     modules
build  conf     htdocs  include  logs  manual
[root@l1 httpd]# cd conf/
[root@l1 conf]# ls
extra  httpd.conf  httpd.conf.bak  magic  mime.types  original
[root@l1 conf]# 
[root@l1 conf]# vim httpd.conf

 

[root@l1 conf]# systemctl restart httpd  //重启
[root@l1 conf]# ls
extra  httpd.conf  httpd.conf.bak  magic  mime.types  original
[root@l1 conf]# 
[root@l1 conf]# cd ..
[root@l1 httpd]# ls
bin    cgi-bin  error   icons    lib   man     modules
build  conf     htdocs  include  logs  manual
[root@l1 httpd]# cd htdocs/
[root@l1 htdocs]# ls
abc.html  index.html
[root@l1 htdocs]# 

 

[root@l1 htdocs]# vim index.php

 

LAMP架构应用实例

[root@l1 conf]# cd /opt/
[root@l1 opt]# ls
apache  mysql  php
[root@l1 opt]# rz -E  //传文件
rz waiting to receive.
[root@l1 opt]# ls
apache  Discuz_X3.4_SC_UTF8.zip  mysql  php  wordpress-4.9.4-zh_CN.tar.gz
[root@l1 opt]# 

[root@l1 opt]# unzip Discuz_X3.4_SC_UTF8.zip  //解压
[root@l1 opt]# ls
apache       Discuz_X3.4_SC_UTF8.zip  php                           说明.htm
dir_SC_UTF8  mysql                    wordpress-4.9.4-zh_CN.tar.gz[root@l1 opt]# cd dir_SC_UTF8/
[root@l1 dir_SC_UTF8]# ls
readme  upload  utility
[root@l1 dir_SC_UTF8]# 
[root@l1 dir_SC_UTF8]# 

 

[root@l1 dir_SC_UTF8]# ls upload/
admin.php  connect.php      group.php  member.php  search.php  uc_server
api        crossdomain.xml  home.php   misc.php    source
api.php    data             index.php  plugin.php  static
archiver   favicon.ico      install    portal.php  template
config     forum.php        m          robots.txt  uc_client
[root@l1 dir_SC_UTF8]# ls
readme  upload  utility
[root@l1 dir_SC_UTF8]# cp -a upload/ /usr/local/httpd/htdocs/discuz
[root@l1 dir_SC_UTF8]# cd /usr/local/httpd/htdocs/
[root@l1 htdocs]# ls
abc.html  discuz  index.html  index.php
[root@l1 htdocs]# mysql -u root -pabc123
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.00 sec)mysql> create database discuz;
Query OK, 1 row affected (0.00 sec)mysql> 
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| discuz             |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
5 rows in set (0.00 sec)

 ​​​​​​​

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/331667.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

sqlserver的查询(三)

目录 10. group by(分组) 11. having(对分组后的信息过滤) 可能从这里开始&#xff0c;执行顺序越来越显得重要了&#xff01;&#xff01;&#xff01; 10. group by(分组) 这个查询相比前面会有一些困难&#xff1b; 格式&#xff1a;group by 字段的集合&#xff1b; 功…

Maven多环境打包配置

一、启动时指定环境配置文件 在启动springboot应用的jar包时&#xff0c;我们可以指定配置文件&#xff0c;通常把配置文件上传到linux服务器对应jar包的同级目录&#xff0c;或者统一的配置文件存放目录 java -jar your-app.jar --spring.config.location/opt/softs/applicat…

NodeJS安装并生成Vue脚手架(保姆级)

文章目录 NodeJS下载配置环境变量Vue脚手架生成Vue脚手架创建项目Vue项目绑定git 更多相关内容可查看 NodeJS下载 下载地址&#xff1a;https://nodejs.org/en 下载的速度应该很快&#xff0c;下载完可以无脑安装&#xff0c;以下记得勾选即可 注意要记住自己的安装路径&…

Linux--线程的认识(一)

线程的概念 线程&#xff08;Thread&#xff09;是操作系统中进行程序执行的最小单位&#xff0c;也是程序调度和分派的基本单位。它通常被包含在进程之中&#xff0c;是进程中的实际运作单位。一个线程指的是进程中一个单一顺序的控制流&#xff0c;一个进程中可以并发多个线…

Redis内存回收-内存淘汰策略

LFU的访问次数之所以叫做逻辑访问次数&#xff0c;是因为并不是每次key被访问都计数&#xff0c;而是通过运算&#xff1a; 生成0~1之间的随机数R计算 (旧次数 * lfu_log_factor 1)&#xff0c;记录为P如果 R < P &#xff0c;则计数器 1&#xff0c;且最大不超过255访问…

二叉树详解

目录 一、二叉树的实现 1.1 二叉树的前序遍历 1.2 二叉树的中序遍历 1.3 二叉树的后续遍历 1.4 二叉树的节点个数 1.5 二叉树叶子节点个数 1.6 二叉树查找值为x的节点 1.7 二叉树第k层节点个数 1.8 二叉树的高度 1.9 二叉树的销毁 二、代码展示 BTNode.h BTNode.c 最后 一…

skynet.newservice简介:服务的启动

skynet是一个轻量级的游戏服务器框架。 简介 在skynet的体系中&#xff0c;服务是一个基础概念。通常&#xff0c;我们使用skynet.newservice来启动一个snlua服务。 那么&#xff0c;当我们写下local addr skynet.newservice("test")这行代码时&#xff0c;系统是怎…

【Java Web】前端利用 form 表单传多项数据,后端 Servlet 取出的各项数据均为空

前端利用 form 表单传多项数据&#xff0c;后端 Servlet 取出的各项数据均为空 文章目录 1.问题引入2.问题解决 1.问题引入 最近在写一个 java web 项目时&#xff0c;遇到一个让我头疼了一下午的问题&#xff1a;前端通过 post 提交的 form 表单数据可以传到后端&#xff0c…

Windows远程连接命令?

Windows操作系统提供了多种远程连接命令&#xff0c;使用户可以通过网络连接到远程计算机&#xff0c;并在远程操作系统上执行操作。远程连接命令可方便实现远程工作、故障排查和系统维护等任务。本文将介绍几种常见的Windows远程连接命令及其基本使用方法。 远程连接命令 Win…

心链2---前端开发(整合路由,搜索页面,用户信息页开发)

心链——伙伴匹配系统 接口调试 说书人&#x1f4d6;&#xff1a;上回书说到用了两种方法查询标签1.SQL查询&#xff0c;2.内存查询&#xff1b;两种查询效率是部分上下&#xff0c;打的是难解难分&#xff0c;是时大地皴裂&#xff0c;天色聚变&#xff0c;老祖斟酌再三最后决…

仪器校准中移液器的使用规范,应当注意哪些细节?

校准行业中&#xff0c;移液器的使用是非常多的&#xff0c;尤其是理化室&#xff0c;经常需要借助到移液器来校准。作为常规的溶液定量转移器具&#xff0c;其在校准过程中的使用也需要遵守规范&#xff0c;既是保证校准结果准确低误差&#xff0c;也是为了规范实验室校准人员…

2024.5.25晚训题解

这套题挺简单的。。。 A题 AC率差不多100% B题 AC率差不多75% C题 AC率也差不多75% D题 AC率 50% E题 AC率 25% 向着top 1%出发 A题题解 Stair, Peak, or Neither? 简单判断题&#xff0c;自己写 #include<bits/stdc.h> using namespace std; int A[5]; int main() {…

llama-factory学习个人记录

框架、模型、数据集准备 1.llama-factory部署 # 克隆仓库 git clone https://github.com/hiyouga/LLaMA-Factory.git # 创建虚拟环境 conda create --name llama_factory python3.10 # 激活虚拟环境 conda activate llama_factory # 安装依赖 cd LLaMA-Factory pip install -…

线性回归模型

目录 1.概述 2.线性回归模型的定义 3.线性回归模型的优缺点 4.线性回归模型的应用场景 5.线性回归模型的未来展望 6.小结 1.概述 线性回归是一种广泛应用于统计学和机器学习的技术&#xff0c;用于研究两个或多个变量之间的线性关系。在本文中&#xff0c;我们将深入探讨…

会声会影调速怎么用 会声会影如何调整音频速度

会声会影是一款功能强大的视频编辑软件&#xff0c;可以帮助我们轻松的实现剪辑。 会声会影的操作简单易懂&#xff0c;界面简洁明快。适合家庭使用&#xff0c; 我们使用会声会影可以在家就能将视频剪辑成好莱坞大片。但是在使用的过程中&#xff0c;仍然会遇到一些操作上的问…

微信小程序预览图片和H5使用canvas实现图片+蒙层+文字

1、效果 2.H5实现 <!--* Author: limingfang* Date: 2024-05-20 10:26:51* LastEditors: limingfang* LastEditTime: 2024-05-21 16:31:11* Description: --> <!DOCTYPE html> <html lang"en"> <head> <meta charset"UTF-8&q…

【小程序 按钮 表单 】

按钮 代码演示 xxx.wxml <view class"boss" hover-class"box"hover-start-time"2000"hover-stay-time"5000">测试文本<view hover-stop-propagation"true">子集</view><view>子集2</view>…

Capture One Studio for Mac:打造完美影像的利器

对于摄影师而言&#xff0c;每一次按下快门都是一次对完美影像的追求。而Capture One Studio for Mac正是这样一款能够帮助你实现这一追求的利器。 Capture One Studio for Mac v16.4.2.1中文直装版下载 首先&#xff0c;Capture One Studio for Mac拥有出色的图像处理能力。它…

Java—二分查找

介绍 二分查找&#xff08;Binary Search&#xff09;是一种在有序数组中查找特定元素的搜索算法。其基本思想是将目标值与数组中间的元素进行比较&#xff1a; 如果目标值等于中间元素&#xff0c;则查找成功。如果目标值小于中间元素&#xff0c;则在数组左半部分继续进行二…

2024年汉字小达人活动4个多月开赛:18道历年选择题和答案、解析

根据近年的安排&#xff0c;2024年第11届汉字小达人比赛还有4个多月就启动&#xff0c;那么孩子们如何利用这段时间有条不紊地备考呢&#xff1f;我的建议是两手准备&#xff1a;①把小学1-5年级的语文课本上的知识点熟悉&#xff0c;重点是字、词、成语、古诗。②把历年真题刷…