centos 7 搭建 lnmp笔记

本文详细介绍了如何在CentOS 7上一步步搭建LNMP(Nginx, MySQL, PHP)环境。从安装环境依赖包开始,包括Nginx的编译安装、启动和自启动配置,接着是MySQL的安装、初始化密码设置以及远程连接配置,最后是PHP的下载、解压、配置及PHP-FPM的启动。每个步骤都提供了关键命令和注意事项,确保读者能够成功完成LNMP环境的搭建。" 111028697,5852452,解决AFL QEMU安装中的gettid和SIOCGSTAMPNS报错,"['模糊测试', 'afl-qemu', '系统调用', '补丁应用']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、搭建 nginx 服务

1.下载环境依赖包

  • 建议root模式执行~
yum -y install gcc gcc-c++ pcre-devel zlib-devel make

2.现在nginx安装包

  • 回到根目录,创建文件夹opt,如果自己有文件夹就不用管
cd
cd ..
cd .. 
mkdir opt
wget http://nginx.org/download/nginx-1.22.1.tar.gz
  • 下载完成后,解压文件
tar -xvf nginx-1.22.1.tar.gz
  • 改个名字吧,你可以跳过这一步
mv nginx-1.22.1 nginx
  • 进入nginx文件夹
cd nginx
  • 执行命令:

注意你的安装位置

./configure --prefix=/usr/local/nginx --conf-path=/opt/nginx/conf/nginx.conf

yum -y install gcc gcc-c++ autoconf automake make

yum install -y pcre pcre-devel

yum install -y zlib zlib-devel

yum -y install pcre  pcre-devel zlib  zlib-devel openssl openssl-devel
  • 开始安装
./configure --with-stream
  • 安装完成之后编译
make
  • 安装编译后的文件
make install

3.安装nginx源

curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
  • 安装常用软件源
yum -y install epel-release
  • 安装modules模块
yum -y install nginx-all-modules.noarch

3.启动nginx

-默认安装在/usr/local/nginx里。

进入sbin文件夹中 执行./nginx启动nginx。

-至此nginx的安装就结束了,浏览器输入IP:端口号查看是否可以进入nginx主界面,进入则成功。

  • 进入nginx文件下
cd
cd /usr/local/nginx
  • 创建文件夹
mkdir logs
  • 创建文件
touch error.log
  • 生成nginx.pid文件
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

4.重新启动 nginx

/usr/local/nginx/sbin/nginx -s reload
  • 查看nginx是否启动
ps -ef | grep nginx
  • 成功案例:

案例

5.关闭防火墙

systemctl stop firewalld

6.启动nginx服务

默认安装在/usr/local/nginx里。

进入sbin文件夹中 执行./nginx 来启动nginx服务。

cd /usr/local/nginx/sbin
./nginx

开启服务

  • 至此nginx的安装就结束了。

  • 浏览器输入IP:端口号查看是否可以进入nginx主界面,进入则成功。

成功

  • 如果关机服务器,重新启动只需关闭防火墙和启动nginx的服务即可。

7.自启动

  • 直接编辑vim /etc/rc.local文件
vim /etc/rc.local
  • 在文件内容最底下添加启动命令:
/usr/local/nginx/sbin/nginx

7.其他

注意nginx默认端口号是80.需要提前去阿里云安全组中开放端口。同时把本机的防火墙关闭。

如果想要修改端口号可以去conf下的nginx.conf中修改

修改完成后去sbin文件夹中执行 ./nginx -s reload 重启nginx

端口

二、搭建 mysql 服务

1.安装mysql环境依赖包

wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.27-linux-glibc2.12-x86_64.tar.gz
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.40-linux-glibc2.12-x86_64.tar.gz

2.解压mysql安装包

tar -xvf mysql-5.7.40-linux-glibc2.12-x86_64.tar.gz
  • 换名
mv mysql-5.7.40-linux-glibc2.12-x86_64 mysql
  • ​ 在 /usr/local/mysql目录下创建data目录
mkdir /usr/local/mysql/data
  • 创建mysql用户组和用户

    cat /etc/group | grep mysql
    cat /etc/passwd |grep mysql
    groupadd mysql
    useradd -r -g mysql mysql
    
  • 更改mysql目录下所有的目录及文件夹所属的用户组和用户,以及权限

    chown -R mysql:mysql /usr/local/mysql
    chmod -R 755 /usr/local/mysql
    
    

3.初始密码查询

  • 编译安装并初始化mysql,务必记住初始化输出日志末尾的密码(数据库管理员临时密码)
cd /usr/local/mysql/bin
./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql

一定复制好初始密码!
一定复制好初始密码!
一定复制好初始密码!

  • 编辑配置文件my.cnf,添加配置如下(这里和转的不一样,转的直接使用不行)
vim /etc/my.cnf
[mysqld]
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
socket = /usr/local/mysql/mysql.sock
character-set-server=utf8
port = 3306
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[client]
socket = /usr/local/mysql/mysql.sock
default-character-set=utf8

4.启动服务器

/usr/local/mysql/support-files/mysql.server start
  • 添加软连接,并重启mysql服务
ln -s /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
  • 启动服务
service mysql restart

5.登录mysql

修改密码(密码为步骤4生成的临时密码)

mysql -u root -p
然后输入刚刚的初始密码!
  • 修改默认密码
SET PASSWORD = PASSWORD('123456');
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
FLUSH PRIVILEGES;
  • 退出mysql,然后使用新密码登录
exit

6. 开放远程连接

