使用CentOS8实现Nginx负载均衡反向代理与安装MySQL数据库(涉及CentOS8、Nginx、MySQL、Flask)

news2025/6/11 8:31:48

文章目录

  • 1. 安装并配置CentOS8虚拟机
    • 1.1 安装
    • 1.2 设置静态IP(看需求不一定要设置)
    • 1.3 开启SSH\开启关闭端口\关闭开启防火墙
    • 1.4 虚拟机与本机互相复制粘贴、传输文件
  • 2. 如何在CentOS 8安装Python
  • 3. 解决错误:为 repo 'appstream' 下载元数据失败
  • 4. 安装Nginx
    • 4.1 [关于OpenResty](https://openresty.org/cn/)
    • 4.2 [在 CentOS 8 上通过 dnf 安装 OpenResty](https://blog.openresty.com.cn/cn/centos8-or-install/)
      • 1) 安装标准的 wget 包
      • 2) 使用 wget 下载 openresty.repo 文件
      • 3) 把这个文件移到 yum 仓库的配置目录中
      • 4) 更新 yum 索引数据库
      • 5) 安装主 RPM 包,openresty
      • 6) 检查 openresty 可执行文件是否可用
      • 7) 检查其版本
      • 8) 启动默认的 openresty 服务器
      • 9) 检查 nginx 进程是否启动并运行
      • 10) 测试默认主页
    • 4.3 CentOS 8 启动、停止、重启、检错Nginx命令
    • 4.4 必看Nginx入门视频
  • 5. CentOS8安装MySQL8.0.22
    • 5.1 首先用Termius远程连接到CentOS8服务器
    • 5.2 卸载之前安装过的MySQL
    • 5.3 卸载完成后,使用以下命令
    • 5.4 检查数据源
    • 5.5 禁用CentOS8自带mysql模块
    • 5.6 安装mysql命令
    • 5.7 启动mysql
    • 5.8 显示mysql的随机密码
    • 5.7 登录并修改mysql密码
    • 5.8 在CentOS 8中开放MySQL 8.0.22的远程访问
    • 5.9 重启mysql数据库
    • 5.10 补充: [MySQL查看或显示数据库(SHOW DATABASES语句)](http://c.biancheng.net/view/2419.html)
    • 5.11 在本机(macbook)上使用Navicat远程连接CentOS8 MySQL数据库
  • 6. 实战使用Nginx实现负载均衡反向代理
    • 6.1 简述
    • 6.2 在Navicat中运行sql文件
    • 6.3 采用测试的两个Flask网站
      • 6.3.1 网站1
      • 6.3.2 网站2
    • 6.3 在Nginx中配置上面两个网站的负载均衡和反向代理

此文章使用的主机为MacBook M1芯片

推荐一个很好的nginx反向代理与负载均衡教程,建议观看完这个视频再阅读下面的配置文章: https://www.bilibili.com/video/BV1Bx411Z7Do

1. 安装并配置CentOS8虚拟机

CentOS8虚拟机镜像 链接: https://pan.baidu.com/s/1l4_2mcg-BES95E2IsabGGg?pwd=p9ye 提取码: p9ye

1.1 安装

1)打开VMware Fushion,点击新建虚拟机,并将镜像拖入弹出框内,点击“继续”:
在这里插入图片描述
选择任意一个操作系统即可,镜像内部已经设置过了:
请添加图片描述
2)可点击“自定设置”给虚拟机修改名称,也可以直接点击“完成”:请添加图片描述
3)点击中间的“播放”按钮,启动虚拟机,选择Install CentOS Linux 8,回车,然后需要等待一会:
在这里插入图片描述

请添加图片描述

4)选择语言,这里我们选择中文,确认后点击“继续”:
请添加图片描述

5)在如下图三个报警项中点击设置:
在这里插入图片描述
其中:
系统安装目的地设置,不做调整,直接点击“完成”即可:
在这里插入图片描述
设置ROOT账号的密码,注意要点击两遍“完成”进行确认:
在这里插入图片描述
如果你需要再创建一个用户,在“创建用户”直接创建即可,不需要则跳过:
在这里插入图片描述
6)确认完成后,点击“开始安装”进行安装:
在这里插入图片描述
7)安装完成后,点击“重启系统”重启:
在这里插入图片描述

