分布式部署项目

一、数据库的安装

1、安装(如果之前有安装过 MySQL,先执行下面的卸载流程)

1. 更新系统的软件包列表

复制代码
sudo apt-get update

2. 安装 MySQL 服务器

复制代码
sudo apt install mysql-server

3、检查MySQL服务是否启动,若没有启动手动启动

若没有启动执行:

复制代码
sudo service mysql start

4、登录MySQL(默认安装之后不需要密码就可登录)

5、配置密码

1、查看root用户的身份验证方式:
复制代码
SELECT user, host, plugin FROM mysql.user WHERE user = 'root';

需要改成 mysql_native_password 方式

2、修改身份验证方式
复制代码
ALTER USER 'root'@'%' IDENTIFIED WITH 'caching_sha2_password' BY 'aaa123456';

注意:将 your_password 替换为你想要设置的密码

3、刷新权限
复制代码
FLUSH PRIVILEGES;

6.配置分布式数据库,一个账号访问多个主机的数据库

复制代码
CREATE USER 'bite'@'%' IDENTIFIED BY 'BITE@yyds.666';
  • 'bite':用户名
  • @:分隔符,把用户名和主机分开
  • '%':主机部分,代表允许从任何 IP 连接

赋给权限

复制代码
 GRANT ALL ON *.* TO 'bite'@'%';

刷新权限

复制代码
 FLUSH PRIVILEGES;

6. 修改bind-address 修改⽂件路径:/etc/mysql/mysql.conf.d/mysqld.cnf

把bind-address =127.0.0.1改为bind-address =0.0.0.0

7. 重启MySQL服务器

复制代码
sudo systemctl restart mysql

8.开放3306端⼝号

1. 放行单个端口(比如 MySQL 的 3306)
复制代码
sudo ufw allow 3306

如果要指定协议(TCP/UDP):

复制代码
sudo ufw allow 3306/tcp
2. 放行端口范围(比如 8000-9000)
复制代码
sudo ufw allow 8000:9000/tcp
3. 放行指定 IP(比如只允许 192.168.1.100 访问 3306)
复制代码
sudo ufw allow from 192.168.1.100 to any port 3306
4. 重新加载防火墙,让规则生效
复制代码
sudo ufw reload

9.测试授权结果

使用CMD客户端,连接服务器MySQL,如果可以正确连接,则授权成功

复制代码
# 把110.41.51.65改成自己服务器的IP  -u改成设置的账号名  -p后是对应的密码
mysql -h110.41.51.65 -P3306 -ubite -pBITE@yyds.666

二、Nacos的安装

1.安装前,先进行JDK的安装

1. 安装 JDK

更新软件包

复制代码
   sudo apt update

安装 JDK

复制代码
   sudo apt install openjdk-17-jdk

Linux 上安装的 JDK 为 OpenJDK

OpenJDK 是 Oracle JDK 的开放源码版本,Oracle 公司每次发布 JDK 新版本时,会发布两个版本:一个是 Oracle JDK(加了一些 Oracle 公司商业技术),另一个是 OpenJDK(纯净版)。

OpenJDK 在功能上,几乎可以认为一模一样,学习阶段使用 OpenJDK 就可以。

3. 确认 JDK 版本

复制代码
java -version

执行这条命令即可确认安装的 JDK 版本。

2.Nacos 安装这个

对Nacos进行的解压

3.修改端口号(没有被占用的可以不修改)

1. 进入 nacos 的配置文件夹
复制代码
cd /usr/local/src/nacos/conf
2. 编辑配置文件
复制代码
vim application.properties
3. 找到端口配置,改成你想要的端口

i 进入编辑模式,找到这一行:

复制代码
server.port=8848

改成你想要的,比如:

复制代码
server.port=8849
4. 保存退出

ESC,输入:

复制代码
:wq
5. 重启 nacos 生效
复制代码
bash startup.sh -m standalone