mysql>use mysql;

msyql>update user set user.Host='%' where user.User='root';

mysql>flush privileges;

7.设置开机自动启动

  • 将服务文件拷贝到init.d下,并重命名为mysql
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
  • 赋予可执行权限
chmod +x /etc/init.d/mysqld
  • 添加服务
chkconfig --add mysqld
  • 显示服务列表
chkconfig --list

备注说明: 如果忘记了Mysql密码
1、停掉mysql服务 service mysql stop

2、修改/etc/my.cnf 文件,增加 skip-grant-tables ,作用是登陆是跳开密码校验

3、登陆 mysql -u root

4、修改密码 依次执行以下操作

use mysql
update mysql.user set authentication_string=password(‘123456’) where
user=‘root’;
flush privileges;

5、 重启mysql服务

service mysql restart

8.查看端口

netstat -tunlp | grep mysql

9.尝试连接

测试

  • mysql安装完毕

三、博主学到了这里,稍后更新

<think>嗯,用户想了解Excel中的VLOOKUP函数的用法和参数含义。首先,我需要回忆一下VLOOKUP的基本结构。VLOOKUP是垂直查找函数,用于在表格的首列查找指定的值,然后返回该行中指定列的数据。它的四个参数分别是查找值、表格范围、列索引号和匹配模式。 接下来,我得确认每个参数的具体作用。第一个参数是lookup_value,也就是用户要查找的值,比如产品ID或者姓名。第二个参数是table_array,即查找的范围,这里要注意的是,查找值必须位于这个范围的第一列,否则函数无法正确工作。第三个参数是col_index_num,也就是用户想要返回的数据在表格范围中的第几列,这个列数是从表格范围的第一列开始算起的,不是整个工作表的列。第四个参数是range_lookup,决定是精确匹配还是近似匹配,通常用FALSE或0来指定精确匹配,避免错误。 然后,用户可能需要一个具体的例子来理解如何使用。比如,假设有一个产品价格表,用户想根据产品ID查找对应的价格。这时候,VLOOKUP就可以在ID列查找,然后返回价格列的数据。同时,要提醒用户注意表格范围最好使用绝对引用,比如$A$2:$C$100,这样在拖动公式时范围不会变化。 可能遇到的问题也需要考虑。比如,如果查找值不在表格的第一列,或者列索引号超过了表格的列数,函数会返回错误。此外,数据格式不一致也可能导致问题,比如查找值是数字,而表格中是文本格式的数字,这时候需要统一格式。还有,当出现#N/A错误时,可能是查找值不存在,或者匹配模式设置不正确,需要检查参数是否正确。 用户可能还会问到如何避免常见的错误,比如部分数据匹配出错的情况。这时候需要检查是否有多余的空格,或者数据格式不一致,或者表格范围没有锁定导致拖动时偏移。此外,XLOOKUP作为VLOOKUP的升级版,可能在某些情况下更方便,比如可以向左查找或者返回多列数据,这也是可以提及的内容。 最后,整理步骤,从基础语法到参数说明,再到具体案例,逐步引导用户理解如何使用VLOOKUP函数。同时,提供常见错误和解决方法,帮助用户在实际应用中避免问题。如果有必要,还可以比较VLOOKUP和其他查找函数的区别,比如HLOOKUP或XLOOKUP,但根据用户的问题,主要集中在VLOOKUP本身即可。</think>### Excel VLOOKUP函数详解 #### 一、基础语法与参数说明 VLOOKUP函数的语法为: $$=VLOOKUP(lookup\_value, table\_array, col\_index\_num, [range\_lookup])$$ 包含4个参数: 1. **lookup_value**(必填):要查找的值(如单元格引用或具体值) 2. **table_array**(必填):包含数据的表格范围(必须包含查找列和返回列) 3. **col_index_num**(必填):返回值所在列的序号(从table_array第一列开始计数) 4. **range_lookup**(可选):匹配类型 - `TRUE`/`1`:近似匹配(默认值,需数据升序排列) - `FALSE`/`0`:精确匹配(常用选项) [^1][^2] #### 二、使用步骤演示(工资表查询案例) 假设需要根据员工编号查询工资: 1. 建立查询单元格(如`B12`) 2. 输入公式: ```excel =VLOOKUP(A12, $A$2:$D$100, 4, 0) ``` - `A12`:待查询的员工编号 - `$A$2:$D$100`:锁定数据区域(绝对引用) - `4`:返回第4列(工资列) - `0`:精确匹配 [^2][^3] #### 三、常见错误与解决方法 | 错误现象 | 原因 | 解决方案 | |---------|------|---------| | #N/A | 查找值不存在 | 检查数据源或改用`IFERROR`容错 | | #REF! | 列序号超出范围 | 确认col_index_num ≤ 表格列数 | | 部分匹配失败 | 数据格式不一致 | 统一数值/文本格式 | | 结果错位 | 表格未锁定 | 使用`$`符号固定区域引用 | [^3][^4] #### 四、进阶技巧 1. **多条件查询**: 使用辅助列合并多个条件字段 ```excel =VLOOKUP(A2&B2, $D$2:$F$100, 3, 0) ``` 2. **通配符匹配**: `"*"`匹配任意字符,`"?"`匹配单个字符 ```excel =VLOOKUP("张*", $A$2:$C$100, 3, 0) ``` 3. **跨表查询**: 引用其他工作表数据 ```excel =VLOOKUP(A2, Sheet2!$A$2:$D$100, 4, 0) ``` [^1][^4]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值