8)重启后,勾选“许可证协议”
点击“完成”:
在这里插入图片描述
在这里插入图片描述
点击“结束配置”:
在这里插入图片描述
9)点击“前进”
在这里插入图片描述
10)设置创建主目录的信息
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
11)打开“设置,点击“网络”,将网络打开
在这里插入图片描述
点击设置齿轮,勾选“自动连接”:
在这里插入图片描述

注意我这里的虚拟机网络模式为NAT模式:
在这里插入图片描述
12)打开自带的火狐浏览器可以正常上网
在这里插入图片描述

13)打开终端,输入ip a或者ip addr或者ifconfig,可查看ip
注:在终端输入su -可以切换到root用户

在这里插入图片描述
至此,CentOS虚拟机就安装完成。

1.2 设置静态IP(看需求不一定要设置)

看需求是否要设置静态IP,不一定要设置。这里只展示下设置的方式,实际实验未进行设置静态IP

在终端中做如下操作:
1)修改网卡配置文件,注意这里的ens160是你的网卡名

vim /etc/sysconfig/network-scripts/ifcfg-ens160

注:点击“设置”,点击“网络”,再点击设置图标,点击“身份”可以知道网卡名,如下两张图:
在这里插入图片描述
在这里插入图片描述
2)在文件中添加以下内容:

BOOTPROTO=static
IPADDR=<静态IP地址>
NETMASK=<子网掩码>
GATEWAY=<网关地址>
DNS1=<DNS服务器1地址>
DNS2=<DNS服务器2地址>

注意,将<静态IP地址>、<子网掩码>、<网关地址>、<DNS服务器1地址>和<DNS服务器2地址>替换为你的实际值。

例子,如下图:
在这里插入图片描述

3)重启网卡
执行service network restart会报错, 这是因为centos8不支持该指令,我们使用如下指令重启,注意这里要使用root账号执行,否则会报错无权限,使用su -指令切换到root账户:

nmcli c reload

这个配置后不会马上生效,使用下面两行命令将连接重启下,或者直接重启虚拟机:

nmcli connection down ens160
nmcli connection up ens160

查询ip,发现配置的ip已经出现:

ip addr

1.3 开启SSH\开启关闭端口\关闭开启防火墙

通过ssh服务,我们可以使用ssh指令来远程操作虚拟机,非常的方便

centos8默认安装ssh服务,该服务通过22端口传输,所以需要开启22端口或者关闭防火墙。但在生产环境中不允许关闭防火墙

1、如果未开启ssh服务,可以通过以下指令开启

service sshd start
# 重启sshd
service sshd restart
# 关闭sshd
service sshd stop

如果上述方式不管用,可以尝试这种方式重启ssh:

systemctl restart sshd

2、开启22端口

# 查询22端口是否开放
firewall-cmd --query-port=22/tcp
#查询所有已开放的端口
netstat -anp
# 开启端口
firewall-cmd --add-port=22/tcp --permanent
# 开启后重新加载
firewall-cmd --reload

若以后要关闭22端口,则使用关闭端口指令:

# 关闭指定端口
firewall-cmd --permanent --remove-port=22/tcp

如需关闭/开启防火墙,操作如下:

查看防火墙状态 systemctl status firewalld.service
打开防火墙防火墙 systemctl start firewalld.service
关闭防火墙 systemctl stop firewalld.service
开启防火墙 systemctl enable firewalld.service
禁用防火墙 systemctl disable firewalld.service

注:上面是CentOS8 关闭防火墙,禁用防火墙命令, 另附CentOS 7 防火墙配置,添加规则,删除规则,查看规则

1.4 虚拟机与本机互相复制粘贴、传输文件

1)先开启ssh,如上所示
2)下载Termius软件,通过该软件管理操作虚拟机