6.我们看日志的时候,可以进行复制会话,然后上传了jar包,然后进行观看日志

复制代码
tail -100f 日志的名称

三、部署项目

1.nacos这个的话需要进行的配置

1.1如果不修改这个nacos的配置

1.2进行修改的话,在服务器上修改配置

进去修改nacos.config

复制代码
nacos.config=prod

2.重新上传jar包

2.1 重新上传 jar 包 流程

复制代码
1. 停止旧服务
2. 删除/备份旧 jar
3. 上传新 jar
4. 赋予执行权限
5. 后台启动新 jar
6. 查看日志验证

2.2 先找到正在运行的 jar 进程,停止它

复制代码
ps -ef | grep java

找到进程 ID(PID),然后杀死:

复制代码
kill -9 你的PID

快速一键杀死 Java 进程(推荐):

复制代码
pkill -f java

如果杀掉了话,访问该服务器的Nacos 的这个是否真的杀掉了,如果没有该服务,就是杀掉了

2. 3进入 jar 所在目录

复制代码
cd /usr/local/project

2.4删除旧 jar 包(或备份)

复制代码
rm -f xxx.jar

2.5. 上传新的 jar 包

用 Xftp / FinalShell / 宝塔 传到同一个目录

2.6 给 jar 加权限(自己demo无所谓)

复制代码
chmod 777 xxx.jar

我允许任何人对这个 jar 包进行 读 / 写 / 运行

2.7 后台启动 jar(最常用)

复制代码
nohup java -jar xxx.jar > server.log 2>&1 &

2.8 实时查看日志,看是否启动成功

复制代码
tail -f server.log

常见的问题:

一、第一次拉取产生的问题

1.在拖拽这个项目的时候,出现这个报错,说明是第一次进行拉取包,我们需要下载一个lszsz

2.进行下载这个

复制代码
apt  install lszsz

二、

三、上传好的IP确跟真是的IP不一样怎么处理

因为这个是内网的Ip,如果是外网要访问的话是访问不到的,必须是同一个局域网的这个

复制代码
nohup java -jar order-service-1.0-SNAPSHOT.jar --spring.cloud.nacos.discovery.server-addr=

nohup java -jar order-service-1.0-SNAPSHOT.jar --spring.cloud.nacos.discovery.server-addr=该台服务器的Ip

写的时候,如果没有生效的话,多半是网路的问题

也有的时候,我们在进行访问的时候,也会报一下 500 ,这个时候我们首先要先看一下日志,因为他有可能是网络的问题

相关推荐
努力努力再努力wz1 小时前
【Redis 入门系列】为什么需要 Redis?一文串起缓存、分布式、读写分离、分库分表与微服务
数据库·redis·分布式·sql·mysql·缓存·微服务
番茄去哪了2 小时前
单体转微服务:微服务保护和分布式事务(上)
分布式·微服务·架构
念何架构之路2 小时前
分布式详解
分布式
Elastic 中国社区官方博客2 小时前
将 Logstash Pipeline 从 Azure Event Hubs 迁移到 OTel Collector Kafka Receiver
大数据·数据库·人工智能·分布式·elasticsearch·搜索引擎·kafka
倒流时光三十年2 小时前
第1篇:你真的了解 Kafka 吗?—— 破冰篇
spring boot·分布式·kafka·linq
隔窗听雨眠11 小时前
从DNS解析到分布式存储的技术解构
分布式·网关·cdn·dns·socks
gQ85v10Db15 小时前
Redis分布式锁进阶第二十二篇
数据库·redis·分布式
PeterLi21 小时前
Redis 分布式锁架构全解析:从基础实现到生产级选型指南
redis·分布式
qq_435287921 天前
第18章 闻仲西征:单体应用被分布式集群拖垮?十战十捷是回光返照
分布式·微服务·分布式架构·健康检查·单体应用·闻仲·垂直扩展