Ubuntu 22.04 LTS 安装lnmp
Ubuntu 22.04 LTS 安装最新稳定版本nginx、mysql5.7和php7.2
全部apt-get安装,就是快,迅速。前提是需要在有网络环境的情况下哈!!
操作系统版本:Ubuntu 22.04 LTS

一、安装最新稳定版本的nginx
apt-get update
# 查看默认安装的nginx版本(默认为1.18。有点老,我们安装最新稳定版本)
apt-cache policy nginx
# 修改apt源,在最后添加(:wq保存退出)
vim /etc/apt/sources.list
# NGINX
deb http://nginx.org/packages/ubuntu jammy nginx
deb-src http://nginx.org/packages/ubuntu jammy nginx
# 导入nginx公钥
wget https://nginx.org/keys/nginx_signing.key
apt-key add nginx_signing.key
# 更新apt源
apt-get update
# 再次查看默认的nginx版本(第一个已经是最新稳定的nginx版本)
apt-cache policy nginx
# 安装nginx
apt-get install nginx
# 查看nginx版本加入开机启动
nginx -V
systemctl enable nginx
systemctl is-enabled nginx






至此ningx安装完成
二、安装mysql5.7版本
可以参考:https://www.cnblogs.com/wltian-one/p/17767082.html
基本是一样的。
# 查看系统默认安装的数据库版本(ubuntu 22.04自带的版本是8.0.35,而我们需要安装mysql5.7的版本就需要换源)
apt-cache policy mysql-server
# 备份原来的sorce文件
cp /etc/apt/sources.list /etc/apt/sources.list_back
# (dG全部删除)
vim /etc/apt/sources.list
# 阿里源
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
# 导入mysql公钥
gpg --keyserver keyserver.ubuntu.com --recv 3B4FE6ACC0B21F32
gpg --export --armor 3B4FE6ACC0B21F32 | apt-key add -
# 更新
apt-get update
# 再次查看默认mysql版本
apt-cache policy mysql-server
# 安装mysql
apt-get install mysql-server-5.7
# 查看mysql是否安装成功
dpkg -l | grep mysql
# 设置开机自启
systemctl enable mysql
systemctl is-enabled mysql
# 修改mysql密码(直接输入mysql,此时不需要输入密码)
mysql
msyql>use mysql;
mysql> alter user root@'localhost' identified with mysql_native_password by "12345678";
mysql> flush privileges;
mysql> exit
# 把镜像源重新换回
rm -f /etc/apt/sources.list
mv /etc/apt/sources.list_back /etc/apt/sources.list
apt-get update
退出后重新进入就需要输入密码了!