Mac M1 Termius软件安装包:链接: https://pan.baidu.com/s/1mIAZyi-jl4UV3_5CvxsRgg?pwd=qygj 提取码: qygj

此时Centos8虚拟机IP是:192.168.178.130

在这里插入图片描述
在这里插入图片描述
请添加图片描述

也可以通过SFTP实现文件互相传递,点击要复制的文件拖拽即可:
在这里插入图片描述

2. 如何在CentOS 8安装Python

教程链接

3. 解决错误:为 repo ‘appstream’ 下载元数据失败

执行sudo dnf install python3,出现错误:错误:为 repo ‘appstream’ 下载元数据失败 : Cannot prepare internal mirrorlist: No URLs in mirrorlist。

原因:
在2022年1月31日,CentOS团队终于从官方镜像中移除CentOS 8的所有包。
CentOS 8已于2021年12月31日寿终正非,但软件包仍在官方镜像上保留了一段时间。现在他们被转移到https://vault.centos.org

解决方法:
如果你仍然需要运行CentOS 8,你可以在/etc/yum.repos.d中更新一下源。使用vault.centos.org代替mirror.centos.org。

执行一下两行代码进行修改:

sudo sed -i -e "s|mirrorlist=|#mirrorlist=|g" /etc/yum.repos.d/CentOS-*
sudo sed -i -e "s|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g" /etc/yum.repos.d/CentOS-*

例子,如下图:
在这里插入图片描述

4. 安装Nginx

4.1 关于OpenResty

OpenResty就是Nginx,集成了很多方便的插件

在这里插入图片描述

4.2 在 CentOS 8 上通过 dnf 安装 OpenResty

1) 安装标准的 wget 包

root用户下,安装标准的 wget 包:

dnf -y install wget

在这里插入图片描述

2) 使用 wget 下载 openresty.repo 文件

wget 'https://openresty.org/package/centos/openresty.repo'

在这里插入图片描述

3) 把这个文件移到 yum 仓库的配置目录中

sudo mv openresty.repo /etc/yum.repos.d/

在这里插入图片描述

4) 更新 yum 索引数据库

sudo dnf check-update

5) 安装主 RPM 包,openresty

sudo dnf -y install openresty

6) 检查 openresty 可执行文件是否可用

这个openresty 可执行文件只是一个符号链接

which openresty

file `which openresty`

在这里插入图片描述

7) 检查其版本

openresty -V

在这里插入图片描述

8) 启动默认的 openresty 服务器

sudo systemctl start openresty

9) 检查 nginx 进程是否启动并运行

ps aux|grep nginx

在这里插入图片描述

10) 测试默认主页

在CentOS8里面自带的浏览器输入: http://localhost/
默认是80端口
请添加图片描述
或者在主机上输入CentOS8虚拟机的ip:
请添加图片描述

4.3 CentOS 8 启动、停止、重启、检错Nginx命令

CentOS 8 操纵nginx的一些命令:
ps 我的安装在/usr/local/openresty/nginx 目录
–启动
/usr/local/openresty/nginx/sbin/nginx
–停止
/usr/local/openresty/nginx/sbin/nginx -s stop
–重启
/usr/local/openresty/nginx/sbin/nginx -s reload
–检验nginx配置是否正确
/usr/local/openresty/nginx/sbin/nginx -t

4.4 必看Nginx入门视频

视频链接🔗

关于Nginx负载均衡反向代理的简易使用请看上述视频

