========首先、centos7.6========

自己待得几家公司都用centos得多然后windos其次。然后版本百度搜了一下centos个版本终止时间,8已经去年底停更,7还能坚持,最迟2024年时间足够用,其实停更对我这小屁孩也没啥影响。

选好系统centos选好版本7.6

 

centos7 rtmp服务器比较 centos做服务器哪个版本好_centos7 rtmp服务器比较

 

 

========JDK========

本来打算选openjdk然后搜的时候发现一句话,当前开源组织都还没放弃oracleJDK而且工作也都还在用oracleJDK,就不选openjdk了,

版本现在应该是JKD17了但是工作最早5后来6了很久到7了没多久一直8着呢,真有需要也没必要放服务器自己本地可以装新版,服务器还是用JDK1.8 

结果看别人安装教程用yum安装自己也就安装openJDK啦,哈哈,真是人生无常大肠包小肠。

1、搜索jdk安装包,一眼望去都是openjdk比去官网下载orcakjdk方便多了

yum search java|grep jdk

 

centos7 rtmp服务器比较 centos做服务器哪个版本好_mysql_02

 

 

2、选jdk1.8下载; 默认目录/usr/lib/jvm

yum install java-1.8.0-openjdk

 

centos7 rtmp服务器比较 centos做服务器哪个版本好_mysql_03

 

 

下载过程中 按了一下键盘 y

centos7 rtmp服务器比较 centos做服务器哪个版本好_mysql_04

 

 

最后提示 完成

centos7 rtmp服务器比较 centos做服务器哪个版本好_nginx_05

 

 

3、查看版本,如下图就意味着安装成功

java -version

 

centos7 rtmp服务器比较 centos做服务器哪个版本好_mysql_06

 

====如上三步下载安装完成

====如下三步配置环境变量

1、找到目录:
JDK默认安装路径

cd /usr/lib/jvm

 

找到 jre-1.8.0-openjdk-1.8.0.342.b07-1.el7_9.x86_64

特意去xftp里看了一下,如图

centos7 rtmp服务器比较 centos做服务器哪个版本好_centos7 rtmp服务器比较_07

 

 

2、把目录配置进系统里:
编辑/etc/profile文件,把找到的命令文件及目录地址配置进去

vi /etc/profile

 

添加如下命令

# set java environment
JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.312.b07-1.el7_9.x86_64
PATH=$PATH:$JAVA_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME CLASSPATH PATH

  

 

centos7 rtmp服务器比较 centos做服务器哪个版本好_mysql_08

 

 

复制 == 键盘i是插入 == 粘贴 == 键盘左上角Esc == 然后 :wq保存退出  

保存关闭profile文件,执行如下命令刷新配置生效

source /etc/profile

 

3、配置完了验证一下是否成功:
查看JDK变量

echo $JAVA_HOME
echo $PATH
echo $CLASSPATH

 

 

 

centos7 rtmp服务器比较 centos做服务器哪个版本好_服务器_09

 

======mysql======

这个第一步很容易就是十分确信就是mysql而不是其他数据库
第二步版本该选啥,工作用5.7
其他旧同事拿过mysql8的项目让我帮忙找过bug说明现在企业也流行用8了,不过我相信仍然是5.7的居多,
我之前安装过8
现在还是角色安装5.7足够,完全没必要8

分析如下几点:
1\centos7.6自带的类mysql数据库是mariadb,会跟mysql冲突,要先删除。
2\从dev.mysql.com下载会很慢,如果可以更可以去docker方式,推荐去从镜像地址下载,比如去华为镜像地址下载

3\不止是mariadb还有如果以前装过mysql也是要安装前删一下以前的卸掉

4\不用yum自动安装方式,而是自己手动安装就要自己选好安装到目录和配置环境变量,开机自启也是自己配置

5\mysql有权限组用户还有远程访问权限要配置一下

6\MySQL装完肯定要改密码的

基本就是提前卸载旧残渣文件,然后下载、解压、安装、权限、配置、改密、开机自启这些步骤,还真费事主要是怪网速不给力要不真的还是yum安装比较省心

 

一、卸载

a、清mariadb因为我是腾讯云铁定是有所以这一步必须要做、

1、查

rpm -qa | grep -i mariadb

 

2、软删刚查到的

rpm -e mariadb-libs

 

3、硬删刚查到的

rpm -e --nodeps mariadb-libs

 

 

 

b、清理mysql旧文件如果有就清没有就不用这一步、

rpm -qa | grep -i mysql

 

确实没查出来,当时新装的系统肯定干净

 

 

防火墙看状态确实是关着的状态、

