目录

零、序言:

一、安装jdk

二、安装Tomcat

三、安装Nginx

四、配置Nginx + Tomcat 动静分离

五、Nginx手机端电脑端页面分离配置

六、安装MySQL并进行一些基本的配置,以及sqlyog报错1103和2508问题的解决

七、结语


零、序言:

此教程基于阿里云的centos7系统下,使用xshell终端进行配置

小编是个前端工程师,本来搭建网站用宝塔面板玩,就无脑操作,前一段时间需要搭建一个动静分离的网站服务器,找了好久的教程,由于该程序员对服务器也不是很了解,也不懂linux命令,就到处百度,也在b站刷了部分视频,仍然在建站过程中遇到了很多的问题,比如阿里服务器不开放8080,3306端口,需要自己去登录阿里官网进行调整,tomcat重启启动慢的问题,sqlyog的报错,安装mysql遇到的问题等等,对于我一个小白搞了好久,找了好多资料,大部分都是在csdn里找到的,大佬还是挺多的,但是也有很多教程是有问题的,搜集较慢,我把之前的建站过程重新走了一遍,写了个完整版教程,如果有不足之处还望多多指正

因为就一个服务器,所以不需要进行负载均衡配置,而通过Tomcat+Nginx进行动静分离,静态资源交给处理静态资源更快的nginx处理,而把动态请求交给tomcat处理,通过这种方式可以提高服务器处理请求的性能

希望本教程担当得起奶奶级教程的称号,可纯小白搭建web网站,nginx+Tomcat动静分离。

服务器需要自己购买哦,第一次练手建议用虚拟机安装centos系统,建议提前安装好xshell,sqlyog或Navicat软件,并访问下面的网址,对一些Linux基础命令操作进行了解

https://blog.csdn.net/qq_30306717/article/details/119858494

需要的所有安装包懒得自己下载可以用我打包好的提取码:9ntw,就是百度网盘下载有点慢,其中文件最大的就是数据库,数据库可以去官网下载,速度挺快的。

https://pan.baidu.com/s/1qB8l-chjLdSnntV8JrYEgQ

一、安装jdk

1、输入rpm -qa | grep jdk会查询出系统自带的OpenJDK及版本

rpm -qa | grep jdk

2、如果显示已安装openjdk则对其进行卸载(我用的阿里的云服务器,里面什么都没有,所以不用卸载)(这两个图忘记复制哪个大佬的了)

输入:rpm -e --nodeps + ‘你要卸载的jdk全名’

最后再用rpm -qa | grep jdk命令检查一遍

3、下载(或者用我分享的网盘里的,在序言里)

下载地址:https://www.oracle.com/java/technologies/javase-jdk16-downloads.html

选择一个64位的linux版本进行下载即可,如果是32位linux,就下载32位的,现在oracle官网下载需要注册登陆才能下载。

这里我下载的是这个版本

4、上传下载好的jdk到服务器(rz命令不能用,就先去看文章开始的链接里,有安装方法)

先进入要上传的文件夹,我这里上传到local文件夹下(因为我要把jdk装到这个文件夹下)

cd /usr/local

5、上传完成后用ll命令查看(ll查看当前文件夹下的文件)

6、然后进行解压安装(文件的名字可以用终端Ctrl+insert组合键复制,shift+insert组合键粘贴)

tar -zxvf jdk-16.0.2_linux-x64_bin.tar.gz

7、安装完成后按ll查看

8、修改配置环境变量

vim /etc/profile(意思是  vim编辑某个文件,如果和这个文件在同一个文件夹下,直接跟文件名,不在同一个文件夹下,就输入该文件的完整路径+文件名,有后缀需要带后缀)

vim /etc/profile

进入文件后输入英文字母i进行编辑,上下左右键控制方向

按到最下面,插入代码

export JAVA_HOME=/usr/local/jdk-16.0.2
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

编辑完成后按esc 键,然后按shift+:组合键会弹出输入,输入wq(保存并退出)enter

9、输入source /etc/profile使环境变量生效

source /etc/profile

最后使用java -version查看,显示版本,则配置成功

10、安装完成,安装包就可以删了,执行rm -rf jdk-16.0.2_linux-x64_bin.tar.gz命令,就可以删除

rm -rf jdk-16.0.2_linux-x64_bin.tar.gz

删除命令 : rm -rf +文件名称     有后缀要带后缀,就删除了;

二、安装Tomcat