注:
在Nginx的配置文件nginx.conf中,“= /a”、“^~ /a”、“^~ /a/b”、“~ ^/\w”、“~ ^/[a-z]”分别表示以下内容:

  1. “= /a”:表示精确匹配以“/a”为请求路径的URL。例如,请求路径为“/a”的URL会被匹配,而请求路径为“/a/b”、“/ab”等其他以“/a”开头的URL则不会被匹配。

  2. “^~ /a”:表示以“/a”为请求路径的URL前缀匹配,其中“^~”表示在所有正则表达式和普通字符串匹配中优先匹配该表达式。例如,请求路径为“/a”、“/a/b”、“/a/b/c”等以“/a”开头的URL都会被匹配,而请求路径为“/ab”等其他以“/a”开头的URL则不会被匹配。

  3. “^~ /a/b”:表示以“/a/b”为请求路径的URL前缀匹配,其中“^~”表示在所有正则表达式和普通字符串匹配中优先匹配该表达式。例如,请求路径为“/a/b”、“/a/b/c”等以“/a/b”开头的URL都会被匹配,而请求路径为“/a”、“/ab”等其他以“/a”开头但不以“/a/b”开头的URL则不会被匹配。

  4. “~ ^/\w”:表示正则表达式匹配以斜杠“/”开头,后面跟一个或多个字母数字或下划线的字符串的URL。其中“~”表示使用正则表达式匹配,“^/”表示以斜杠“/”开头,“\w”表示匹配任意一个字母数字或下划线字符。例如,请求路径为“/abc123”、“/test_01”、“/hello_world”等以斜杠“/”开头,后面跟一个或多个字母数字或下划线的URL都会被匹配,而请求路径为“/ab/c”、“/hello-world”等其他不符合要求的URL则不会被匹配。

  5. “~ ^/[a-z]”:表示正则表达式匹配以斜杠“/”开头,后面跟一个小写字母的URL。其中“~”表示使用正则表达式匹配,“^/”表示以斜杠“/”开头,“[a-z]”表示匹配任意一个小写字母。例如,请求路径为“/a”、“/b”、“/c”等以斜杠“/”开头,后面跟一个小写字母的URL都会被匹配,而请求路径为“/A”、“/1”等其他不符合要求的URL则不会被匹配。

5. CentOS8安装MySQL8.0.22

5.1 首先用Termius远程连接到CentOS8服务器

5.2 卸载之前安装过的MySQL

如果服务器之前安装过mysql请先卸载,我这里是用yum安装的,现在通过yum去卸载:

yum remove -y mysql
find / -name mysql  //找到残留的文件,再通过rm -rf去删除对应的文件

在这里插入图片描述

5.3 卸载完成后,使用以下命令

wget https://dev.mysql.com/get/mysql80-community-release-el8-1.noarch.rpm

yum install mysql80-community-release-el8-1.noarch.rpm

成功示意图如下:
在这里插入图片描述
在这里插入图片描述

5.4 检查数据源

查看mysql源是否安装成功:

yum repolist enabled | grep "mysql.*-community.*"

在这里插入图片描述

5.5 禁用CentOS8自带mysql模块

如果出现No match for argument: mysql-community-server,可执行 yum module disable mysql命令:

yum module disable mysql // 禁用命令

在这里插入图片描述

5.6 安装mysql命令

yum install mysql-community-server 这一步的时候可能很多人安装不上,
因为是yum安装库的问题,错误(Error: GPG check FAILED),可以将--nogpgcheck添加到后面:
yum install mysql-community-server --nogpgcheck

在这里插入图片描述
在这里插入图片描述

5.7 启动mysql

/bin/systemctl start mysqld.service //启动命令
service mysqld status

在这里插入图片描述

5.8 显示mysql的随机密码

grep 'temporary password' /var/log/mysqld.log

在这里插入图片描述

5.7 登录并修改mysql密码

mysql -u root -p //输入上面生成的随机密码

在这里插入图片描述

修改密码:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'Root_21root'; 
//修改密码需要注意,这里密码先修改成 “Root_21root”,因为我们随便修改密码时,一般都不满足它的策略,会报以下错误:
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

解决办法:
一定要先修改默认密码为: Root_21root 满足它的策略,再进行下面的操作:
SHOW VARIABLES LIKE 'validate_password%'; //查看密码策略

修改密码长度:
set global validate_password.length=1; //(长度)
修改密码等级:
set global validate_password.policy=0; //(等级)

设置成自己想要的密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

在这里插入图片描述

5.8 在CentOS 8中开放MySQL 8.0.22的远程访问