systemctl status firewalld

 

但我手欠给启动一下、

systemctl start firewalld

 

再看一下状态确实启动了、

systemctl status firewalld

 

再关闭

systemctl stop firewalld

 

 

删mysql其他相关文件

虽然没有安装过mysql旧版本但是有相关的文件不知道有用没有,怕影响我查了一下

find / -name mysql

 

查到俩,我就给删除掉这俩文件了

rm -rf /etc/selinux/targeted/active/modules/100/mysql

 

rm -rf /usr/lib64/mysql

 

 

centos7 rtmp服务器比较 centos做服务器哪个版本好_centos7 rtmp服务器比较_10

 

 

 

 二、下载

centos7 rtmp服务器比较 centos做服务器哪个版本好_centos7 rtmp服务器比较_11

 

 

 我在 /usr/local/ 目录

cd /usr/local

 

从华为镜像找到一个5.7比较新的版本,下载下来,是真的快,应该是广东省省内内网网速吧很快,国内都快

wget https://repo.huaweicloud.com/mysql/Downloads/MySQL-5.7/mysql-5.7.38-linux-glibc2.12-x86_64.tar.gz

 

 

三、解压安装

我在 /usr/local/ 目录下载,解压的,

tar zxf mysql-5.7.38-linux-glibc2.12-x86_64.tar.gz

 

 

并把文件夹的长名改成了短名 

mv mysql-5.7.38-linux-glibc2.12-x86_64  mysql-5.7.38

 

 

 四、系统级别的配置

添加环境变量配置进系统里

tee -a /etc/profile <<-'EOF'
# wlf-2020-09-21
export PATH=$PATH:/usr/local/mysql-5.7.38/bin
EOF

 

并刷新命令生效

source /etc/profile

 

 

看了一下系统没有mysql组、

cat /etc/group | grep mysql

 

看了一下系统也没有mysql用户

cat /etc/passwd | grep mysql

 

给系统添加mysql组

groupadd mysql

 

给系统添加mysql用户

useradd -r -g mysql mysql

 

 

centos7 rtmp服务器比较 centos做服务器哪个版本好_服务器_12

 

 

 然后在看了一下系统有了mysql组、

cat /etc/group | grep mysql

也有了mysql用户

cat /etc/passwd | grep mysql

把mysql目录权限分给mysql组mysql用户

chown -R mysql.mysql /usr/local/mysql-5.7.38

 

centos7 rtmp服务器比较 centos做服务器哪个版本好_nginx_13

 

 

 

五====mysql的配置====

创建mysql未来数据存放的目录

mkdir /usr/local/mysql-5.7.38/data

 

其他端口、编码、等配置信息都写到一个新的配置文件里

cd /usr/local/mysql-5.7.38/support-files

 

 

vim my_default.cnf

 

---------复制如下信息粘贴进去--------------

# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html
# *** DO NOT EDIT THIS FILE. It's a template which will be copied to the
# *** default location during install, and will be replaced if you
# *** upgrade to a newer version of MySQL.


[mysqld]
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

basedir = /usr/local/mysql-5.7.38
datadir = /usr/local/mysql-5.7.38/data
port = 3306
socket = /tmp/mysql.sock
character-set-server=utf8

log-error = /usr/local/mysql-5.7.38/data/mysqld.log
pid-file = /usr/local/mysql-5.7.38/data/mysqld.pid

 

---------复制如上信息粘贴进去--------------

键盘i进入插入状态,粘贴,键盘Esc退出输入状态,冒号:wq退出保存

i 鼠标右键粘贴 Esc :wq

 

复制一份配置文件到系统etc目录

cp /usr/local/mysql-5.7.38/support-files/my_default.cnf /etc/my.cnf

 

 

centos7 rtmp服务器比较 centos做服务器哪个版本好_mysql_14

 

 

六、初始化 mysqld 及后续步骤

mysqld --initialize --user=mysql --basedir=/usr/local/mysql-5.7.38/ --datadir=/usr/local/mysql-5.7.38/data/

 

就可以查看初始密码了

grep password /usr/local/mysql-5.7.38/data/mysqld.log

 

配置开机自启

cp /usr/local/mysql-5.7.38/support-files/mysql.server /etc/init.d/mysql

 

启动MySQL

service mysql start

 

 

centos7 rtmp服务器比较 centos做服务器哪个版本好_mysql_15

 

 

用刚看到的临时密码,在服务器上登录MySQL

mysql -u root -p

 

七、修改密码(没必要这么简单的密码123456)
三步:改值,改权,刷新权限

set password=password('123456');

 

 

grant all privileges on *.* to root@'%' identified by '123456';

 

 