三、修改mysql数据库数据存储位置(按照实际需求来,可选)
1、先停止mysql服务
systemctl stop mysql
2、创建新的数据存储目录
mkdir /home/mysql
cp -ar /var/lib/mysql/* /home/mysql
chown -R mysql:mysql /home/mysql

3、修改mysql配置文件
# 先备份一份
cp -a /etc/mysql/mysql.conf.d/mysqld.cnf /etc/mysql/mysql.conf.d/mysqld.cnf_back
vim /etc/mysql/mysql.conf.d/mysqld.cnf
datadir = /home/mysql

注意:只是修改MySQL的配置文件是不行的,因为Ubuntu有访问控制系统apparmor,所以还需要修改与该访问控制系统相关的文件
4、修改安全保护文件
cp -a /etc/apparmor.d/usr.sbin.mysqld /etc/apparmor.d/usr.sbin.mysqld_back
vim /etc/apparmor.d/usr.sbin.mysqld
把带有/var/lib/mysql
/var/lib/mysql/ r,
/var/lib/mysql/** rwk,
改成
/home/mysql/ r,
/home/mysql/** rwk,

5、修改访问控制文件
cp -a /etc/apparmor.d/abstractions/mysql /etc/apparmor.d/abstractions/mysql_back
vim /etc/apparmor.d/abstractions/mysql
/var/lib/mysql{,d}/mysql{,d}.sock rw,
改成
/home/mysql{,d}/mysql{,d}.sock rw,
vim /etc/apparmor.d/tunables/alias
#最后添加
alias /var/lib/mysql/ -> /home/mysql/,

6、重启apparmor服务
systemctl restart apparmor
7、开启数据库
systemctl start mysql
8、查看数据库的状态
systemctl status mysql

至此mysql数据库安装完成
四、安装php7.2
1、安装 SURY APT 存储库
# 查看默认安装的php
apt-cache policy php

# 要在 Ubuntu 22.04 上安装 PHP 7.1/7.2/7.3/7.4,您需要安装 SURY,即提供 PHP 包的第三方存储库。
apt-get -y install software-properties-common
add-apt-repository ppa:ondrej/php --yes
apt-get update
# 查看
apt list|grep php7.2-*

2、安装php7.2
apt-get -y install php7.2
下载了php7.2会自动下载apache2,这时候需要我们删除apache2
# 查看apache2
dpkg -l |grep apache2
# 删除
apt-get autoremove apache2
apt-get autoremove apache2-bin
find /etc -name "*apache*" |xargs rm -rf
rm -rf /var/www
rm -rf /etc/libapache2-mod-jk
rm -rf /etc/init.d/apache2
rm -rf /etc/apache2
# 删除关联
dpkg -l |grep apache2|awk '{print $2}'|xargs dpkg -P
# 再次查看apache2
dpkg -l |grep apache2
# 安装扩展(安装自己的需求)
apt-get install php7.2-curl php7.2-dev php7.2-gd php7.2-mysql php7.2-xml php7.2-xdebug php7.2-redis php7.2-apcu php7.2-intl php7.2-memcached
# 查看
php -v
php -m
dpkg -l | grep php7.2*
# 开机自启
systemctl enable php7.2-fpm


至此php7.2安装成功
四、nginx调用php7.2
location ~ \.php$ {
fastcgi_pass unix:/run/php/php7.2-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
Ubuntu 22.04 LTS 安装lnmp的更多相关文章
- Ubuntu 22.04 LTS 安装 0.A.D 实时策略游戏 并汉化
众所周知,Linux生态中,能玩的正儿八经的大型游戏其实没几个,而 0.A.D 这个游戏就是这其中之一.这是一个类似于帝国时代的实时策略游戏,开源跨平台,这是其官方网站:https://play0ad ...
- Ubuntu 16.04 LTS 安装 Nginx/PHP 5.6/MySQL 5.7 (LNMP) 与Laravel
Ubuntu 16.04 LTS 安装 Nginx/PHP 5.6/MySQL 5.7 (LNMP) 与Laravel 1.MySQL安装[安装 MariaDB]MariaDB是MySQL的一个分支首 ...
- Ubuntu 16.04 LTS安装 TeamViewer
Ubuntu 16.04 LTS安装 TeamViewer 64位Ubuntu 16.04系统需要添加32位架构支持,命令如下. sudo dpkg --add-architecture i3 ...
- Ubuntu 16.04 LTS 安装 miniconda
Ubuntu 16.04 LTS 安装 miniconda 下载 miniocnda 的 bash 文件下载链接 https://conda.io/miniconda.html ,我选择的是 64-b ...
- ubuntu 14.04 lts安装教程:u盘安装ubuntu 14.04 lts步骤
绿茶小编带来了ubuntu 14.04 lts安装教程,下文详细讲解了u盘安装ubuntu 14.04 lts的步骤,很简单,只需要一个工具就能够轻松使用u盘安装ubuntukylin 14.04系统 ...
- 转:ubuntu 18.04 LTS 安装 java10(JDK) 及问题说明
原文地址:ubuntu 18.04 LTS 安装 java10 及问题说明 1.下载相应的安装包,例如jdk-10.0.1_linux-x64_bin.tar.gz.下载地址: http://www. ...
- (转)Ubuntu 12.04 LTS安装VMware Tools实现linux和window 互相复制:无法找到kernel header path的问题
Ubuntu 12.04 LTS安装VMware Tools无法找到kernel header path的问题 ubuntuvmware Ubuntu 12.04 安装 VMware Tools, ...
- Ubuntu 14.04 LTS 安装和配置Bochs
Ubuntu 14.04 LTS 安装和配置Bochs 系统是:Ubuntu 14.04 LTS 64位 安装的是:bochs-2.6.8 Bochs 需要在 X11 环境下运行,因此你的 ...
- Ubuntu 14.04 LTS 安装Docker
Docker官方是有很详细的安装文档(https://docs.docker.com/engine/installation/ubuntulinux/),这里做了一个Ubuntu 14.04 LTS中 ...
- Ubuntu 16.04 LTS安装好需要设置的15件事(喜欢新版本)
看到这篇文章说明你已经从老版本升级到 Ubuntu 16.04 或进行了全新安装,在安装好 Ubuntu 16.04 LTS 之后建议大家先做如下 15 件事.无论你是刚加入 Ubuntu 行列的新用 ...
随机推荐
- AI绘画:StableDiffusion炼丹Lora攻略-实战萌宠图片生成
写在前面的话 近期在小红书发现了许多极其可爱.美观的萌宠图片,对这些美妙的图像深深着迷 于是想着看看利用AI绘画StableDiffusion以下简称(SD)做出来. 以下是详细实操的全过程,包括所有 ...
- ORM分组查询复杂查询
记录一下自己在工作中遇到的一个问题,就是根据一个字段分类,然后还要统计这个字段不同状态的数量,这里我举个例子 假如有好多学生,这些学生来自不同的班级,现在我们要统计每一个班级中男生和女生的数量 def ...
- [Mysql] 存储过程简单理解
什么是存储过程 简单的说, 就是一组SQL语句集, 功能强大, 可以实现一些比较复杂的逻辑功能. 其实就和编程语言的面向过程函数一样. ps: 存储过程与触发器类似, 但存储过程是主动调用, 触发器是 ...
- 代码检视的新姿势!在IDEA中得到沉浸式Code Review新体验
大家好,好久不见,又见面了. 在消失的这段时间里,我做了件大事,见证了儿子的出生并陪伴其一天天的成长.停止更文的200多天里,还能得到小伙伴们持续的支持,让我备受鼓励.对一个技术人员而言,分享技术观点 ...
- Fetch设置超时请求
promise + fetch + AbortController + setTimeOut 这是一段正常的fetch请求 fetch('www.baidu.com',{}) .then(res=&g ...
- Web组态可视化软件之BY组态可视化平台介绍
Web组态可视化软件之BY组态可视化平台介绍 关于组态软件,首先要从组态的概念开始说起. 什么是组态 组态(Configure)的概念来自于20世纪70年代中期出现的第一代集散控制系统(Distrib ...
- Solution -「营业」「ABC 170D」Not Divisible
Description Link. 给出一个长度为 \(n\) 的序列 \(a\),求 \(\sum_{i=1}^{n}[\forall j\in[1,i)\cup(i,n],a_{j}\nmid a ...
- Note -「网络流 flows」
基本没有严谨证明. Part. 1 概念 Part. 1-1 流网络 流网络是一个有向图(不考虑反向边),我们把这个图记为 \(G=(V,E)\). 其中有两个特殊的点 \(s,t\),分别成为源点和 ...
- 慢SQL原因分析之索引失效
现象 最近收到一个慢sql工单,慢sql大概是这样:"select xxx from tabel where type = 1". 咦,type字段明明有索引啊,为啥是慢sql呢? ...
- 栈溢出-GOT表劫持测试
1.目标程序源代码 char name[64]; int main(){ int unsigned long long addr; setvbuf(stdin,0,2,0); setvbuf(stdo ...