create user 'root'@'%' identified by '123456';

grant all privileges on *.* to 'root'@'%' with grant option;

FLUSH PRIVILEGES; //刷新权限

在这里插入图片描述

注1:对于创建用户SQL语句的解释:

# 创建用户
create user 'root'@'localhost' identified by '123456';
# 说明
#  root  用户名
# localhost  可访问IP (localhost 代表只能本机访问,想让全部IP都可以访问的话是 %) 
# 123456 密码 
Query OK, 0 rows affected (0.09 sec)

注2:
如何进行授权SQL语句的解释:

# 授权
# 报开头的错主要是版本问题
# mysql8.0之前
 grant all privileges on *.* to 'root'@'%' IDENTIFIED BY "mypassword";
# mysql8.0之后
 grant all privileges on *.* to 'root'@'%' with grant option;

关于授权语句的说明可以先看完说明再看语句:

GRANT privileges ON databasename.tablename TO 'username'@'host'
# 语句说明
# privileges:用户的操作权限,如SELECT,INSERT,UPDATE等,如果要授予所的权限则使用ALL
# databasename:数据库名
# tablename:表名,如果要授予该用户对所有数据库和表的相应操作权限则可用*表示,如*.*

注3:
创建完成后执行以下语句,用于刷新数据库权限:

FLUSH PRIVILEGES;

5.9 重启mysql数据库

先在mysql命令行输入exit,再在root用户下输入sudo systemctl restart mysqld
在这里插入图片描述

5.10 补充: MySQL查看或显示数据库(SHOW DATABASES语句)

5.11 在本机(macbook)上使用Navicat远程连接CentOS8 MySQL数据库

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6. 实战使用Nginx实现负载均衡反向代理

6.1 简述

本部分使用Flask框架模拟搭建真实的Web网站。如下图,该架构使用Flask框架模拟了一个真实的Web网站,其中使用了nginx作为反向代理服务器,用于分摊负载。右侧的三个server代表三个不同的网站,这些网站都连接到同一个MySQL数据库,可以对该数据库进行增删改查等操作。为了简化实验,本文使用了两个学生信息管理系统网站,这些网站对外显示一个IP地址,但实际上用户访问、操作的是同一个网站。左侧的三个user代表访问网站的用户,他们在访问同一个网站的时候,会被nginx分摊到不同的server网站上去,从而实现负载均衡。这意味着,当有多个用户同时访问网站时,nginx会将请求分配到不同的服务器上,以确保服务器不会过载并能够更好地处理流量。

使用的Flask网站源码请自行寻找一个便可。

在这里插入图片描述

6.2 在Navicat中运行sql文件

在这里插入图片描述
右键点击选择“运行SQL文件”,运行网站所用的sql文件:
请添加图片描述
在这里插入图片描述
在这里插入图片描述

6.3 采用测试的两个Flask网站

为了呈现实验效果,给网站首页分别加了“入口一”、“入口二”标识。实际使用过程中,应对访问用户显示出仿佛是同一个网站

6.3.1 网站1

Pycharm专业版中的配置信息:
在这里插入图片描述
在这里插入图片描述
页面截图:
在这里插入图片描述

6.3.2 网站2

Pycharm专业版中的配置信息:
在这里插入图片描述
在这里插入图片描述
页面截图:
在这里插入图片描述

6.3 在Nginx中配置上面两个网站的负载均衡和反向代理

务必看一下4.4中的视频

在CentOS8的命令行root用户下,输入一下命令,编辑Nginx配置文件:

修改配置文件conf:
cd /usr/local/openresty/nginx/conf
vim nginx.conf

配置信息如下:
在这里插入图片描述

重启nginx:

/usr/local/openresty/nginx/sbin/nginx -s reload

在本机浏览器上测试,刷新同一个ip,可以看出来被nginx分配到不同的Web服务器网站上:

用于文章使用CentOS8实现Nginx负载均衡反向代理

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Shader Graph8-输入Vector