1、去Tomcat官网下载Tomcat,然后上传到服务器(或者从我分享的百度网盘安装包里直接获取)

2、下载地址:https://tomcat.apache.org/download-90.cgi

3、下载完成后,在/usr/local文件夹下进行上传,如果不在此文件夹下输入命令cd /usr/local进入此文件夹下

cd /usr/local
rz

4、上传完成后输入ll命令进行查看

5、输入tar -zxv -f apache-tomcat-9.0.24.tar.gz命令进行解压安装

tar -zxv -f 是解压命令,后面跟文件名称带后缀

tar -zxv -f apache-tomcat-9.0.24.tar.gz

6、安装完成后进行查看,并用mv apache-tomcat-9.0.24 tomcat代码进行更名

mv是移动命令,mv +空格 +源文件目录+空格+目的文件目录可以移动文件

如果是同级目录,不需要输入路径,直接输入目的名称就可以【mv 源文件名字 要改的文件名字】

mv apache-tomcat-9.0.24 tomcat

7、安装完成后进入cd /usr/local/tomcat/bin目录下

cd /usr/local/tomcat/bin

然后输入Tomcat的启动文件 ./startup.sh

弹出下面的表示安装成功

8、安装成功后打开防火墙的8080端口(Tomcat的默认端口是8080,如果不是必要,还是不要更改),重启防火墙

firewall-cmd --zone=public --add-port=8080/tcp --permanent
firewall-cmd --reload

输入netstat -lnpt可以查看已开放的端口

netstat -lnpt

然后在浏览器输入服务器ip地址+8080即可访问

例如192.168.11.11:8080

弹出此页面表示成功

8、如果访问不成功且是阿里的服务器

(如果是阿里的新开服务器,阿里的服务器控制台8080端口默认是不开放的,在服务器内防火墙开放端口也不能访问,需要登陆阿里官网,进入服务器控制台设置)

9、最后配置Tomcat的自启动