flush privileges;

 

给mysql的root用户添加远程访问权限:
切换到系统mysql库、

use mysql;

 

给root设置远程访问权限、

update user set host='%' where user = 'root';

 

这一步我报错了我查了一下select host from user where user = 'root';已经有了所以报错,有了就可以了。
刷新权限

flush privileges;

 

 

 

centos7 rtmp服务器比较 centos做服务器哪个版本好_centos7 rtmp服务器比较_16

 

 

删掉其他有远程权限的用户只留下root账号可以远程访问

use mysql;

 

 

delete from user where user<>'root' and host<>'%';

 

 

flush privileges;

 

退出mysql登录状态

exit;

 

 

八、重启mysql服务。然后重启服务器试试能否自启成功

 

service mysql restart

 

重启restart、停止stop、启动start

 

 

====== nginx =======

我以前装过的记录

发现一个更有趣记录

 

其实openresty更厉害点,但是我身边真没有人用,工作用不到可能是服务器差业务达不到那种级别,所以就容易选了就普普通通的豹纹nginx即可

主要是为了配饰https,现在http不够用了必须带s了,其次是java开发大都本质是tomcat并发是一两千而普通nainx就能几万并发,确实是标配,服务器再弄上微服务就更起飞了,这就是选nginx的原因,

版本去看官网nginx.org最新稳定版是多少,不是com域名因为com是商用没必要个人用怕折寿

centos7 rtmp服务器比较 centos做服务器哪个版本好_nginx_17

 

 

 

一键安装 

--with-http_gzip_static_module

 

拆分 && 分割

1、进入usr/local目录

cd /usr/local

 

2、yum安装必要的环境 gcc-openssl等

yum install -y make cmake gcc gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel

 

如下四句合起来等同上面这一句,自己悟

yum install -y make cmake gcc gcc-c++
yum install -y pcre pcre-devel
yum install -y zlib zlib-devel
yum install -y openssl openssl-devel

3、下载(源码): 地址从官网找到稳定的哪个版本,鼠标右键复制超链接地址得到的

wget http://nginx.org/download/nginx-1.22.0.tar.gz

 

4、解压

tar zxvf nginx-1.22.0.tar.gz

 

5、进入目录

cd nginx-1.22.0

 6、配置 (对源码添加一系列配置,常常是编译安装前要做的,如下这些选项不知道有没有默认值)

--with-http_gzip_static_module

 

7、编译(编译源码)

make

 

8、编译后安装(源码安装常见的三步曲  ./configure + make + make install )

make install

9、创建全局命令相当于环境变量

ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx

 

10、开机自启动

我是编译源码的方式安装的,所以我用手动创建nginx.service的方式实现自启动

vi /lib/systemd/system/nginx.service

 

如下内容 添加 i切换命令输入 粘贴 退出Esc :wq保存

[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true
[Install]
WantedBy=multi-user.target
#systemctl start nginx.service  (启动)
#systemctl status nginx.service (查看当前状态)
#systemctl stop nginx.service  (停止)
#systemctl restart nginx.service  (重新启动服务)
#systemctl enable nginx.service (设置开机自启动)
#systemctl disable nginx.service (停止开机自启动)
#systemctl list-units --type=service (查看所有已启动的服务)

 

 

如果你用方式yum install安装的  系统会自动创建nginx.service文件,道理和装redis时一样

 

开启自启动:

systemctl enable nginx.service

 

如下命令自选, 记得执行启动命令后去网页打开看看,重启服务器测一下是否自启了。

可以修改配置nginx.conf(路径看./configure结果里有提示)
vi /usr/local/nginx/conf/nginx.conf
查看安装的版本信息等 ./nginx -V
重启生效./nginx -s reload
启动nginx /usr/local/nginx/sbin/nginx 启动nginx默认是conf/nginx.conf相对目录-c指定配置文件启动 /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf 查看版本(去浏览器访问是否成功,错误时浏览器也提示的版本) /usr/local/nginx/sbin/nginx -V 只查看nginx进程是否运行,正常运行的话可以算是大概率成功了嘻嘻 ps -ef | grep nginx 查看进程并杀死进程 ps -ef | grep nginx |grep -v grep|cut -c 9-15|xargs kill -9
(启动)
systemctl start nginx.service
(查看当前状态)
systemctl status nginx.service
(停止)
systemctl stop nginx.service
(重新启动服务)
systemctl restart nginx.service
(设置开机自启动)
systemctl enable nginx.service
(停止开机自启动)
systemctl disable nginx.service
(查看所有已启动的服务)
systemctl list-units --type=service