一、三个向量 Vector叫做矢量或者向量&#xff0c;向量更偏向于数学&#xff0c;矢量更偏向于图形。下面三种Vector我们用的最多&#xff0c;红色叫Camera Vector相机向量、蓝色叫Surface Normal表面法线、黄色叫Light Vector光向量。 每个面都有法线&#xff0c;法线向量是这…

七大排序算法

文章目录1. 冒泡排序2. 插入排序3. 希尔排序4. 选择排序5. 堆排序6. 快速排序7. 归并排序1. 冒泡排序 从 0 号下标开始遍历&#xff0c;相邻两个数相互比较&#xff0c;如果左边的数大于右边的数&#xff0c;执行交换操作&#xff0c;最终每一趟冒泡都会将一个最大的数移到最右…

matplotlib使用

文章目录基本语法导入库plt 和ax.区别ax. 用法子图创建-展示不同的分区区域设置刻度范围&#xff1a;显示刻度设置刻度标签tick_params()函数添加轴坐标标签&#xff0c;表头&#xff0c;图例plt.用法普通折线图plt.plot(x,y,format_string,**kwargs)函数说明&#xff1a;中文显…

chapter-1数据管理技术的发展

以下课程来源于MOOC学习—原课程请见&#xff1a;数据库原理与应用 数据管理技术的发展 发展三阶段 人工管理【1950前】 采用批处理&#xff1b;主要用于科学计算&#xff1b;外部设备只有磁带&#xff0c;卡片&#xff0c;纸带等 特点&#xff1a;1.数据面向应用2.数据不保…

python注释方式

计算机语言的注释基本都是一样的作用 一个是 我这段代码可能之后还要用 但现在没用 我先注释在这里 他不会参与运行 但我想用了 直接打开注释 他就正常运行了 还要就是 用 注释 解释你代码的作用 方法呢 单行注释 以警号开头 右侧内容即为注释 print(666) print(130.33) #pr…

STM32之增量式编码器电机测速

STM32之增量式编码器电机测速编码器编码器种类按监测原理分类光电编码器霍尔编码器按输出信号分类增量式编码器绝对式编码器编码器参数分辨率精度最大响应频率信号输出形式编码器倍频STM32的编码器模式编码器模式编码器的计数方向仅在TI1计数电机正转&#xff0c;向上计数。电机…

卷麻了,00后测试用例写的比我还好,简直无地自容.....

前言 作为一个测试新人&#xff0c;刚开始接触测试&#xff0c;对于怎么写测试用例很头疼&#xff0c;无法接触需求&#xff0c;只能根据站在用户的角度去做测试&#xff0c;但是这样情况会导致不能全方位的测试APP&#xff0c;这种情况就需要一份测试用例了&#xff0c;但是不…

服务(第五篇)Nginx!!!

Nginx和Apache的差异? Nginx是一个基于事件的Web服务器&#xff0c;Apache是一个基于流程的Web服务器; Nginx所有请求都由一个线程处理&#xff0c;Apache单个线程处理单个请求; Nginx异步非阻塞的&#xff0c;Apache是阻塞的; Nginx在内存消耗和连接方面更好&#xff0c;Apa…

【JAVA】#详细介绍!!! synchronized 加锁 详解(2)

本篇主要是针对 synchronized锁的优化过程来介绍&#xff0c;针对synchronized的加锁优化过程来了解上篇所提到的synchronized的锁特性。 目录 1. synchronized锁的特性 2.synchronized 锁的升级过程 2.1 总过程&#xff1a; 2.2 偏向锁 2.3 轻量级锁 2.3.1自旋锁vs自适应…

网络安全之认识勒索病毒

一、什么是勒索病毒 勒索病毒&#xff0c;是一种新型电脑病毒&#xff0c;伴随数字货币兴起&#xff0c;主要以邮件、程序木马、网页挂马、服务器入侵、捆绑软件等多种形式进行传播&#xff0c;一旦感染将给用户带来无法估量的损失。如果遭受勒索病毒攻击&#xff0c;将会使绝…

Flink任务提交流程