(参考https://blog.csdn.net/qq_43080036/article/details/90064320的博客)

①为Tomcat添加启动参数pid

进入tomcat/bin 目录下面,创建setenv.sh ,tomcat启动的时候会调用

创建并编辑vi setenv.sh

cd /usr/local/tomcat/bin
vi setenv.sh

进入后按i插入下面代码

#add tomcat pid  CATALINA_PID="$CATALINA_BASE/tomcat.pid"#add java opts  JAVA_OPTS="-server -XX:PermSize=256M -XX:MaxPermSize=1024m -Xms512M -Xmx1024M -XX:MaxNewSize=256m"

插入成功后,先按esc,然后按shift+:组合键,然后输入wq后,enter保存退出

②在/usr/lib/systemd/system目录下增加tomcat.service,内容如下(记得退出保存,这里我jdk位置写错了,应是/usr/local/jdk-16.0.2):

cd /usr/lib/systemd/system
vi tomcat.service

插入的代码段:(记得有三处位置需要更改,如果位置一样就不用改了)

[Unit]
Description=Tomcat
After=syslog.target network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
Environment="JAVA_HOME=/usr/local/jdk-16.0.2"
PIDFile=/usr/local/tomcat/tomcat.pid
ExecStart=/usr/local/tomcat/bin/startup.sh
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target

/usr/local/jdk-16.0.2改为自己的jdk路径

/usr/local/tomcat/tomcat.pid改为自己的Tomcat路径

/usr/local/tomcat/bin/startup.sh改为自己的Tomcat路径

③最后配置开机启动使其生效(配置完成可以重启服务器试一下)

systemctl enable tomcat.service

常用命令

启动tomcat:  systemctl start tomcat

停止tomcat:  systemctl stop tomcat

重启tomcat:  systemctl restart tomcat

查看状态systemctl status tomcat

10、补充:有的系统重启后Tomcat启动很慢,需要好几分钟才能访问

进入jdk的安装目录,找到java.security并进行编辑(借鉴https://blog.csdn.net/jeikerxiao/article/details/85879315的博客)

把securerandom.source=file:/dev/random

改成securerandom.source=file:/dev/./urandom

大概在150行,修改完wq重启系统发现速度变快

cd /usr/local/jdk-16.0.2/conf/security
vim java.security

三、安装Nginx

(参考https://www.pianshen.com/article/7038850461/的博客)

1、通过yum安装

cd /etc#切换到yum安装源文件目录

vi nginx.repo #创建一个安装包源并进行编辑

cd /etcvi nginx.repo

按i键,ctrl+insert快捷键把以下内容复制进去,wq保存退出

[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key

然后用yum repolist命令查看一下是否成功加载了这个安装源

现在就可以通过yum install nginx命令安装nginx了

yum repolist
yum install nginx

安装完成后

firewall-cmd --zone=public --add-port=80/tcp --permanent开启80端口

firewall-cmd --reload重启防火墙

systemctl enable nginx #设置nginx为开机启动

systemctl start nginx #启动nginx服务

firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --reload
systemctl enable nginx
systemctl start nginx

2、如果启动发现报错,启动失败(这里我没截到图),不要慌

①reboot重启系统再试一下启动命令,还不成功往下看

②这里参考(https://blog.csdn.net/baidu_39212797/article/details/108078042的博客),本人也遇到这种情况,使用此方法解决

输入systemctl status nginx.service查看错误情况

systemctl status nginx.service

里面显示错误信息

nginx: [emerg] getpwnam(“nginx”) failed in /etc/nginx/nginx.conf:5
nginx: configuration file /etc/nginx/nginx.conf test failed

解决方案:依次输入下面代码即可

 useradd -s /sbin/nologin -M  nginxid nginxsystemctl start nginxsystemctl status nginx

再次启动,启动成功,systemctl status nginx.service显示绿色

3、通过浏览器输入ip地址,可以成功访问到nginx的页面

4、卸载nginx(依次输入命令即可)

sudo systemctl stop nginx.servicesudo systemctl disable nginx.servicesudo userdel -r nginxchkconfig nginx offsudo rm -rf /etc/nginxsudo rm -rf /var/log/nginxsudo rm -rf /var/cache/nginx/sudo rm -rf /usr/lib/systemd/system/nginx.serviceyum remove nginx

四、配置Nginx + Tomcat 动静分离

1、配置nginx静态页面

cd /etc/nginx/进入此目录下(安装的nginx不在此目录下就用whereis nginx找一下)

vim nginx.conf编辑配置文件

cd /etc/nginx/
vim nginx.conf

插入代码段(看图片的前后位置大概在文件的37行插入,记得改两个动态Tomcat的ip和端口,注释可以删掉)删掉之前的部分代码段(图片中有指示)

upstream tomcat {server 192.168.11.11:8080;  #Tomcat的ip加端口}server {listen       80 default_server;server_name  _;root         /usr/share/nginx/html; #静态页面的文档位置nginx# Load configuration files for the default server block.include /etc/nginx/default.d/*.conf;location ~ \.(jsp|do)$ {proxy_pass http://192.168.11.11:8080; #动态页面的文档位置Tomcat}

2、tomcat动态配置

创建tomcat动态项目默认目录(mkdir /home/www/web/jsp/直接输入代码能一次创建全部文件夹

这个位置可以根据自己的喜好填,不一定一模一样)

创建index.jsp文件,里面填汉字会乱码

mkdir /home/www/web/jsp/
vi index.jsp

然后编辑Tomcat文件夹下配置tomcat.conf文件

vim /usr/local/tomcat/conf/server.xml

在server.xml中的Host节点中添加

<Context path="" debug="0" docBase="/home/www/web/jsp/" reloadable="true"></Context>

重启tomcat并进入浏览器输入ip:8080测试是否为刚才输入的内容

systemctl restart tomcat

配置完成

五、Nginx手机端电脑端页面分离配置

1、进入nginx的网页存放的文件夹下,创建pc,和mobile项目的文件夹(也可以自定义某个文件夹,下面在配置nginx.conf的时候改成自定义的路径就可以了)

cd /usr/share/nginx
mkdir pc
mkdir mobile

可以在里面各自创建一个pc页面,和一个mobile页面

cd mobile
vi index.html
cd ..
cd pc
vi index.html

手机页面里面可以写个<h1>mobile</h1>

电脑页面里面可以写个<h1>pc</h1>

2、进入nginx的页面文件夹下

进入nginx的conf文件夹下

编辑nginx.fonf

vim /etc/nginx/conf/nginx.conf

删除需要替换掉的代码后,需要插入代码的位置

需要插入的代码段(如果和我的不一样记得根据自己的pc项目和手机项目路径的不同进行更改)

    server {listen       80;server_name  localhost;#return 301 https://$host$request_uri;#charset koi8-r;#access_log  logs/host.access.log  main;underscores_in_headers on;location / {root   /usr/share/nginx/pc/;try_files $uri $uri/ /index.html;if ( $http_user_agent ~ "(MIDP)|(WAP)|(UP.Browser)|(Smartphone)|(Obigo)|(Mobile)|(AU.Browser)|(wxd.Mms)|(
WxdB.Browser)|(CLDC)|(UP.Link)|(KM.Browser)|(UCWEB)|(SEMC-Browser)|(Mini)|(Symbian)|(Palm)|(Nokia)|(Panasonic)|(MOT-)|(Sony
Ericsson)|(NEC-)|(Alcatel)|(Ericsson)|(BENQ)|(BenQ)|(Amoisonic)|(Amoi-)|(Capitel)|(PHILIPS)|(SAMSUNG)|(Lenovo)|(Mitsu)|(Mot
orola)|(SHARP)|(WAPPER)|(LG-)|(LG/)|(EG900)|(CECT)|(Compal)|(kejian)|(Bird)|(BIRD)|(G900/V1.0)|(Arima)|(CTL)|(TDG)|(Daxian)
|(DAXIAN)|(DBTEL)|(Eastcom)|(EASTCOM)|(PANTECH)|(Dopod)|(Haier)|(HAIER)|(KONKA)|(KEJIAN)|(LENOVO)|(Soutec)|(SOUTEC)|(SAGEM)
|(SEC-)|(SED-)|(EMOL-)|(INNO55)|(ZTE)|(iPhone)|(Android)|(Windows CE)|(Wget)|(Java)|(curl)|(Opera)" ){root      /usr/share/nginx/mobile/;}index  index.html index.htm;}

3、重启nginx,访问成功就算配置完成了

systemctl restart nginx

然后用手机和电脑访问,会弹出不一样的HTML页面

4、如果在重启的时候遇到了报错,提示nginx.conf某一行错误,我遇到过有一次我少了个花括号,如果你们也遇到了,注意排查一下花括号嵌套是否完整;可以对照我下面这个完整的nginx.conf进行修改

nginx.conf编辑完成的完整代码段

# For more information on configuration, see:
#   * Official English Documentation: http://nginx.org/en/docs/
#   * Official Russian Documentation: http://nginx.org/ru/docs/user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;# Load dynamic modules. See /usr/share/doc/nginx/README.dynamic.
include /usr/share/nginx/modules/*.conf;events {worker_connections 1024;
}http {log_format  main  '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_referer" ''"$http_user_agent" "$http_x_forwarded_for"';access_log  /var/log/nginx/access.log  main;sendfile            on;tcp_nopush          on;tcp_nodelay         on;keepalive_timeout   65;types_hash_max_size 4096;include             /etc/nginx/mime.types;default_type        application/octet-stream;# Load modular configuration files from the /etc/nginx/conf.d directory.# See http://nginx.org/en/docs/ngx_core_module.html#include# for more information.include /etc/nginx/conf.d/*.conf;upstream tomcat {server 192.168.11.11:8080; #Tomcat的ip加端口}server {listen       80;server_name  localhost;#return 301 https://$host$request_uri;#charset koi8-r;#access_log  logs/host.access.log  main;underscores_in_headers on;location / {root   /usr/share/nginx/pc/;try_files $uri $uri/ /index.html;if ( $http_user_agent ~ "(MIDP)|(WAP)|(UP.Browser)|(Smartphone)|(Obigo)|(Mobile)|(AU.Browser)|(wxd.Mms)|(
WxdB.Browser)|(CLDC)|(UP.Link)|(KM.Browser)|(UCWEB)|(SEMC-Browser)|(Mini)|(Symbian)|(Palm)|(Nokia)|(Panasonic)|(MOT-)|(Sony
Ericsson)|(NEC-)|(Alcatel)|(Ericsson)|(BENQ)|(BenQ)|(Amoisonic)|(Amoi-)|(Capitel)|(PHILIPS)|(SAMSUNG)|(Lenovo)|(Mitsu)|(Mot
orola)|(SHARP)|(WAPPER)|(LG-)|(LG/)|(EG900)|(CECT)|(Compal)|(kejian)|(Bird)|(BIRD)|(G900/V1.0)|(Arima)|(CTL)|(TDG)|(Daxian)
|(DAXIAN)|(DBTEL)|(Eastcom)|(EASTCOM)|(PANTECH)|(Dopod)|(Haier)|(HAIER)|(KONKA)|(KEJIAN)|(LENOVO)|(Soutec)|(SOUTEC)|(SAGEM)
|(SEC-)|(SED-)|(EMOL-)|(INNO55)|(ZTE)|(iPhone)|(Android)|(Windows CE)|(Wget)|(Java)|(curl)|(Opera)" ){root      /usr/share/nginx/mobile/;}index  index.html index.htm;}# Load configuration files for the default server block.include /etc/nginx/default.d/*.conf;location ~ \.(jsp|do)$ {proxy_pass http://192.168.11.11:8080; #动态Tomcat位置}error_page 404 /404.html;location = /404.html {}error_page 500 502 503 504 /50x.html;location = /50x.html {}}# Settings for a TLS enabled server.
#
#    server {
#        listen       443 ssl http2;
#        listen       [::]:443 ssl http2;
#        server_name  _;
#        root         /usr/share/nginx/html;
#
#        ssl_certificate "/etc/pki/nginx/server.crt";
#        ssl_certificate_key "/etc/pki/nginx/private/server.key";
#        ssl_session_cache shared:SSL:1m;
#        ssl_session_timeout  10m;
#        ssl_ciphers HIGH:!aNULL:!MD5;
#        ssl_prefer_server_ciphers on;
#
#        # Load configuration files for the default server block.
#        include /etc/nginx/default.d/*.conf;
#
#        error_page 404 /404.html;
#            location = /40x.html {
#        }
#
#        error_page 500 502 503 504 /50x.html;
#            location = /50x.html {
#        }
#    }}

六、安装MySQL并进行一些基本的配置,以及sqlyog报错1103和2508问题的解决

1、第一行代码先检查有没有自带的mysql,如果有的话要卸载了再安装,我这个阿里的没有自带

卸载用rpm -e --nodeps 加刚才显示出来的mysql就可以了,记得xxx是自己的包名

rpm -qa | grep mysql
rpm -e --nodeps mysql-xxxxxxx

第一行代码检查有没有自带的mariadb,如果有,执行第二行代码删除对应文件即可,不然安装时会冲突

rpm -pa | grep mariadb
yum -y remove mariadb-xxxx

2、下载地址https://dev.mysql.com/downloads/mysql/

点击download他会问你是否登陆,下面有个no,thanks,点这个就不用登陆可以直接下载

3、下载完成后上传到服务器的  /usr/local/mysql  文件夹下

mkdir /usr/local/mysql
cd /usr/local/mysql
rz

4、传输完成后,直接解压(安装包的名字太长,可以复制,省的打了)

tar -vxf mysql-8.0.25-1.el7.x86_64.rpm-bundle.tar

5、选择组件进行安装(按顺序输入代码就行,一定要按顺序,安装的名字要用自己的)

yum -y localinstall mysql-community-common-8.0.25-1.el7.x86_64.rpm
yum -y localinstall mysql-community-libs-8.0.25-1.el7.x86_64.rpm
yum -y localinstall mysql-community-client-8.0.25-1.el7.x86_64.rpm
yum -y localinstall mysql-community-server-8.0.25-1.el7.x86_64.rpm
yum -y localinstall mysql-community-devel-8.0.25-1.el7.x86_64.rpm
yum -y localinstall mysql-community-libs-compat-8.0.25-1.el7.x86_64.rpm

每一条安装,最后显示complete才算完成,否则不能往下进行

① 我这里每次安装,第二条都会报错,根据报错提示,

Error: Package: 2:postfix-2.10.1-9.el7.x86_64 (base)Requires: libmysqlclient.so.18()(64bit)Removing: 1:mariadb-libs-5.5.52-1.el7.x86_64 (@anaconda)libmysqlclient.so.18()(64bit)Obsoleted By: mysql-community-libs-8.0.25-1.el7.x86_64 (/mysql-community-libs-8.0.25-1.el7.x86_64)~libmysqlclient.so.21()(64bit)Updated By: 1:mariadb-libs-5.5.68-1.el7.x86_64 (base)libmysqlclient.so.18()(64bit)
Error: Package: 2:postfix-2.10.1-9.el7.x86_64 (base)Requires: libmysqlclient.so.18(libmysqlclient_18)(64bit)Removing: 1:mariadb-libs-5.5.52-1.el7.x86_64 (@anaconda)libmysqlclient.so.18(libmysqlclient_18)(64bit)Obsoleted By: mysql-community-libs-8.0.25-1.el7.x86_64 (/mysql-community-libs-8.0.25-1.el7.x86_64)Not foundUpdated By: 1:mariadb-libs-5.5.68-1.el7.x86_64 (base)libmysqlclient.so.18(libmysqlclient_18)(64bit)
Error: Package: mysql-community-libs-8.0.25-1.el7.x86_64 (/mysql-community-libs-8.0.25-1.el7.x86_64)Requires: mysql-community-client-plugins = 8.0.25-1.el7You could try using --skip-broken to work around the problemYou could try running: rpm -Va --nofiles --nodigest

②  意思是需要Percona-XtraDB-Cluster-shared-55-5.5.37-25.10.756.el6.x86_64.rpm这个包

解决办法:输入此行代码下载:

wget http://www.percona.com/redir/downloads/Percona-XtraDB-Cluster/5.5.37-25.10/RPM/rhel6/x86_64/Percona-XtraDB-Cluster-shared-55-5.5.37-25.10.756.el6.x86_64.rpm

③ 解压安装

rpm -hiv  Percona-XtraDB-Cluster-shared-55-5.5.37-25.10.756.el6.x86_64.rpm

④ 再次运行安装第二条,又报错,提示还缺少一个包

Error: Package: mysql-community-libs-8.0.25-1.el7.x86_64 (/mysql-community-libs-8.0.25-1.el7.x86_64)Requires: mysql-community-client-plugins = 8.0.25-1.el7You could try using --skip-broken to work around the problemYou could try running: rpm -Va --nofiles --nodiges

⑤ 这个文件在刚开始解压mysql的包里有,直接安装即可

yum -y localinstall mysql-community-client-plugins-8.0.25-1.el7.x86_64.rpm

⑥ 然后安装第二行代码,没有错误,继续往下执行3/4/5/6行代码,往下就没遇到过错误了,直接就安装完成了

6、安装完成后,这些包就可以删除了,占服务器空间(rm -rf  *删除当前目录下所有文件,或者一个一个的删除),放着也行

rm -rf  *

7、设置mysql开机自启动,并且启动服务

systemctl enable mysqld.service
systemctl start mysqld.service

8、获取MySQL初始密码

MySQL安装成功后,会自动在文件/var/log/mysqld.log中生成一个随机的初始密码,我们需要获取这个初始密码,登陆数据库,再更改为自己的密码

输入代码

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

这里显示   1LT)v<_WIog_   是我的初始密码,复制

8、登陆数据库(输入下面这行代码,然后把刚才的密码粘贴进来按enter就可以,默认不显示)

mysql -u root -p

9、登陆成功后,修改mysql初始密码,在数据库中输入,自己设置的密码不能太简单,太简单不可以 ,设置不成功,

alter user 'root'@'localhost'identified by '你的密码';
flush privileges;
quit;

10、防火墙开放3306端口,然后重启防火墙,给sqlyog远程访问,(阿里云的控制台也默认不开启,需要登陆阿里云进行添加开启)

firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload

11、在sqlyog登陆时报错(Navicat使用过程中没见过报错)

登陆方法

① sqlyog报错代码2003

解决办法,重启数据库没开防火墙,无法访问,打开防火墙,然后重启防火墙

② sqlyog错误代码1130

数据库不允许远程,解决办法,进入数据库,输入以下命令

use mysql;
select host from user where user='root';
update user set host='%' where user='root';
flush privileges;

③ sqlyog错误代码 2058 是因为mysql 密码加密方法变了

解决办法,数据库内输入下面的命令

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '数据库密码';

或:

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '数据库密码';

七、结语

安装完成(安装过的软件安装包都可以删了)

jdk是安装在 /usr/local/jdk-16.0.2  这里

Tomcat是安装在 /usr/local/tomcat   这里

nginx安装在   /etc/nginx   这里

按教程走完,都能完成开机自启动服务

防火墙开启端口22、80、8080、3306

常用命令请访问文章开头链接的另一篇文章,有汇总。

从零搭建Nginx+Tomcat动静分离web服务器 奶奶级超细教程相关推荐

  1. Docker构建Nginx+Tomcat动静分离架构

    随着主流Nginx WEB服务器的发展,现在基于Nginx的WEB服务器已广泛应用于各大互联网企业.今天我们来使用docker构建我们的Linux+Nginx+Tomcat动静分离服务器. 1)    ...

  2. Nginx + Tomcat 动静分离实现负载均衡

    0.前期准备 使用Debian环境.安装Nginx(默认安装),一个web项目,安装tomcat(默认安装)等. 1.一份Nginx.conf配置文件 1 # 定义Nginx运行的用户 和 用户组 如 ...

  3. nginx+tomcat动静分离结构

    本文采用另一种策略对动静分离进行演示,它的大致结构如图 2 所示. 图 2. 本文设计的动静分离结构 在本文中,我们将静态资源放在 A 主机的一个目录上,将动态程序放在 B 主机上,同时在 A 上安装 ...

  4. nginx + tomcat 动静分离

    目录 前言 一.Nginx负载均衡实现原理 1. 反向代理原理 2.反向代理的概念 3.反向代理的优势 4.Nginx四层反向代理和七层反向代理 二.Nginx动静分离实现原理 1.动静分离的概念 2 ...

  5. 基于前后端分离的Nginx+Tomcat动静分离

    1.什么是动静分离 "动"与"静" 在弄清动静分离之前,我们要先明白什么是动,什么是静. 在Web开发中,通常来说,动态资源其实就是指那些后台资源,而静态资源就 ...

  6. Nginx+Tomcat动静分离及Nginx优化(企业案例)

    目的:nginx处理用户请求的静态页面,tomcat处理用户请求jsp页面,来实现动态分离,nginx处理静态页面效率远高于tomcat,这样一来就能更好的提高并发,处理性能. 准备软件: 下载jdk ...

  7. Nginx+Tomcat动静分离

    需求:nginx处理用户请求的静态页面,tomcat处理用户请求jsp页面,来实现动态分离,nginx处理静态页面效率远高于tomcat,这样一来就能更好的提高并发,处理性能. 准备软件: 下载jdk ...

  8. Nginx+Tomcat动静分离搭建

    此文章压缩软件全部解压在/root下,文章红色字体为需要添加的内容 [root@localhost ~]# ls anaconda-ks.cfg              install.log    ...

  9. nginx+tomcat 动静分离

    启动nginx nginx的启动命令是: /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf -c制定配置文件的路径,不加- ...

  10. 利用nginx+tomcat+memcached组建web服务器负载均衡

    1 起因 最近对新开发的web系统进行了压力测试,发现tomcat默认配置下压到600人的并发登录首页响应速度就有比较严重的影响,一轮出现2000多个的500和502错误.我把登录的时间统计做了一下, ...

最新文章

  1. 推荐MIT的电路与电子学
  2. Java数据库连接池知识汇总(C3P0+DBCP+Druid)
  3. VTK:绘图之Diagram
  4. CodeForces - 1236B Alice and the List of Presents(组合数学+快速幂)
  5. IdentityServer4实战 - 基于角色的权限控制及Claim详解
  6. 设计功能和界面测试用例
  7. Asp.Net开通支付宝PC端网页支付
  8. Ptrace 一个Linux强大的工具
  9. 拆轮子:requests
  10. 拓端tecdat|r语言中对LASSO回归,Ridge岭回归和Elastic Net模型实现
  11. 【Unity3D日常开发】Unity3D中数字网格类游戏Demo实现
  12. Ubuntu下使用外置USB无线网卡
  13. Codeforces1389E Calendar Ambiguity(数学)
  14. sql数据库考试试题
  15. sql注入——布尔盲注
  16. 面试刷题LeetCode经典100道
  17. AC自动机 从入门到模板
  18. Uniswap再次让对手望尘莫及?关于V3的一些猜想
  19. Problem 2261 浪里个浪(多起点与多终点问题)
  20. textblock字体居中 wpf_M#39;coco|| 字体分享耐看圆体

热门文章

  1. 路由器组成及路由器发展概述
  2. 马未都说收藏:陶瓷篇(18、19)五彩瓷、斗彩
  3. 微信小程序InnerAudioContext IOS真机无法播放声音
  4. html表单中value的作用
  5. c语言文件操作之图片+文件“合成器”(详解+源码+视频讲解)
  6. win10兼容VC++6.0(绿色完整版)安装方法
  7. [轉貼]奋斗5年从月薪3500到700万!
  8. 百度网盘 linux 上传文件大小限制,Linux 下载百度网盘大文件的方法
  9. Miracle密码算法开源库(十三)分析 :mrflsh4.c
  10. 服务器操作系统 份额,2019年6月全球桌面操作系统市场份额数据:Linux占比1.55%...