抽象流程 抽象级别&#xff1a;不管是什么模式&#xff0c;大体上就是上面这个流程。 任务提交给分发器分发器把任务提交给JobManager上的JobMaster组件JobMaster收到任务之后&#xff0c;就会想JobManager上的ResourceManager去请求SlotJobManager上的ResourceManager会提供给…

3.1.2栈的顺序存储实现

&#xff08;1&#xff09;初始化一个顺序栈/栈的判空操作 与顺序表的声明类似 就是要加上一个栈顶指针top 然后把别名SqList改为SqStack 我们发现top指针的大小就是数组下标。 当空栈时&#xff0c;top指针为-1. &#xff08;2&#xff09;进栈操作 ep&#xff1a;插入一…

版本控制:git的基本使用

1.git基本介绍及安装 学习网址&#xff1a;Git - Book 安装步骤: Git - 安装 Git 安装完可以在本地电脑上查看&#xff1a; cmd为windows环境 bash为linux的环境 2. Git常用命令 牛客网项目——前置技术&#xff08;五&#xff09;&#xff1a;版本控制_平什么阿的博客-C…

ffmpeg关于视频前几秒黑屏的问题解决

关于音频播放器视频前两秒黑屏的解决&#xff0c;及QtAV和ffmpeg的环境搭建&#xff08;软件包可以找李青璠提供&#xff0c;也可以自己下&#xff09;首先我们可以参考下面两个博客进行ffmpeg的搭建&#xff0c;第一个博客的问题可以在第二个博客里寻求方法解决。其中第一个博…

服务器上后台运行python程序

Linux中将代码nohup后台执行、查看正在运行代码、结束进程写在最前面环境代码示例nohup指令& 后台运行2>&1 错误内容重定向到标准输出查看当前python相关进程结束进程nohup后台pip下载安装写在最前面 一直是pycharm运行服务器上代码&#xff0c;但存在问题&#xf…

3.1、线程概述

3.1、线程概述1.线程概述2.线程和进程区别3.线程和进程虚拟地址空间4.线程之间共享和非共享资源①共享资源②非共享资源5.线程版本NPTL1.线程概述 与进程&#xff08;process&#xff09;类似&#xff0c;线程&#xff08;thread&#xff09;是允许应用程序并发执行多个任务的…

通达信指标没有了怎么找回

通达信指标没有了可以恢复&#xff0c;不用太慌张&#xff0c;通达信会自动备份指标公式&#xff0c;可以通过备份文件找回。 1、找到通达信安装文件夹&#xff0c;一般是new_tdx&#xff0c;但是版本不同&#xff0c;安装文件夹可能有区别。本文以new_tdx这个文件夹为例。 如…

什么是零代码与低代码?有什么区别与联系?未来趋势

目前传统软件开发模式并不能很好地满足企业的需求&#xff1a;高人力成本、长研发时间、运维复杂&#xff0c;需求变化快&#xff0c;技术更新快&#xff0c;人员流失。这时零代码或低代码工具出现在市面上并被关注就是必然趋势了。对于不太了解两者的人来说&#xff0c;零代码…

【mysql性能调优 • 三】字符集和校验规则

前言 MySQL是一个关系型数据库管理系统&#xff0c;由瑞典MySQL AB 公司开发&#xff0c;属于 Oracle 旗下产品。MySQL是最流行的关系型数据库管理系统之一&#xff0c;在 WEB 应用方面&#xff0c;MySQL是最好的 RDBMS (Relational Database Management System&#xff0c;关系…

Linux下Nginx配置SSL模块,Nginx安装SSL,Nginx支持https配置详细教程

前提&#xff1a;Linux安装Nginx&#xff0c;参考教程&#xff1a;CentOS7安装Nginx完整教程&#xff0c;Linux系统下保姆式安装Nginx教程 | 老麻 安装好Nginx之后&#xff0c;需要支持SSL时&#xff0c;要单独安装SSL模块&#xff0c;方法如下&#xff1a; 输入 ./nginx –V 命…